0001558370-24-004979.txt : 20240411 0001558370-24-004979.hdr.sgml : 20240411 20240411161639 ACCESSION NUMBER: 0001558370-24-004979 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 105 CONFORMED PERIOD OF REPORT: 20240131 FILED AS OF DATE: 20240411 DATE AS OF CHANGE: 20240411 FILER: COMPANY DATA: COMPANY CONFORMED NAME: ARGAN INC CENTRAL INDEX KEY: 0000100591 STANDARD INDUSTRIAL CLASSIFICATION: CONSTRUCTION SPECIAL TRADE CONTRACTORS [1700] ORGANIZATION NAME: 05 Real Estate & Construction IRS NUMBER: 131947195 STATE OF INCORPORATION: DE FISCAL YEAR END: 0131 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 001-31756 FILM NUMBER: 24838725 BUSINESS ADDRESS: STREET 1: ONE CHURCH STREET SUITE 201 CITY: ROCKVILLE STATE: MD ZIP: 20850 BUSINESS PHONE: 301 315-0027 MAIL ADDRESS: STREET 1: ONE CHURCH STREET SUITE 201 CITY: ROCKVILLE STATE: MD ZIP: 20850 FORMER COMPANY: FORMER CONFORMED NAME: PUROFLOW INC DATE OF NAME CHANGE: 19920703 FORMER COMPANY: FORMER CONFORMED NAME: ULTRA DYNAMICS CORP DATE OF NAME CHANGE: 19830522 10-K 1 agx-20240131x10k.htm 10-K
http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrenthttp://fasb.org/us-gaap/2023#LiabilitiesNoncurrent001582828900001005912024FYfalsefalseARGAN INCNoP9M0.3333P3YP3YP5YP4Y12464000http://www.arganinc.com/20240131#OperatingLeaseRightOfUseAssetAndOtherAssetshttp://www.arganinc.com/20240131#OperatingLeaseRightOfUseAssetAndOtherAssetsP2Yhttp://fasb.org/us-gaap/2023#InvestmentsP15Y0000100591agx:FraudulentlyInducedPaymentMember2023-02-012024-01-310000100591us-gaap:TreasuryStockCommonMember2022-02-012023-01-310000100591us-gaap:TreasuryStockCommonMember2021-02-012022-01-310000100591us-gaap:SubsequentEventMember2024-04-112024-04-110000100591srt:DirectorMember2023-02-012024-01-310000100591us-gaap:TreasuryStockCommonMember2023-02-012024-01-310000100591us-gaap:CommonStockMember2022-02-012023-01-310000100591us-gaap:CommonStockMember2021-02-012022-01-310000100591us-gaap:CommonStockMember2023-02-012024-01-310000100591us-gaap:TreasuryStockCommonMember2024-01-310000100591us-gaap:RetainedEarningsMember2024-01-310000100591us-gaap:AdditionalPaidInCapitalMember2024-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-310000100591us-gaap:TreasuryStockCommonMember2023-01-310000100591us-gaap:RetainedEarningsMember2023-01-310000100591us-gaap:AdditionalPaidInCapitalMember2023-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-310000100591us-gaap:TreasuryStockCommonMember2022-01-310000100591us-gaap:RetainedEarningsMember2022-01-310000100591us-gaap:NoncontrollingInterestMember2022-01-310000100591us-gaap:AdditionalPaidInCapitalMember2022-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-310000100591us-gaap:TreasuryStockCommonMember2021-01-310000100591us-gaap:RetainedEarningsMember2021-01-310000100591us-gaap:NoncontrollingInterestMember2021-01-310000100591us-gaap:AdditionalPaidInCapitalMember2021-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-310000100591us-gaap:CommonStockMember2024-01-310000100591us-gaap:CommonStockMember2023-01-310000100591us-gaap:CommonStockMember2022-01-310000100591us-gaap:CommonStockMember2021-01-310000100591us-gaap:SubsequentEventMember2024-04-110000100591srt:DirectorMember2024-01-310000100591agx:IncentiveStockOptionsMemberagx:StockPlanMember2023-02-012024-01-310000100591us-gaap:RestrictedStockUnitsRSUMember2024-01-310000100591us-gaap:RestrictedStockUnitsRSUMember2023-01-310000100591us-gaap:RestrictedStockUnitsRSUMember2022-02-012023-01-310000100591us-gaap:RestrictedStockUnitsRSUMember2021-02-012022-01-310000100591us-gaap:EmployeeStockOptionMember2023-02-012024-01-3100001005912024-02-012024-01-310000100591us-gaap:IntersegmentEliminationMember2023-02-012024-01-310000100591country:US2023-02-012024-01-310000100591country:IE2023-02-012024-01-310000100591country:GB2023-02-012024-01-310000100591us-gaap:IntersegmentEliminationMember2022-02-012023-01-310000100591country:US2022-02-012023-01-310000100591country:IE2022-02-012023-01-310000100591country:GB2022-02-012023-01-310000100591us-gaap:IntersegmentEliminationMember2021-02-012022-01-310000100591country:US2021-02-012022-01-310000100591country:IE2021-02-012022-01-310000100591country:GB2021-02-012022-01-310000100591agx:CountryOtherMember2021-02-012022-01-310000100591country:US2024-01-310000100591country:IE2024-01-310000100591country:GB2024-01-310000100591country:US2023-01-310000100591country:IE2023-01-310000100591country:GB2023-01-310000100591us-gaap:VehiclesMember2024-01-310000100591us-gaap:LandAndLandImprovementsMember2024-01-310000100591us-gaap:BuildingAndBuildingImprovementsMember2024-01-310000100591agx:FurnitureMachineryAndEquipmentMember2024-01-310000100591us-gaap:VehiclesMember2023-01-310000100591us-gaap:LandAndLandImprovementsMember2023-01-310000100591us-gaap:BuildingAndBuildingImprovementsMember2023-01-310000100591agx:FurnitureMachineryAndEquipmentMember2023-01-310000100591us-gaap:NoncontrollingInterestMember2021-02-012022-01-310000100591agx:LeeTelecomIncMember2021-02-012022-01-310000100591agx:GemmaPowerSystemsMember2021-09-012021-09-300000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-02-012024-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-02-012023-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-02-012022-01-310000100591us-gaap:NoncontrollingInterestMember2022-02-012023-01-310000100591agx:LettersOfCreditExpireOnMay312024Memberus-gaap:RevolvingCreditFacilityMember2023-03-060000100591us-gaap:LetterOfCreditMember2024-01-310000100591us-gaap:LetterOfCreditMember2023-01-310000100591us-gaap:OtherNonoperatingIncomeExpenseMember2023-02-012024-01-310000100591us-gaap:OtherNonoperatingIncomeExpenseMember2022-02-012023-01-310000100591us-gaap:OtherNonoperatingIncomeExpenseMember2021-02-012022-01-310000100591agx:GemmaPowerSystemsMemberus-gaap:FinancialGuaranteeMember2024-01-310000100591agx:TelecommunicationsInfrastructureServicesMember2024-01-310000100591agx:PowerIndustryServicesMember2024-01-310000100591agx:IndustrialFabricationAndFieldServicesMember2024-01-310000100591agx:TelecommunicationsInfrastructureServicesMember2023-01-310000100591agx:PowerIndustryServicesMember2023-01-310000100591agx:IndustrialFabricationAndFieldServicesMember2023-01-310000100591agx:TelecommunicationsInfrastructureServicesMember2022-01-310000100591agx:PowerIndustryServicesMember2022-01-310000100591agx:IndustrialFabricationAndFieldServicesMember2022-01-310000100591us-gaap:TradeNamesMember2024-01-310000100591us-gaap:CustomerRelationshipsMember2024-01-310000100591us-gaap:TradeNamesMember2023-01-310000100591us-gaap:CustomerRelationshipsMember2023-01-310000100591us-gaap:SubsequentEventMember2024-04-100000100591us-gaap:RetainedEarningsMember2023-02-012024-01-310000100591us-gaap:RetainedEarningsMember2022-02-012023-01-310000100591us-gaap:RetainedEarningsMember2021-02-012022-01-310000100591us-gaap:CorporateNonSegmentMember2023-02-012024-01-310000100591us-gaap:CorporateNonSegmentMember2022-02-012023-01-310000100591us-gaap:CorporateNonSegmentMember2021-02-012022-01-310000100591srt:MinimumMember2024-01-310000100591srt:MaximumMember2024-01-310000100591us-gaap:RevolvingCreditFacilityMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2023-03-062023-03-060000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2023-02-012024-01-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2023-02-012024-01-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2022-02-012023-01-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2021-02-012022-01-310000100591agx:MajorCustomerTwoMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:MajorCustomerThreeMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-02-012024-01-310000100591agx:MajorCustomerTwoMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:MajorCustomerTwoMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:MajorCustomerThreeMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:MajorCustomerOneMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:MajorCustomerOneMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:IndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-02-012024-01-310000100591agx:MajorCustomerTwoMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerTwoMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerThreeMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerOneMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerOneMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:IndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2021-02-012022-01-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2021-02-012022-01-310000100591agx:IndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2021-02-012022-01-3100001005912024-01-012024-01-3100001005912023-10-012023-10-3100001005912023-09-192023-09-1900001005912023-09-182023-09-1800001005912023-07-012023-07-3100001005912023-04-012023-04-300000100591us-gaap:EmployeeStockOptionMember2024-01-310000100591agx:Plan2020Member2023-06-200000100591agx:Plan2020Member2020-06-2300001005912021-01-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:MoneyMarketFundsMember2024-01-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:MoneyMarketFundsMember2023-01-310000100591us-gaap:NoncontrollingInterestMember2021-02-012022-01-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:USTreasurySecuritiesMember2024-01-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:DomesticCorporateDebtSecuritiesMember2024-01-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2024-01-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2024-01-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2023-01-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2024-01-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2024-01-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialFabricationAndFieldServicesMember2024-01-310000100591us-gaap:CorporateNonSegmentMember2024-01-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2023-01-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2023-01-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialFabricationAndFieldServicesMember2023-01-310000100591us-gaap:CorporateNonSegmentMember2023-01-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2022-01-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2022-01-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialFabricationAndFieldServicesMember2022-01-310000100591us-gaap:CorporateNonSegmentMember2022-01-3100001005912022-01-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialFabricationAndFieldServicesMember2023-02-012024-01-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2022-02-012023-01-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialFabricationAndFieldServicesMember2022-02-012023-01-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2021-02-012022-01-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialFabricationAndFieldServicesMember2021-02-012022-01-310000100591us-gaap:AdditionalPaidInCapitalMember2023-02-012024-01-310000100591us-gaap:AdditionalPaidInCapitalMember2022-02-012023-01-310000100591us-gaap:AdditionalPaidInCapitalMember2021-02-012022-01-3100001005912023-11-012024-01-3100001005912023-07-3100001005912024-04-050000100591us-gaap:HeldtomaturitySecuritiesMember2024-01-310000100591us-gaap:HeldtomaturitySecuritiesMember2023-01-310000100591us-gaap:CostOfSalesMember2023-02-012024-01-310000100591us-gaap:CostOfSalesMember2022-02-012023-01-310000100591us-gaap:CostOfSalesMember2021-02-012022-01-310000100591us-gaap:RestrictedStockUnitsRSUMember2023-02-012024-01-310000100591srt:ExecutiveOfficerMemberagx:PerformanceBasedRestrictedStockUnitsMemberagx:StockPlanMember2023-02-012024-01-3100001005912023-09-190000100591agx:TimeBasedRestrictedStockUnitsMember2024-01-310000100591agx:RenewablePerformanceBasedRestrictedStockUnitsMember2024-01-310000100591agx:PerformanceBasedRestrictedStockUnitsMember2024-01-310000100591agx:EarningsPerSharePerformanceBasedRestrictedStockUnitsMember2024-01-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591us-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591us-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2021-02-012022-01-310000100591us-gaap:RevolvingCreditFacilityMember2023-03-062023-03-060000100591us-gaap:HeldtomaturitySecuritiesMember2023-02-012024-01-310000100591agx:GemmaPowerSystemsMember2022-02-012023-01-310000100591agx:AtlanticProjectsCompanyLimitedMemberagx:KilrootProjectMember2023-02-012024-01-310000100591agx:AtlanticProjectsCompanyLimitedMemberagx:KilrootProjectMember2023-08-012024-01-3100001005912021-02-012022-01-310000100591srt:MinimumMember2023-02-012024-01-310000100591srt:MaximumMember2023-02-012024-01-310000100591us-gaap:DomesticCorporateDebtSecuritiesMember2024-01-310000100591us-gaap:USTreasuryNotesSecuritiesMember2024-01-3100001005912023-02-012024-01-3100001005912022-02-012023-01-3100001005912024-01-3100001005912023-01-31iso4217:USDagx:customerxbrli:sharesxbrli:pureiso4217:USDxbrli:sharesagx:item

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

FORM 10-K

ANNUAL REPORT UNDER SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934.

For the Fiscal Year Ended January 31, 2024

or

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

For the transition period from                      to                     

Commission File Number 001-31756

Graphic

ARGAN, INC.

(Exact Name of Registrant as Specified in its Charter)

Delaware

    

13-1947195

(State or Other Jurisdiction of Incorporation or Organization)

 

(IRS Employer Identification No.)

One Church Street, Suite 201, Rockville, Maryland

 

20850

(Address of Principal Executive Offices)

 

(Zip Code)

(301) 315-0027

(Issuer’s Telephone Number, Including Area Code)

Securities registered under Section 12(b) of the Exchange Act:

Title of Each Class

Trading Symbol

Name of Each Exchange on Which Registered

Common Stock, $0.15 par value

AGX

The New York Stock Exchange (“NYSE”)

Securities registered under Section 12(g) of the Securities Exchange Act of 1934 (the “Exchange Act”): None

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

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

Indicate by check mark whether the Registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Exchange Act 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, smaller reporting company or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer”, “smaller reporting company” and “emerging growth company” in Rule 12b-2 of the Exchange Act.

Large accelerated filer   

    

Accelerated filer   

    

Non-accelerated filer   

    

Smaller reporting company   

Emerging growth company   

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

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

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

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

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

The aggregate market value of the common stock held by non-affiliates of the Registrant was approximately $296,708,995 on July 31, 2023 (the last business day of the Registrant’s second fiscal quarter), based upon the closing price on the NYSE as reported for that date. Shares of common stock held by each officer and director and by each person who owns 5% or more of the outstanding common shares have been excluded because such persons may be deemed to be affiliates. The determination of affiliate status is not necessarily a conclusive determination for other purposes.

Number of shares of common stock outstanding as of April 5, 2024: 13,240,121 shares.

DOCUMENTS INCORPORATED BY REFERENCE

Portions of the Registrant’s Proxy Statement for the 2024 Annual Meeting of Stockholders to be held on June 20, 2024 are incorporated by reference in Part III.

ARGAN, INC. AND SUBSIDIARIES

2024 ANNUAL REPORT ON FORM 10-K

TABLE OF CONTENTS

  

    

PAGE

PART I

ITEM 1.

BUSINESS

- 3 -

ITEM 1A.

RISK FACTORS

- 11 -

ITEM 1B.

UNRESOLVED STAFF COMMENTS

- 24 -

ITEM 1C.

CYBERSECURITY

- 24 -

ITEM 2.

PROPERTIES

- 25 -

ITEM 3.

LEGAL PROCEEDINGS

- 26 -

ITEM 4.

MINE SAFETY DISCLOSURES

- 26 -

PART II

ITEM 5.

MARKET FOR REGISTRANT’S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES

- 27 -

ITEM 6.

[RESERVED]

- 29 -

ITEM 7.

MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

- 29 -

ITEM 7A.

QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK

- 48 -

ITEM 8.

FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA

- 49 -

ITEM 9.

CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE

- 49 -

ITEM 9A.

CONTROLS AND PROCEDURES

- 49 -

ITEM 9B.

OTHER INFORMATION

- 50 -

ITEM 9C.

DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS

- 50 -

PART III

ITEM 10.

DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE

- 51 -

ITEM 11.

EXECUTIVE COMPENSATION

- 51 -

ITEM 12.

SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT, AND RELATED STOCKHOLDER MATTERS

- 51 -

ITEM 13.

CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE

- 51 -

ITEM 14.

PRINCIPAL ACCOUNTANT FEES AND SERVICES

- 51 -

PART IV

ITEM 15.

EXHIBITS AND FINANCIAL STATEMENTS

- 52 -

ITEM 16.

FORM 10-K SUMMARY

- 53 -

SIGNATURES

- 54 -

- 2 -

PART I

FORWARD-LOOKING STATEMENTS

The Private Securities Litigation Reform Act of 1995 provides a “safe harbor” for certain forward-looking statements. We have made statements in this Annual Report on Form 10-K for the fiscal year ended January 31, 2024 (the “2024 Annual Report”) that may constitute “forward-looking statements.” The words “believe,” “expect,” “anticipate,” “plan,” “intend,” “estimate,” “foresee,” “should,” “would,” “could,” or other similar expressions are intended to identify forward-looking statements. Our forward-looking statements, financial position and results of operations, are based on our current expectations and beliefs concerning future developments and their potential effects on us. There can be no assurance that future developments affecting us will be those that we anticipate. All comments concerning our expectations for future revenues and operating results are based on our forecasts for existing operations and do not include the potential impact of any future acquisitions.

Our forward-looking statements, by their nature, involve significant risks and uncertainties (some of which are beyond our control) and assumptions. They are subject to change based upon various factors including, but not limited to, the risks and uncertainties described in Item 1A of this 2024 Annual Report. Should one or more of these risks or uncertainties materialize, or should any of our assumptions prove to be incorrect, actual results may vary in material respects from those projected in the forward-looking statements. We undertake no obligation to publicly update or revise any forward-looking statements, whether as a result of new information, future events or otherwise.

ITEM 1. BUSINESS.

Argan, Inc. (“Argan”) is primarily a construction firm that conducts operations through its wholly-owned subsidiaries, Gemma Power Systems, LLC and affiliates (“GPS”), Atlantic Projects Company Limited and affiliates (“APC”), The Roberts Company, Inc. (“TRC”) and Southern Maryland Cable, Inc. (“SMC”) (together referred to as the “Company,” “we,” “us,” or “our”). GPS and APC constitute our power industry services reportable segment, delivering a comprehensive suite of engineering, procurement, construction, commissioning, maintenance, project development and technical consulting services to the power generation market, including the renewable energy sector. The customers include primarily independent power project owners, public utilities, power plant heavy equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). Through TRC, the industrial construction services reportable segment provides field services and project management that support new plant construction and additions, maintenance turnarounds, shutdowns and emergency mobilizations for industrial plants primarily located in the Southeast region of the U.S. and that may include the fabrication, delivery and installation of steel components such as piping systems and pressure vessels. Through SMC, doing business as SMC Infrastructure Solutions, the telecommunications infrastructure services segment provides project management, construction, installation and maintenance services to commercial, local government and federal government customers primarily in the Mid-Atlantic region of the U.S. Together, these subsidiaries enable us to serve a wide range of client needs across power generation, industrial construction, and telecommunications infrastructure, establishing its presence as a diversified provider in the construction and engineering sectors.

Holding Company Structure

Argan was organized as a Delaware corporation in May 1961. Argan operates as a holding company that may make opportunistic acquisitions and/or investments by identifying companies with significant potential for profitable growth and realizable synergies with one or more of our existing businesses. However, we may have more than one industrial focus depending on the opportunity and/or needs of our customers. Each of our wholly-owned subsidiaries is operated as an independent business with strategic oversight provided by Argan to allow each to react to its own market conditions independently. Significant acquired companies will be operated in a manner that we believe will best provide long-term and enduring value for our stockholders.

Power Industry Services

GPS, which we acquired in 2006, historically provides the most significant percentage of our power industry services. As a full-service engineering, procurement and construction (“EPC”) services firm, GPS has the proven abilities of designing, building and commissioning large-scale energy projects primarily in the U.S. The extensive design, construction, project

- 3 -

management, start-up and operating experience of GPS has grown with installed capacity exceeding 18 gigawatts of mostly domestic power-generating capacity. These projects have included base-load combined-cycle facilities, simple-cycle peaking plants and boiler plant construction and renovation efforts. GPS also has experience in the renewable energy sector providing EPC contracting and other services to owners of alternative energy facilities, including biomass plants, solar fields and wind farms. Typically, the scope of work for GPS includes complete plant engineering and design, the procurement of power generation and balance of plant equipment, and the full turnkey construction effort from site development through electrical interconnection and plant performance testing. The durations of these projects typically range between one to three years, with the length of certain significant construction projects exceeding three years.

This reportable business segment also includes APC, a company formed in Ireland almost 50 years ago, and its affiliated companies, which we acquired in May 2015. Historically, APC primarily provided turbine, boiler and large rotating equipment engineering, procurement, installation, commissioning and outage services to power plants in Ireland. Since its acquisition in 2015, APC has expanded operations to the U.K. APC currently focuses on the performance of engineering and construction services for the major electric utility in Ireland, independent power plant owners, major data center operators and original equipment manufacturers. APC’s business in Ireland and the U.K. represent this segment’s primary international operations.

The revenues of our power industry services business segment were $416.3 million, $346.0 million and $398.1 million for the fiscal years ended January 31, 2024 (“Fiscal 2024”), 2023 (“Fiscal 2023”) and 2022 (“Fiscal 2022”), respectively, or 73%, 76% and 78% of our consolidated revenues for the corresponding periods, respectively. The substantial portions of the revenues of this reportable segment reported for these three years were derived from the performance of activities by GPS and APC under EPC services and other construction contracts with the owners of power plant projects.

Project Backlog

At January 31, 2024, the project backlog for this reporting segment was approximately $0.6 billion. The comparable backlog amount as of January 31, 2023 was approximately $0.7 billion. Our reported amount of project backlog at a point in time represents the total value of projects awarded to us that we consider to be firm as of that date less the amounts of revenues recognized to date on the corresponding projects.

Typically, we include the total value of EPC services and other major construction contracts in project backlog upon receiving a notice to proceed from the project owner. When provided with only the limited notice to proceed (“LNTP”), we do not add the value of the full contract to project backlog until we receive the full notice to proceed. Nevertheless, the inclusion of contract values in project backlog requires management judgement based on the facts and circumstances.

The significant currently active projects of our power industry services segment include the construction of facilities which together represent approximately 4.1 gigawatts of potential electrical power and require the significant engagements of our technical, project support and project management teams. Please see “Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations” for a discussion of currently active major projects for this reporting segment.

At times, we may be awarded contracts for which commencement of project activities are delayed or cancelled. We have maintained that the delays in the construction starts of these projects and the awards of new business awards relate to a variety of factors, especially in the northeastern and Mid-Atlantic regions of the U.S. where the largest electricity grid is run by PJM Interconnection LLC (“PJM”). Certain projects in development are confronting difficulties in obtaining the necessary permits for construction and operation, in securing the delivery of fuel to the power plant site and in establishing the necessary power connection to the electricity grid. Currently, we also believe that the ability of owners of fully developed gas-fired power plant projects to close on equity and permanent debt financing is challenged by uncertainty in capital markets caused by multiple factors including delayed capacity auctions, public and political opposition to fossil-fuel energy projects, stranded asset concerns and high interest rates.

Along with our commitment to the construction of state-of-the-art, natural gas-fired power plants that will serve as important elements of our country’s electricity-generation mix in the future, our experience also encompasses the development of utility-scale renewable energy projects. We continue to target certain business development efforts to win projects for the erection of utility-scale solar fields, wind farms and battery facilities as well as hydrogen-based energy plants and carbon capture and storage projects.

- 4 -

Labor and Materials

We perform work on job sites in different states and countries. The skilled craft labor pool is unique in each region due to a variety of factors, including different employment environments, competing infrastructure projects located near our sites that utilize the same labor pool, and decreased and aging labor pools resulting from demographic trends. As such, we take a carefully considered and tailored approach at each job site to acquire and retain the required personnel resources when we need them, especially craft labor, and to maintain optimum productivity on each of our projects. Depending on the project, we may utilize direct hires, subcontractors, existing internal personnel, or a combination of the three. To date, we generally have managed to successfully staff each of our jobs effectively, but going forward we may be challenged by labor shortages in the construction industry due to rising wages, demographic trends and other factors. The competition for labor may also include employers outside the construction industry, which can offer the opportunity to work remotely.

According to employment data released by the U.S. Bureau of Labor Statistics, employee headcount in the domestic construction industry is at the highest level in the last decade. The industry’s unemployment rate was 7.0% for February 2024 after having dropped to 3.5% this past summer when seasonal demand peaked. However, the number of unemployed job seekers with construction experience has remained low, nominally increasing by 0.4% over the last year. Rising employment has been accompanied by rising wages that have increased by approximately 4.7%, 5.6% and 5.2% during Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively.

In connection with the engineering and construction of traditional power plants, biodiesel plants and other renewable energy systems, we procure materials for installation on our various projects. We are not dependent upon any one source for major equipment components, such as heat recovery steam generation units, steam turbines and air-cooled condensers, solar panels or any other construction materials we use to complete a particular power project. With our assistance, project owners frequently procure and supply certain major components of the power plants such as state-of-the-art natural gas turbines. We have significant experience in delivering EPC projects with the latest turbine technology and working with all three major gas-fired turbine manufacturers to meet each project owner’s specific power plant requirements. EPC project requirements may vary considerably. Additionally, we have protections in our contracts with major customers that provide certain relief that helps to mitigate certain financial risks, but these protections could be limited depending on the underlying issues and the financial challenges of our customers.

In the past, we have had to navigate supply chain disruptions and other sourcing issues that have or could have impacted our projects. As we go forward, there may be unscheduled delays in the delivery of materials, machinery and equipment ordered by us or a project owner or other unanticipated challenges to our ability to complete major job tasks when planned, among other impacts. We actively attempt to manage these risks during periods of uncertainty. Supply chain uncertainties may impact project owners’ confidence in commencing new work which may adversely affect our expected levels of revenues until supply chain disruptions substantially dissipate.

The costs of materials needed for the completion of our projects may fluctuate from time to time. For example, in January 2024, inflation rose by 0.3% for the month and 3.1 % over the prior year, down from 6.4% over the same period in the prior year, according to the consumer price index data released by the U.S. Bureau of Labor Statistics. In times of increased volatility, we take steps to reduce our risks. For example, we may hold quotes related to materials in our industrial construction services segment for short periods of time. For major fixed price contracts in our power industry services segment, we may mitigate material cost risks by procuring the majority of the equipment and construction supplies during the early phases of a project. During recent fiscal years, we believe in general that we effectively confronted the economic challenges to our active jobs represented by the inflationary surge in prices.

Competition

GPS and APC compete with large and well capitalized private and public firms in the construction and engineering services industry including firms that have global businesses. These competitors may be multi-billion-dollar companies that have thousands of employees. We also may compete with regional construction services companies in the markets where planned projects might be located. Typically, a condition for award is that the contractor perform on a fixed-price or lump-sum contract basis; smaller elements of a contract may be billable on an allowance or cost-reimbursable basis. As explained below, there are risks of unrecovered costs, among other aspects, associated with these types of contracts.

- 5 -

To compete with these firms, we emphasize our proven track record as a value-add choice for the design, build and commissioning of natural gas-fired and alternative energy power systems. Our successful experience includes the efficient completion and maintenance of natural gas-fired combined cycle and simple cycle power plants, biomass plants, waste-to-energy facilities, solar fields, wind farms and biofuel processing facilities, most performed on an EPC services contract basis. Through the power industry services segment, we provide a full range of competitively priced development, consulting, engineering, procurement, construction, commissioning and maintenance services to project owners. We are able to react quickly to their requirements while bringing a strong, experienced team to help navigate through difficult technical, scheduling and construction issues. We believe that the cultures of GPS and APC encourage motivated, creative, high energy and customer-focused teams that deliver results. Our projects are directed by dedicated field project management teams and our project owner customers have direct access to our senior management at these companies.

Our competition for domestic renewable energy projects like solar energy fields and land-based wind energy farms is more diverse and may include firms that are smaller than us.

The competitive landscape in the EPC services market for natural gas-fired power plant construction has changed significantly over the last seven years. While the market remains dynamic, we are in an era where there are fewer competitors for new domestic gas-fired power plant EPC services project opportunities. Several major competitors have either exited the market, been acquired, or announced intentions to avoid fixed-price contracts for various reasons.

Competition led to aggressive bidding on projects while certain contractors accepted greater risks associated with the inability to anticipate unforeseen issues and the failure to include adequate contingencies to cover lower-than expected labor productivity, unfavorable execution challenges and unusual weather events, for example. As a result, construction and engineering companies, including some of the largest firms in the country, incurred losses related to performance on fixed-price contracts. Despite these challenges, sustained competition has supported the continuation of fixed-price contracting in the U.S., maintaining the typical volume of projects completed under these terms. The firms that remain in our market are very effective competitors.

We are not immune to the risks of losses on major projects. Nonetheless, we try to be particularly selective in pursuing new project opportunities and are reluctant to enter into fixed-price contracts with perceived high-risk profiles that are unacceptable. The track record of GPS has proven that fixed-price contracts can provide opportunities for higher margins if the corresponding projects are completed at lower-than-planned costs. We are confident that our project management teams have gained the experience necessary for successful execution on these types of contracts as we go forward although we are aware of the risks involved.

Over the past few years, GPS has provided top management guidance and project management expertise to APC as it successfully completed certain projects and won the awards of projects to build new thermal power plants in Ireland and the U.K. In turn, APC has provided specialist resources to GPS on several of its EPC services contracts. These experiences have demonstrated that the two companies can combine resources effectively. GPS and APC currently are working as a team on the Shannonbridge Power Project, an emergency gas-fired power plant in the central region of Ireland.

Customers

For Fiscal 2024, our most significant customer relationships included three power industry services customers, which accounted for approximately 19%, 16% and 15% of consolidated revenues. For Fiscal 2023, our most significant customer relationships included two power industry services customers, which accounted for 38% and 12% of consolidated revenues. For Fiscal 2022, our most significant customer relationship included one power industry services customer, which accounted for 57% of consolidated revenues.

No other customer of this reportable segment represented greater than 10% of consolidated revenues for Fiscal 2024, Fiscal 2023 or Fiscal 2022.

Regulation

Our power industry services operations are subject to various federal, state, local and foreign laws and regulations including: licensing for contractors; building codes; permitting and inspection requirements applicable to construction projects; regulations relating to worker safety and environmental protection; and special bidding, procurement and employee compensation requirements. Many state and local regulations governing construction require permits and

- 6 -

licenses to be held by individuals who have passed an examination or met other requirements. We believe that we have the licenses required to conduct our current operations and that we are in substantial compliance with applicable regulatory requirements.

The power plants that we build, and other energy facilities including the pipelines required to supply natural gas fuel to them, are also subject to a myriad of federal and state laws and regulations governing environmental protection, air quality, water quality and noise and height restrictions. The growing preference for renewable energy sources and the elimination of fossil-fueled power plants by the governments of the U.S., Ireland and the U.K. may result in such restrictions becoming more severe in the future. The consequences may result in fewer gas-fired power plants being constructed in the future than are currently forecast offset by an increased number of renewable power facility opportunities.

Development Financing

We selectively participate in power plant project development and related financing activities 1) to maintain a proprietary pipeline for future EPC services contract opportunities, 2) to secure exclusive rights to EPC contracts, and 3) to generate profits through interest income and project development success fees. EPC contractors in our industry also periodically execute certain contracts jointly with third parties through joint ventures, limited partnerships and limited liability companies for the purpose of completing a project or program for a project owner. These special purpose entities are generally dissolved upon completion of the corresponding project or program.

For example, through variable interest entities, we have entered into support arrangements with independent parties in the past that resulted in the successful development and our construction of three separate gas-fired power plants in Pennsylvania. We were paid project development fees for each project and our loans to the development entities were repaid in full plus interest. To complete two of these construction projects, we entered into joint venture arrangements in order to secure greater bonding capacity. These arrangements were dissolved upon the successful completion of the corresponding EPC service contracts.

However, not all such business development endeavors are successful. In January 2018, we determined that we were the primary beneficiary of a variable interest entity (“VIE”) that was performing the project development activities related to the construction of the Chickahominy Power Station. GPS provided financing to the entity for the development efforts pursuant to promissory notes. Ultimately, the project owner was unable to obtain the necessary equity financing for the project, and GPS ceased providing project development funding. During Fiscal 2022, we recorded an impairment loss related to all of the capitalized project development costs in the amount of $7.9 million, of which $2.5 million was attributed to the non-controlling interest (see Note 15 to the accompanying consolidated financial statements).

As of January 31, 2024, we did not have any outstanding power plant project development financing arrangements.

Industrial Construction Services

TRC was founded in 1977 and its fabrication facility and offices are located near Greenville, North Carolina. TRC is an industrial construction and field services firm with steel pipe and vessel fabrication capabilities serving industrial organizations primarily in the Southeast region of the U.S.

During Fiscal 2023, TRC consolidated its metal fabrication plants and support structures into one industrial fabrication and warehouse facility that totals over 90,000 square feet. The consolidation reduced fixed costs and notably streamlined the business, which has permitted TRC to focus primarily on its industrial field service opportunities, which includes construction projects. TRC operates within its own reportable business segment, industrial construction services. Such services typically represent the majority of TRC’s annual revenues with the remaining revenues contributed by projects consisting primarily of metal fabrication. The project backlog of TRC has grown by over 175% since January 31, 2022 to approximately $127.5 million as of January 31, 2024, reflecting a business development emphasis on the award of larger field service construction projects. The emphasis on these opportunities influenced the strategic decision to consolidate the pipe and vessel fabrication facilities to reduce fixed costs, streamline operations and better support a growing and scalable business model.

Recent and current major customers of TRC include Nutrien Ltd., the global fertilizer company; Jacobs Solutions Inc., an international engineering and construction firm that is building a significant biotechnology manufacturing facility in the research triangle area of North Carolina; and North America’s largest forest products companies such as Weyerhaeuser

- 7 -

Company, International Paper and Domtar Corporation; and various other industrial companies. These relationships demonstrate that TRC is a trusted industrial services provider to blue chip customers from around North America, and from countries like France, Germany, Denmark, Japan, Belgium and Australia, that are expanding or locating new production facilities in TRC’s geographic region. For Fiscal 2024, Fiscal 2023 and Fiscal 2022, TRC reported revenues of $142.8 million, $92.8 million and $97.9 million, respectively, or approximately 25%, 20% and 19% of consolidated revenues for the corresponding years, respectively.

Telecommunications Infrastructure Services

SMC represents our telecommunications infrastructure services reportable business segment and conducts business as SMC Infrastructure Solutions, which provides utility construction services and comprehensive technology wiring solutions to customers primarily in the Mid-Atlantic region of the U.S. SMC performs both outside and inside plant cable installation services.

Services provided to our outside premises customers include trenchless directional boring and excavation for underground communication and power networks, aerial cabling services, and the installation of buried cable, high and low voltage electric lines, and private area outdoor lighting systems. Inside premises wiring services provided to SMC’s customers include structured cabling, terminations and connectivity that provide the physical transport for high-speed data, voice, video and security networks.

Consistently, a major portion of SMC’s revenue-producing activity each year is performed pursuant to task or work orders issued under master agreements with SMC’s major customers such as Southern Maryland Electric Cooperative, the local electricity cooperative. Over the last three years, other major customers have included counties and municipalities located in Maryland; certain state government agencies in Maryland; and technology-oriented government contracting firms in the Washington, D.C. metropolitan area.

The revenues of SMC were $14.3 million, $16.2 million and $13.4 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively, or approximately 2%, 4% and 3% of our consolidated revenues for the corresponding years, respectively.

In Fiscal 2022, SMC acquired the business of Lee Telecommunications, Inc. (“LTI”) for $0.6 million in cash, which expanded the business footprint of SMC into the Tidewater area of Virginia. LTI provides a suite of inside premises, communications infrastructure services similar to those provided by SMC. The largest customer of LTI is Newport News Shipbuilding, a division of Huntington Ingalls Industries, to which it has been providing services since 1995. 

The combined operations of SMC operate in the fragmented and competitive telecommunication and infrastructure services industry. We compete with providers ranging from regional companies to larger firms servicing multiple regions, as well as large national and multi-national contractors. We believe that we compete favorably with the other companies in our market space by emphasizing our high-quality reputation, outstanding customer base, security-cleared personnel and highly motivated work force in competing for larger and more diverse contracts.

Employees

The total number of personnel employed by us is subject to the volume of construction in progress and the relative amount of work performed by subcontractors. We had 1,214 employees at January 31, 2024, substantially all of whom were full-time. We believe that our employee relations are generally good.

Financing Arrangements

During April 2021, we amended our Amended and Restated Replacement Credit Agreement (the “Credit Agreement”) with Bank of America, N.A. (the “Bank”), which extended the expiration date of the Credit Agreement to May 31, 2024 and reduced the borrowing rate. On March 6, 2023, we entered into the Second Amendment (the “Second Amendment”) to the Credit Agreement. The Second Amendment modified the Credit Amendment primarily to replace the interest pricing with the Secured Overnight Financing Rate (“SOFR”) plus 1.6% and to add SOFR successor rate language. The Credit Agreement, as amended, includes the following features, among others: a lending commitment of $50.0 million including a revolving loan and an accordion feature which allows for an additional commitment amount of $10.0 million, subject to certain conditions. We may also use the borrowing ability to cover other credit instruments issued by the Bank for our use in the ordinary course of business as defined in the Credit Agreement. We are working with the Bank on the completion of new credit  arrangements that we expect to complete prior to the expiration date of our current Credit Agreement.

- 8 -

At January 31, 2024, we did not have any borrowings outstanding under the Credit Agreement. However, the Bank has issued a letter of credit in the total outstanding amount of $9.3 million at January 31, 2024, in support of the activities of APC under existing customer contracts.

We have pledged the majority of our assets to secure the financing arrangements. The Bank’s consent is not required for acquisitions, divestitures, cash dividends or significant investments as long as certain conditions are met. The Bank requires that we comply with certain financial covenants at its fiscal year-end and at each of its fiscal quarter-ends. The Credit Agreement, as amended, includes other terms, covenants and events of default that are customary for a credit facility of its size and nature, including a requirement to achieve positive adjusted earnings before interest, taxes, depreciation and amortization, as defined, over each rolling twelve-month measurement period. As of January 31, 2024, we were in compliance with the covenants of the Credit Agreement, as amended.

Safety, Risk Management, Insurance and Performance Bonds

We are committed to ensuring that the employees of each of our businesses perform their work in a safe environment. We regularly communicate with our employees to promote safety and to instill safe work habits. GPS, APC, TRC and SMC each has an experienced full-time safety director committed to ensuring a safe work place, as well as compliance with applicable permits, insurance and laws. Our OSHA reportable incident rates, weighted by hours worked for all of our subsidiaries, were 0.43, 0.60, 0.48, 0.55 and 0.40 for calendar years 2023, 2022, 2021, 2020 and 2019, respectively; our rates were significantly better than the national average rates in our industry (NAICS – 2379) for those years.

In January 2024, we added a senior vice president of legal to our headquarters staff. Among other duties, he will contribute to and enhance our ongoing process of standardizing and minimizing the amount of commercial risk that our different operations accept in their customer contracts. His legal and operations experiences in the construction industry represent solid qualifications for this effort.

We retain qualified insurance brokerage assistance in the regular evaluation of the adequacy of insurance coverage amounts and the annual negotiation of premium amounts in the areas of property and casualty insurance, general liability, umbrella coverage, director and officer insurance, cybersecurity insurance and other specialty coverages. In Fiscal 2023, we purchased specialty insurance related to the full recovery of the research and development tax credits we claimed in our amended federal income tax returns for Fiscal 2022 and 2021 (see Note 12 to the accompanying consolidated financial statements). We believe that our insurance coverage amounts are adequate, but not excessive, and provide the proper amounts of coverage where we believe insurable risks may exist.

Contracts with customers in each of our reportable business segments may require performance bonds, payment bonds, or other means of financial assurance to secure contractual performance. We maintain material amounts of cash, cash equivalents and short-term investments, and, as indicated above, we have the commitment of the Bank to issue irrevocable standby letters of credit up to an aggregate amount of $50.0 million.

As of January 31, 2024, the estimated amount of our unsatisfied bonded performance obligations, covering all of its subsidiaries, was approximately $0.5 billion. As of January 31, 2024, the outstanding amount of bonds covering other risks, including warranty obligations related to completed activities, was not material. Not all of our projects require bonding.

Responsible Business

Our on-going commitment to environmental, health and safety, corporate social responsibility, corporate governance, sustainability, and other public policy matters relevant to us is being supported by the responsible business committee of our board of directors, which was formed initially as a subcommittee in Fiscal 2021 and was elevated to full committee status in Fiscal 2023. Its charter requires it to assist our senior management in: (a) setting our general strategy relating to responsible business matters, as well as developing, implementing, and monitoring initiatives and policies for us based on that strategy; (b) overseeing communications with employees, investors, and other stakeholders with respect to responsible business matters; and (c) anticipating and monitoring developments relating to, and improving management’s understanding of, responsible business matters.

- 9 -

A summary of our responsible business accomplishments in various areas over the past three years follows:  

We made investments in solar energy funds to secure portions of the available investment tax credits and tax depreciation, which facilitated the construction and deployment of multiple solar array facilities;
We made lighting and other energy efficiency upgrades at the office building that we own while our employees continue to participate in available recycling programs at all of our facilities;
We executed an agreement to build a solar carport at our Glastonbury, Connecticut office, which broke ground in Fiscal 2024;
We commenced a solicitation of recommendations from our employees by a cross-subsidiary working group in order to identify additional actionable items including coordinated community service projects. As a result, employees from all levels of our Company have participated in projects such as Habitat for Humanity, Toys for Tots, Coats for Kids, school supply drives, clothing drives, food bank donation programs and Company-sponsored youth programs, while supporting meaningful apprenticeships and internships within our companies; and
We provided training and issued periodic newsletters focused on diversity, equality and inclusion.

More information about our sustainability accomplishments can be found in the sustainability section we recently added to our website.

As an important element of our business development strategy, we are targeting a number of contract awards that will expand the amount of our renewable energy project work. During Fiscal 2024, we completed the Maple Hill Solar project, which is among the largest solar-powered energy plants in Pennsylvania, and we commenced activities on the Midwest Solar and Battery Projects in Illinois. For Fiscal 2024, Fiscal 2023 and Fiscal 2022, the amounts of revenues earned by us and associated with renewable energy projects were 6.9%, 9.6% and 13.4%, respectively, of corresponding revenues for the power industry services segment. Based on our current project backlog of renewable projects in the amount of $175 million as of January 31, 2024 and subsequent contract awards, we expect that revenues associated with the performance of renewable energy projects will grow meaningfully and will represent significant portions of our power industry services segment and consolidated revenues over the coming years.

Meanwhile, we believe that our gas-fired power plant construction business is valuable to the achievement of the net carbon emission reduction goals of the U.S., Ireland and the U.K. as we are recognized as an accomplished, dependable and cost-effective provider of construction services to gas-fired power plant owners.

Like the U.S., Ireland and the U.K. are committed to the increase in energy consumption sourced from the sun and the wind on the pathway to net zero emissions. Other technologies will be required to support these power sources and to provide electricity when power demands exceed the amount of electricity supplied by renewable energy sources. The existence of the necessary power reserve during the long transition period to zero emissions will require supporting conventional power generation sources, often natural gas-fired power plants.

For example, the Irish government’s current policy related to the security of the electricity supply in Ireland confirms the requirement for the development of new support technologies to deliver on its commitment to have 80% of the country’s electricity generated from renewables by 2030. The policy emphasizes that this will require a combination of conventional generation (typically powered by natural gas), interconnection to other jurisdictions, demand flexibility and other technologies such as energy storage (i.e., batteries) and generation from renewable gases (i.e., biomethane and/or hydrogen produced from renewable sources). The Irish government has announced that the development of new conventional generation (including gas-fired generation) is a national priority and should be permitted and supported in order to ensure the security of electricity supply while supporting the growth of renewable electricity generation.

In the U.S., the Energy Information Administration illustrates that carbon emissions from the electric power sector declined by approximately 36% during the period 2005 through 2022. The primary reason for this decline was the replacement of coal-fired power plants with efficient gas-fired power plants. Natural gas is relatively clean burning, cost-effective, reliable and abundant. Finally, we note that the natural-gas fired plants that we build are not sprawling facilities and can be constructed closer to where power is being consumed, resulting in fewer transmission lines and line losses. They are constructed on relatively small sites and, upon completion, do not typically disturb the surrounding areas that are often green.

- 10 -

Materials Filed with the Securities and Exchange Commission (the “SEC”)

The public may read any materials that we file with the SEC at its public reference room at 100 F Street, NE, Washington, D.C. 20549. The public may obtain information on the operation of the public reference room by calling the SEC at 1-800-SEC-0330. The SEC maintains an Internet site that contains reports, proxy and information statements and other information regarding issuers that file electronically with the SEC, including us, at http://www.sec.gov.

We maintain a website on the Internet at www.arganinc.com that includes access to financial data. Information on our website is not incorporated by reference into this 2024 Annual Report. Copies of our Annual Reports on Form 10-K, our Quarterly Reports on Form 10-Q, our Current Reports on Form 8-K and amendments to those reports filed or furnished pursuant to Section 13(a) or 15(d) of the Exchange Act, as well as our Proxy Statements, are available, as soon as reasonably practicable, after we electronically file such materials with, or furnish them to, the SEC, without charge and upon written request provided to our Corporate Secretary at Argan, Inc., One Church Street, Suite 201, Rockville, Maryland 20850.

ITEM 1A. RISK FACTORS.

Our business is challenged by a changing environment that involves many known and unknown risks and uncertainties. The risks described below discuss factors that have affected and/or could affect us in the future. There may be others. We may be affected by risks that are currently unknown to us or are immaterial at this time. If any such events did occur, our business, financial condition and results of operations could be adversely affected in a material manner. Our future results may also be impacted by other risk factors listed from time to time in our future filings with the SEC, including, but not limited to, our Annual Reports on Form 10-K and our Quarterly Reports on Form 10-Q. As the most significant portion of our consolidated entity is represented by the power industry services reportable business segment, the risk factor discussions included below are focused on that business. However, as a large number of these same risks exist for our other reportable segments, (1) industrial construction services, and (2) telecommunications infrastructure services, a review and assessment of the following risk factors should be performed with that in mind.

This section of our 2024 Annual Report may include projections, assumptions and beliefs that are intended to be “forward-looking statements.” They should be read in light of our cautionary statement regarding “forward-looking statements” presented at the beginning of this 2024 Annual Report.

Risks Related to Our Business

Demand for our services may decrease during economic downturns or unpredictable economic cycles, which would most likely affect our businesses adversely.

Substantial portions of the revenues and profits earned by our reportable business segments are generated from construction-type projects, the awarding and/or funding of which we do not directly control. The engineering and construction industry is prone to cyclical fluctuations influenced by factors such as economic recessions, downturns in project owners’ business cycles, material shortages, subcontractor price hikes, interest rate changes, regulatory and political change, and other external economic factors.

When the general level of economic activity deteriorates, uncertainty about future business prospects increases, prompting clients to potentially delay or cancel projects. This includes new construction projections, maintenance on major power plant components, repairs to damaged or worn equipment or other plant outage work. The adverse financial condition of the industry could diminish our customers’ ability and willingness to fund capital expenditures or pursue significant projects in the future. Furthermore, specific economic, regulatory and market conditions affecting our clients may lead to a decrease in demand for our services, causing delays, reductions, or cancellations of projects essential to our future business forecasts.

Future revenues are dependent on the awards of utility-scale natural gas-fired and renewable energy EPC projects to us, the receipt of corresponding full notices-to-proceed and our ability to successfully complete the projects that we start.

The majority of our consolidated revenues relate to performance by the power industry services segment which represented 73%, 76% and 78% of consolidated revenues for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. GPS, the major business component of this segment, earns the substantial portion of its revenues from execution on long-term natural gas-fired EPC services contracts with project owners. For Fiscal 2024, a majority portion of consolidated revenues related to

- 11 -

EPC services provided to three power industry services customers. During Fiscal 2023 and Fiscal 2022, a majority portion of consolidated revenues related to EPC services provided to a single power industry services customer on a project that achieved substantial completion during the early part of Fiscal 2024.

At times, we may be awarded contracts for which commencement of project activities are delayed or cancelled. Our ability to sustain revenues depends on many factors including the ability of the power industry services business to not only win the awards of significant new EPC projects, but to obtain the corresponding full notices-to-proceed and to complete its projects successfully.

We are directing a meaningful portion of our business development efforts to winning projects for the construction of renewable energy projects. We have successfully built utility-scale solar and wind farms, biomass-fueled power plants and biodiesel energy facilities in the past, and we have renewed the pursuit of renewable energy projects that will complement our natural gas-fired EPC services projects, which will remain the core business development focus going forward. Failure to obtain future awards for the construction of utility-scale energy facilities and the corresponding notices to proceed with contract activities, as well as any failure to successfully complete such projects, would have adverse effects on our future revenues, profits and cash flows.

Our dependence on large construction contracts may result in uneven financial results.

Our power industry services activities in any one fiscal reporting period are concentrated on a limited number of large construction projects for which we recognize revenues over time as we transfer control of the project asset to the customer. To a substantial extent, our contract revenues are based on the amounts of costs incurred. As the timing of equipment purchases, subcontractor services and other contract events may not be evenly distributed over the terms of our contracts, the amount of total contract costs may vary from quarter to quarter, creating uneven amounts of quarterly and/or annual consolidated revenues. In addition, the timing of contract commencements and completions may exacerbate the uneven pattern. As a result of the foregoing, future reported amounts of consolidated revenues, cash flow from operations, net income and earnings per share may vary in uneven patterns and may not be indicative of the operating results expected for any other fiscal period, thus rendering consecutive quarter comparisons of our consolidated operating results a less meaningful way to assess the growth of our business.

Actual results could differ from the assumptions and estimates used to prepare our consolidated financial statements.

To prepare consolidated financial statements in conformity with accounting principles generally accepted in the U.S., we are required to make estimates, assumptions and judgments as of the date of such financial statements, which affect the reported values of assets and liabilities, revenues and expenses, and disclosures of contingent assets and liabilities. For each of our fixed price customer contracts, we recognize revenues over the life of the contract as performance obligations are completed by us based on the proportion of costs incurred to date compared with the total costs estimated to be incurred for the entire project, and by using the resulting percentage to update the recorded amounts of project-to-date revenues.  We review and make necessary revisions to the amounts of estimated future costs on a monthly basis. In addition, contract results may be impacted by our estimates of the amounts of change orders that we expect to receive and our assessment of any contract disputes that may arise.

The effects on revenues of changes to the amounts of contract values and estimated costs are recorded as catch-up adjustments when the amounts are known and can be reasonably estimated. These revisions can occur at any time and could be material. Given the uncertainties associated with the types of customer contracts that we are awarded, it is possible for contract values and actual costs to vary from estimates previously made, which may result in reductions or reversals of previously recorded revenues and profits. Our disclosures of Critical Accounting Policies and Estimates (see Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations) include an expanded discussion of the estimates, judgements and assumptions that our revenue recognition accounting may require.

Among the other areas that could require significant estimates by our management are the following:

the assessment of the value of goodwill and recoverability of other intangible assets;
the determination of provisions for income taxes, the accounting for uncertain income tax positions and the establishment of valuation allowances associated with deferred income tax assets;
the determination of the fair value of stock-based incentive awards; and
accruals for estimated liabilities, including any losses related to legal matters.

- 12 -

Our actual business and financial results could differ from our estimates, which may impact future profits.

Project backlog amounts may be uncertain indicators of future revenues as project realization may be subject to unexpected adjustments, delays and cancellations.

At January 31, 2024, the total value of our project backlog for all of our business units was $0.8 billion. Project cancellations or scope modifications may occur that could reduce the amount of our project backlog and the associated revenues and profits that we actually earn. Our projects generally provide our customers the right to terminate the existing contract unilaterally at their convenience as long as they compensate us for work already completed and the additional costs incurred by us to terminate corresponding subcontract and equipment orders, demobilize and vacate construction sites. These costs would most likely be meaningful. Projects that were awarded to us in the past remained in our backlog for extended periods of time as customers experienced project delays.

Should any unexpected delay, suspension or termination of the work under such projects occur, our results of operations may be materially and adversely affected. Although we believe that the customer commitments represented by project backlog are firm, we cannot guarantee that revenues projected by us based on our project backlog will be recognized or will result in profitable operating results.

Unsuccessful efforts to develop energy plant projects could result in write-offs and the loss of future business.

The development of a power plant construction project is expensive with a total cost that could approximate or exceed $10 million. The developers of power projects may form single purpose entities, such as limited liability companies, limited partnerships or joint ventures, to perform the development activities, which are often funded by outside sources. Periodically, we provide financial support to new projects during their development phase. This aims to enhance the success of the phase and increase our chances of ultimately securing the EPC contract to build the plant.

In the past, we have provided funding to special-purpose entities for gas-fired power plant projects during the development phase, leading to the return of our initial investment, the awarding of EPC contracts with authorization to start construction, and the receipt of success fees. While some of these initiatives have yielded positive results, others have not, resulting in the write-off of loan and interest balances and the loss of potential construction projects. As of January 31, 2024, we do not have any financial statement exposure related to outstanding power plant project development financing arrangements.

Future bonding requirements may adversely affect our ability to compete for new energy plant construction projects.

Our construction contracts frequently require that we obtain payment and/or performance bonds from surety companies on behalf of project owners as a condition to the contract award. Historically, we have had a strong bonding capacity. Under standard terms, surety companies issue bonds on a project-by-project basis and can decline to issue bonds at any time or require the posting of additional collateral as a condition to issuing any bonds. Not all of our projects require bonding. As of January 31, 2024, the estimated value of future work covered by outstanding performance bonds was approximately $0.5 billion.

Market conditions, changes in our performance or financial position, changes in our surety’s assessment of its own operating and financial risk, or larger future projects could cause our surety company to decline to issue, or substantially reduce, the amount of bonding available for our work and/or could increase our bonding costs. These actions can be taken on short notice. If our surety company were to limit or eliminate our access to new bonds, our alternatives would include seeking bonding capacity from other surety companies, joint venturing with other construction firms, increasing business with clients that do not require bonds or posting other forms of collateral for project performance, such as letters of credit or cash. We may be unable to make alternative arrangements in a timely manner, on acceptable terms, or at all. Accordingly, if we were to experience an interruption, reduction or other alteration in the availability of bonding capacity, we may be unable to compete for or work on certain projects.

Our results could be adversely affected by natural disasters, human-made disasters or other catastrophic events.

Natural disasters, such as hurricanes, tornadoes, blizzards, floods and other adverse weather conditions; or other catastrophic events such as public health crises, geopolitical conflicts, terrorism and civil disturbances could disrupt our operations or the operations of one or more of our vendors or customers. In particular, these types of events could shut down our construction job sites or fabrication facility for indefinite periods of time, disrupt our product supply chain or

- 13 -

could cause our customers to delay or cancel projects. To the extent any of these events occur, our operations and financial results could be adversely affected.

The adverse effects of the war in Ukraine have spread globally. The prolonged disruption by Russia of the supply and prices of oil and natural gas provided to Western European nations adversely affected the economies of those countries. Western European nations in search of alternative supplies of oil and natural gas may find them at higher prices or through more complicated transit routes, further disrupting global supply chains. More recently, activities conducted by terrorists based in the country of Yemen have endangered the key shipping route between the Red Sea and the Indian Ocean. Also the recent bridge collapse in Baltimore has closed temporarily ship access to its major port facilities. Such unfavorable effects may adversely impact our business going forward by altering materials and equipment delivery schedules.

We have protections in our contracts with major customers that provide certain relief that helps to mitigate certain financial risks. However, the effectiveness of these protections may be limited by factors including the financial strength of the customer. The extent to which natural disasters, human-made disasters or other catastrophic events could harm us depends on the impact on our customers, supply chains, labor forces and numerous other evolving factors.

Continuing disruptions to capacity auctions and corresponding prices could reduce the demand for power plants in our primary business region.

Most of our recently completed and awarded EPC service contracts relate to the construction of natural gas-fired power plants located within the Mid-Atlantic geographic footprint of the electric power system operated by PJM, which includes all or part of thirteen states and the District of Columbia. This entity operates a capacity market which is a process to ensure long-term grid reliability by securing the appropriate amount of power supply resources needed to meet predicted future energy demands. Capacity payments represent meaningful portions of the revenue streams of qualifying power plants.  Annual capacity auctions since 2021 have suffered delays that, once held, resulted in lower prices than previous auctions. In June 2023, the Federal Energy Regulatory Commission (“FERC”) issued an order accepting delays in future capacity auctions so that market design rule changes proposed by stakeholders might be implemented for all future auctions. In January 2024, FERC approved only one component of PJM’s two-part proposal for its capacity auction reform.

Uncertainty in this market, including the difficulties experienced by PJM in implementing a capacity auction design that all of its stakeholders consider to be fair, the repeated capacity auction delays, and the shrinking annual capacity auction prices, may discourage potential power plant owners from commencing the development of new power plants in this area thereby reducing potential new business opportunities for us.

Risks Related to Our Market

If the price of natural gas increases, the demand for our construction services could decline.

The growth of our power business has been substantially based on the number of combined cycle gas-fired power plants built by us, as many coal-fired plants have been shut down. In 2010, coal-fired power plants accounted for about 45% of total electricity generation in the U.S. For 2023, coal accounted for approximately 17% of net electricity generation. On the other hand, natural-gas fired power plants provided approximately 42% of the electricity generated by utility-scale power plants in the U.S. in 2023, representing an increase of 70% in the amount of electrical power generated by natural gas-fired power plants, which provided approximately 24% of net electricity generation for 2010.

The use of coal as a power source has been adversely affected significantly by the plentiful supply of inexpensive natural gas that is available through the combined use of fracturing and horizontal drilling. However, the share of electricity generation provided by natural gas is particularly reactive in the short term to changing natural gas prices. Even though current natural gas prices are extremely low, higher than expected natural gas prices in the future, even for just the short term, could have adverse effects on the ability of independent power producers to obtain construction and permanent financing for new natural gas-fired power plants.    

Soft demand for electrical power may cause deterioration in our financial outlook.

The most recent Annual Energy Outlook published by the Energy Information Administration (“EIA”) in March 2023 projected steady increases to utility-scale electricity generation through 2050. However, future softness in the demand for electrical power in the U.S. could result in the delay, curtailment or cancellation of future gas-fired power plant projects,

- 14 -

thus decreasing the overall demand for our EPC services and adversely impacting the financial outlook for our power industry services business.

Intense global competition for engineering, procurement and construction contracts could reduce our market share.

The competitive landscape in the EPC services market for natural gas-fired power plants was altered several years ago as several significant competitors announced their exit from the market for a variety of reasons. Others have announced intentions to avoid entering into fixed-price contracts citing the disproportionate financial risks borne by contractors. However, the market remains dynamic, and remaining competitors include committed multi-billion-dollar companies with thousands of employees. Competing effectively in our market requires substantial financial resources, the availability of skilled personnel and equipment when needed and the effective use of technology. Meaningful competition is expected to continue in the domestic market, and could increase in the Irish and U.K markets, presenting us with significant challenges to our achieving strong growth rates and acceptable profit margins. If we are unable to meet these competitive challenges and to win the awards of new projects that provide desirable margins, we could lose market share to our competitors, experience overall reductions in future revenues and profits or incur losses.

The continuous rise in renewables could possibly reduce the number of future gas-fired power plant projects.

The net amount of electricity generation in the U.S. provided by utility-scale solar and wind facilities continues to rise. Together, such power facilities provided approximately 12%, 13%, and 15% of the net amount of electricity generated by utility-scale power facilities in 2021, 2022 and 2023 respectively. In the reference case of the EIA Energy Outlook for 2023, net electricity generation from all renewable power sources is expected to represent approximately 63% of such generation by 2050. Impetus for this growth has been provided by various factors including laws and regulations that discourage new fossil-fuel burning power plants, federal support for new carbon-reduction technologies, environmental activism, income tax advantages that promote the growth of solar and wind power, the decline in the costs of renewable power plant components and power storage, and the increase in the scale of energy storage capacity. The reference case in the 2023 Energy Outlook report projected that the share of natural gas-fired electricity generation will decrease from 42% in 2023 to approximately 22% in 2050. Should the pace of development for renewable energy facilities, including solar and wind power plants, accelerate at faster rates than projected or drive a faster migration from base load to peak load power plants, the number and/or value of future natural gas-fired construction project opportunities for us may fall, which could adversely affect our future revenues, profits and cash flows.

Unexpected and adverse changes in the foreign countries in which we operate could result in project disruptions, increased costs and potential losses.

Our business is subject to overseas economic and political conditions that change for reasons which are beyond our control (i.e., “Brexit”). Such changes may have unfavorable consequences for us. Operating in the European marketplace, which for us exists primarily in Ireland and the U.K., may expose us to a number of risks including:

abrupt changes in domestic and/or foreign government policies, laws, treaties (including those impacting trade), regulations or leadership;
embargoes or other trade restrictions, including sanctions;
restrictions on currency movement;
tax or tariff increases;
currency exchange rate fluctuations;
changes in labor conditions and difficulties in staffing and managing overseas operations; and
other social, political and economic instability.

Our level of exposure to these risks will vary on each significant project we perform overseas, depending on the location and the particular stage of the project. To the extent that our international business is affected by unexpected and adverse foreign economic changes, including trade retaliation from certain countries, we may experience project disruptions and losses which could significantly reduce our consolidated revenues and profits, or could cause losses reflected at the consolidated level.

- 15 -

Risks Related to the Regulatory Environment

We are required to comply with environmental laws and regulations that may add unforeseen costs to our businesses.

Our operations are subject to compliance with federal, state and local environmental laws and regulations, including those relating to discharges to air, water and land, the handling and disposal of solid and hazardous waste, and the cleanup of properties affected by hazardous substances. Certain environmental laws impose substantial penalties for non-compliance and others, such as the federal Comprehensive Environmental Response, Compensation and Liability Act, impose strict, retroactive, and joint and several liability upon persons responsible for releases of hazardous substances. We continually evaluate whether we must take additional steps to ensure compliance with environmental laws, however, there can be no assurance that these requirements will not change and that compliance will not add costs to our projects that could adversely affect our operating results in the future.

Furthermore, we expect increased regulations related to greenhouse gas emissions disclosures and other ESG reporting matters whose compliance efforts may vary based on the jurisdiction. For example, the European Union adopted the Corporate Sustainability Reporting Directive (“CSRD”) at the end of 2022 that requires comprehensive disclosures on a broad spectrum of topics, and in October 2023, the governor of California signed into law emissions and climate risks bills that provide different and extensive reporting requirements. Additionally, the SEC’s new regulations adopted in March 2024 mandate public companies to integrate extensive climate risk disclosures in their annual reports and registration statements, where certain disclosures will be subject to phased-in assurance requirements. At this time, it is uncertain whether the SEC’s new climate disclosure rules will withstand pending and future legal challenges. Notably, in April 2024, the SEC issued an order staying implementation of the new disclosure regulations pending the resolution of certain challenges. Nonetheless, we may incur additional expenses implementing and maintaining compliance with such regulations and may divert management’s attention from other important operational or financial matters.

Expectations of customers and investors may change with respect to sustainability practices, which may impose costs or impact our ability to obtain financing.

Customer and investor standards, which are ever-evolving, have become increasingly focused on environmental, social and governance practices of the companies with which they work or in which they invest. Customers may require that we meet their standards before granting us projects, which may create additional costs to us. If our sustainability practices do not ultimately meet customer expectations, we may not win projects. Investors, who may become wary of funding power services ventures with sustainability practices unacceptable to them, may decide to reallocate capital to other enterprises. Investors and lenders may be generally unwilling to provide capital for energy projects to increase the domestic production and transmission of oil and natural gas.

The Biden Administration poses additional regulatory hurdles for fossil-fuel energy facilities.

The Biden Administration’s approach to environmental regulation poses significant risks to the development and operation of fossil-fuel energy facilities. Central to the administration’s energy policy is the ambitious goal to achieve a carbon-free electricity sector by 2035 and to position the U.S. to reach net-zero carbon emissions by 2050.

Since taking office, President Biden has taken several actions that underscore his commitment to these goals. He led the U.S. to re-enter the Paris Climate Agreement. Additionally, the administration revoked the Keystone Pipeline permit, effectively halting its construction, and temporarily suspended new oil and gas leasing on federal lands, despite legal challenges. Although oil and gas leasing on federal lands has resumed, there is a notable reduction in the scale of these activities compared to previous administrations. The Environmental Protection Agency (“EPA”) has proposed rules that would require coal and gas-fired power plants to limit greenhouse gas emissions by processes that may include the potential installation of carbon capture technology or co-firing with hydrogen to meet the standards.

The administration’s actions and policy goals reflect a shift away from fossil fuel energy. This shift increases the regulatory and operational hurdles for companies involved in the development and management of fossil-fuel energy facilities. Developers may face challenges in obtaining necessary permits, meeting new environmental standards, and adapting to a rapidly evolving regulatory landscape. These factors could significantly impact the feasibility, costs, and timelines of new fossil-fuel projects, affecting our future operations and financial condition.

- 16 -

Future construction projects may depend on the continuing acceptability of the hydraulic fracturing process in certain states.

The viability of the gas-fired power plants that we build is based substantially on the availability of inexpensive natural gas supplies provided through the use of fracking combined with horizontal drilling techniques. The new supplies of natural gas generally lowered the price of natural gas in the U.S. and reduced its volatility. However, the process of fracking is controversial due to concerns about the disposal of the waste water, the possible contamination of nearby water supplies and the risk of potential seismic events. Should future evidence confirm the concerns, the use of fracking may be suspended, limited, or curtailed by additional state and/or federal authorities. As a result, the supply of inexpensive natural gas may not be available in the future and the economic viability of gas-fired power plants that we build may be jeopardized.

The inability of power project developers to receive or to avoid delay in receiving the applicable regulatory approvals relating to energy projects, including new natural gas pipelines, may result in lost or postponed revenues for us.

The commencement and/or execution of the types of projects performed by our power industry services reporting segment are subject to numerous regulatory permitting processes. Applications for the variety of clean air, water purity and construction permits may be opposed by individuals or environmental groups, resulting in delays and possible denial of the permits. There are no assurances that our project owner customers will obtain the necessary permits for these projects, or that the necessary permits will be obtained in order to allow construction work to proceed as scheduled. More importantly, a project may confront difficulties in securing an interconnection service commitment from a transmission organization establishing a connection to the electricity grid. Without such a commitment, the project might be delayed or even terminated.

The viability of new natural gas-fired power plants depends on the availability of nearby sources of natural gas for fuel which may require the construction of new pipelines for the delivery of natural gas to a power plant location. Approval delays and public opposition to new oil and gas pipelines have become major potential hurdles for the developers of gas-fired power plants and other fossil-fuel facilities. In particular, pipeline projects may be delayed by onsite protest demonstrations, indecision by local officials and lawsuits.

Failure to commence or complete construction work as anticipated by fossil-fuel project owners could have material adverse impacts on our future revenues, profits and cash flows.

Work stoppages, union negotiations and other labor problems could adversely affect us.

The performance of certain large-scale construction contracts results in the hiring of employees in the U.S. and overseas who are represented by labor unions. We make sincere efforts to maintain favorable relationships and conduct good-faith negotiations with union officials. However, there can be no assurances that such efforts will eliminate the possibilities of unfavorable conflicts in the future. A lengthy strike or the occurrence of other work disputes, slowdowns or stoppages at any of our current or future construction project sites could have an adverse effect on us, resulting in cost overruns, schedule delays or even lawsuits that could be significant. In addition, labor incidents could result in negative publicity for us thereby damaging our business reputation and perhaps harming our prospects for the receipt of future construction contract awards in certain locales.

Risks Related to Our Operational Execution

We may experience reduced profits or incur losses under fixed price contracts if costs increase above estimates.

Primarily, our business is performed under long-term, fixed price contracts at prices that reflect our estimates of corresponding costs and schedules. Inaccuracies in these estimates may lead to cost overruns that may not be paid by our project owner customers. If we fail to accurately estimate the resources required and time necessary to complete these types of contracts, or if we fail to complete these contracts within the costs and timeframes to which we have agreed, there could be material adverse impacts on our actual financial results, the accuracy of forecasted future results, as well as our business reputation.

- 17 -

Factors not specifically discussed in these risk factors that could result in contract cost overruns, project delays or other problems for us may include:

the impacts of inflation on fixed-price contracts;
delays in the scheduled deliveries of machinery and equipment ordered by us or a project owner;
unanticipated technical problems, including design or engineering issues;
inadequate project execution tools for recording, tracking, forecasting and controlling future costs and schedules;
unforeseen increases in the costs of labor, warranties, raw materials, components or equipment, or our failure or inability to obtain resources when needed;
reliance on historical cost and/or execution data for estimation purposes that is not representative of current conditions;
delays or productivity issues caused by weather conditions, or other forces majeure;
satisfying the requirements of the Inflation Reduction Act of 2022 (the “IRA”) for our customers in order to maximize its potential benefits;
incorrect assumptions related to labor productivity, scheduling estimates or future economic conditions;
workmanship deficiencies resulting in delays and costs associated with the performance by us of unanticipated rework; and
modifications to projects that create unanticipated costs or delays.

These risks tend to be exacerbated for longer-term contracts because there is increased risk that the circumstances under which we based our original cost estimates or project schedules will change with a resulting increase in costs or delays in achieving scheduled milestones. In such events, our financial condition and results of operations could be negatively impacted.

We try to mitigate these risks by reflecting in our overall cost estimates the reasonable possibility that a number of different and potentially unfavorable outcomes might occur. There are no assurances that our estimates will be sufficient. If not, our misjudgments may lead to decreased profits or losses. In some cases, as certain risk scenarios are eliminated or our concerns regarding certain potential cost and/or schedule issues diminish, we may estimate that the likelihood of an unforeseen cost overrun has reduced and, accordingly, we may increase the estimated gross margin on the project by decreasing the remaining overall cost estimate.

If we guarantee the timely completion or the performance of a project, we could incur additional costs to fulfill such obligations.

In certain of our fixed price long-term contracts, we guarantee that we will complete a project by a scheduled date. We sometimes provide that the project, when completed, will also achieve certain performance standards. Subsequently, we may fail to complete the project on time or equipment that we install may not meet guaranteed performance standards. In those cases, we may be held responsible for costs incurred by the customer resulting from any delay or any modification to the plant made in order to achieve the performance standards, generally in the form of contractually agreed-upon liquidated damages or obligations to re-perform substandard work. If we are required to pay such costs, the total costs of the project would likely exceed our original estimate, and we could experience reduced profits or a loss related to the applicable project.

We may be involved in litigation, liability claims and contract disputes which could reduce our profits and cash flows.

We build large and complex energy plants where design, construction or systems failures can result in substantial injury or damage to third parties. In addition, the nature of our business results in project owners, subcontractors and vendors occasionally presenting claims against us for recovery of costs for which they believe they are not contractually liable. In other cases, project owners may withhold retention and/or contract payments they believe they do not contractually owe us, or they believe offset amounts owed to them by us. They may even terminate the contract. We have been, and may be in the future, named as a defendant in legal proceedings where parties may allege breach of contract and seek recovery for damages or other remedies with respect to our projects or other matters (see Legal Proceedings in Item 3). These legal matters generally arise in the normal course of our business. In addition, from time to time, we and/or certain of our current or former directors, officers or employees could be named as parties to other types of lawsuits.

- 18 -

Litigation can involve complex factual and legal questions, and proceedings may occur over several years. Any claim that is successfully asserted against us could result in our payment of significant sums for damages and other losses. Even if we were to prevail, any litigation may be costly and time-consuming, and would likely divert the attention of our management and key personnel from our business operations over multi-year periods. Either outcome may result in adverse effects on our financial condition, results of operations, cash flows and our reputation.

In accordance with customary industry practices, we maintain insurance coverage against some, but not all, potential losses in order to protect against the risks we face. When it is determined that we have liability, we may not be covered by insurance or, if covered, the dollar amount of any liability may exceed our policy limits or self-insurance reserves.

Further, we may elect not to carry insurance related to particular risks if our management believes that the cost of available insurance is excessive relative to the risks presented. In addition, we cannot insure fully against pollution and environmental risks. Our management liability insurance policies are on a “claims-made” basis covering only claims actually made during the policy period currently in effect. In addition, even where insurance is maintained for such exposures, the policies have deductibles resulting in our assuming exposure for a layer of coverage with respect to any such claims. Any liability not covered by our insurance, in excess of our insurance limits and self-insurance reserves or, if covered by insurance but subject to a high deductible, could result in a significant loss for us, which claims may reduce our future profits and cash available for operations.

Our failure to recover adequately on contract variations submitted to project owners could have a material effect on our financial results.

We may submit contract variations to project owners for additional costs exceeding the contract price or for amounts not included in the original contract price. Variations occur due to matters such as owner-caused delays or changes from the initial project scope, both of which may result in additional costs. At times, contract variation submissions can be the subject of lengthy arbitration or litigation proceedings, and it is difficult to accurately predict when these differences will be fully resolved. When these types of events occur and unresolved matters are pending, we have used existing liquidity to cover cost overruns pending their resolution. The aggregate amounts of contract variations included in the transaction prices that were still pending customer acceptance at January 31, 2024 and 2023 were $8.4 million and $11.6 million, respectively. A failure to promptly recover on these types of customer submissions could have a negative impact on our revenues, liquidity and profitability in the future.

The shortage of skilled craft labor may negatively impact our ability to execute on our long-term construction contracts.

Increased infrastructure spending and general economic expansion may increase the demand for employees with the types of skills needed for the completion of our projects. There is a risk that our construction project schedules become unachievable or that labor expenses will increase unexpectedly as a result of a shortage in the supply of skilled personnel available to us. Increased labor costs may influence our customers’ decisions regarding the feasibility or scheduling of specific projects, potentially leading to delays or cancellations that could materially affect our business adversely. Labor shortages, productivity decreases or increased labor costs could impair our ability to maintain our business or grow our revenues. The inability to hire and retain qualified skilled employees in the future, including workers in the construction crafts, could negatively impact our ability to complete our long-term construction contracts successfully.

Our dependence upon third parties to complete many of our contracts may adversely affect our performance under current and future construction contracts.

Certain of the work performed under our energy plant construction contracts is actually performed by third-party subcontractors we hire. We also rely on third-party manufacturers or suppliers to provide much of the equipment and most of the materials (such as copper, concrete and steel) needed to complete our construction projects. If we are unable to hire qualified subcontractors or to find qualified equipment manufacturers or suppliers, our ability to successfully complete a project could be adversely impacted. If the price we are required to pay for subcontractors or equipment and supplies exceeds the corresponding amount that we have estimated, we may suffer a reduction in the anticipated amount of gross profit or even a loss on the contract. If a supplier, manufacturer or subcontractor fails to provide supplies, equipment or services as required under a negotiated contract for any reason, we may be required to self-perform unexpected work or obtain these supplies, equipment or services on an expedited basis or at a higher price than anticipated from a substitute source, which could impact contract profitability in an adverse manner. Unresolved disputes with a subcontractor or supplier regarding the scope of work or performance may escalate, resulting in arbitration proceedings or legal actions.

- 19 -

Unfavorable outcomes of such disputes may also impact contract profitability in an adverse manner. In addition, if a subcontractor fails to pay its subcontractors, suppliers or employees, liens may be placed on our project requiring us to incur the costs of reimbursing such parties in order to have the liens removed or to commence litigation.

Failure to maintain safe work sites could result in significant losses as we work on projects that are inherently dangerous.

Our project sites can place our employees and others near large and/or mechanized equipment, high voltage electrical equipment, moving vehicles, dangerous processes or highly regulated materials, and in challenging environments. Safety is a primary focus of our business and is critical to our reputation. Many of our customers require that we meet certain safety criteria to be eligible to bid on contracts. Further, regulatory changes implemented by OSHA or similar government agencies could impose additional costs on us. We maintain programs with the primary purpose of implementing effective health, safety and environmental procedures throughout our Company. If we fail to implement appropriate safety procedures and/or if our procedures fail, our employees or others may suffer injuries or illness. The failure to comply with such procedures, client contracts or applicable regulations could subject us to losses and liability, and adversely impact our ability to complete awarded projects as planned or to obtain projects in the future. Our OSHA reportable incident rates, weighted by hours worked for all of our subsidiaries, were 0.43, 0.60, 0.48, 0.55 and 0.40 for the calendar years 2023, 2022, 2021, 2020 and 2019, respectively. Our actual rates were significantly better than the national average rates in our industry (NAICS – 2379) for those years.

Future acquisitions and/or investments may not occur which could limit the growth of our business, and the integration of acquired companies may not be successful.

We may make additional opportunistic acquisitions and/or investments by identifying companies with significant potential for profitable growth and realizable synergies with one or more of our existing businesses. However, we may have more than one industrial focus depending on the opportunity and/or needs of our customers. Companies meeting our criteria and that provide products and/or services in growth industries and that are available for purchase at attractive prices are difficult to find. Discussions with the principal(s) of potential acquisition targets may be protracted and ultimately terminated for a variety of reasons. Further, due diligence investigations of attractive target companies may uncover unfavorable data, and the negotiation and consummation of acquisition agreements may not be successful.

We cannot readily predict the timing or size of any future acquisitions or the capital we will need for these transactions. However, it is likely that any potential future acquisition or strategic investment transaction would require the use of cash and/or shares of our common stock. Using cash for acquisitions may limit our financial flexibility and make us more likely to seek additional capital through future debt or equity financings. Our ability to obtain such additional financing in the future may depend upon prevailing capital market conditions, the strength of our future operating results and financial condition as well as conditions in our business, and the amount of outside financing sought by us. These factors may affect our efforts to arrange additional financing on terms that are acceptable to us. Our ability to use shares of our common stock as future acquisition consideration may be limited by a variety of factors, including the future market price of shares of our common stock and a potential seller’s assessment of the liquidity of our common stock. If adequate funds or the use of our common stock are not available to us, or are not available on acceptable terms, we may not be able to take advantage of desirable acquisitions or other investment opportunities that would benefit our business. Even if we do complete acquisitions in the future, acquired companies may fail to achieve the results we anticipate including the expected gross profit percentages.

In general, we keep each of our subsidiary operations in a self-sustaining mode. However, we do attempt to integrate certain aspects to drive synergies and cost reductions, as well as to share best practices, processes and procedures. In the future, we may not be able to successfully integrate such acquired companies with our other operations without substantial costs, delays or other operational or financial problems including:

the diversion of management’s attention from other important operational or financial matters;
the inability to retain or maintain the focus of key personnel of acquired companies;
the discovery of previously unidentified project costs or other liabilities;
unforeseen difficulties encountered in the maintenance of uniform standards, controls, procedures and policies, including an effective system of internal control over financial reporting; and
impairment losses related to acquired goodwill and other intangible assets.

- 20 -

Future acquisitions could result in issuances of equity securities that would reduce our stockholders’ ownership interests, the issuance of sizable amounts of debt and the incurrence of contingent liabilities. Further, we may conclude that the divestiture of a troubled or unrelated business will satisfy the best interests of our stockholders. There is risk that we would be unable to complete such a transaction with terms and timing that are acceptable for us, or at all. Any divesting transaction could also result in a material loss for us.

In summary, integrating acquired companies may involve unique and significant risks. Our failure to overcome such risks could materially and adversely affect our business, financial condition and future results of operations, and could cause damage to our Company’s reputation.

Our failure to protect our management information systems against security breaches could adversely affect our business and results of operations.

Our information systems face the threat of unauthorized access, computer hackers, viruses, malicious code, cyberattacks, phishing and other security incursions and system disruptions, including attempts to improperly access our confidential and proprietary information as well as the confidential and proprietary information of our customers and other business partners. Techniques used to attempt to obtain unauthorized access to information systems change frequently, and the rapid development of artificial intelligence poses new cybersecurity risks that we may not timely anticipate. A party who circumvents our security measures, or those of our clients, contractors or other vendors, could misappropriate confidential or proprietary information, improperly manipulate data, or cause damage or interruptions to systems.

Furthermore, we are heavily reliant on computer, information and communications technology and related systems, some of which are hosted by third party providers. We may experience system availability disruptions. Unplanned interruptions could delay or prevent necessary operations. While we believe that our reasonable safeguards will protect us from serious disruptions in the availability of our information technology assets, these safeguards may not be sufficient. We may also be required to expend significant resources to protect against or alleviate damage caused by systems interruptions and delays.

Various privacy and security laws in the U.S. and abroad, including the General Data Protection Regulation (“GDPR”) in the European Union, require us to protect sensitive and confidential information and data from disclosure and we are bound by our client and other contracts, as well as our own business practices, to protect confidential and proprietary information and data from unauthorized disclosure. We believe that we have deployed industry-accepted security measures and technologies to securely maintain confidential and proprietary information retained within our information systems, including compliance with GDPR specifically at APC. However, these measures and technologies may not adequately prevent unanticipated security breaches. There can be no assurance that our efforts will prevent these threats. Further, as these security threats continue to evolve, we may be required to devote additional resources to protect, prevent, detect and respond against such threats. We believe that our business represents a low value target for cyberextortionists as we are not a company in the high technology space and we do not maintain large files of sensitive or confidential personal information. However, we are a company with large balances of cash that could encourage bad actors to attempt to breach the security of our systems, possibly by using social engineering schemes. We do maintain a cybersecurity insurance policy to help protect ourselves from various types of losses relating to computer security breaches.

As previously disclosed, we were targeted by a complex criminal scheme in March 2023, which resulted in fraudulently-induced outbound wire transfers to a third-party account (see Note 18 to the accompanying consolidated financial statements). As a result of the fraud loss, net of funds recovered, and professional fees incurred related to an independent forensic investigation and efforts to recover the funds, we recognized $2.7 million of loss. We are unaware of any other significant security breaches at any of our business locations. That does not suggest that we may not be victimized by an additional breach in the future. Any significant future breach of our information security could damage our reputation, result in litigation and/or regulatory fines and penalties, or have other material adverse effects on our business, financial condition, results of operations or cash flows.

We may be subject to increased corporate taxes in the future.

We are subject to income taxes in the U.S. and foreign jurisdictions. A change in tax laws, treaties or regulations, or their interpretation, in any country where we operate could result in a higher tax burden or could increase our cost of tax compliance.

- 21 -

Higher corporate taxes for us could result from the Global Minimum Tax, a global agreement to ensure that certain large corporations pay income tax at a minimum rate of 15% that many countries have begun to incorporate into law. Under this scheme, governments could still set whatever corporate tax rate they want, but if companies pay lower rates in a particular country, their home governments could “top-off” their taxes to the 15% minimum. Although the rules for the Global Minimum Tax provide a framework for its application, countries may incorporate the rules into their laws differently.

We may continue to be impacted in varying degrees by the Global Intangible Low Tax Income (“GILTI”) provision based on the results of our foreign operations. GILTI is a federal tax calculation that determines the amount of the current earnings of foreign subsidiaries that are included in the computation of the corporate tax of U.S. parent companies. GILTI is an unfavorable permanent component of our federal taxable income in the U.S. when our foreign operations are profitable, and it may become more meaningfully unfavorable to us if our operations in Ireland and the U.K. increase their profitability in the future.

Certain of our tax positions may be successfully challenged by tax authorities which could result in additional income tax expense.

Significant judgment is required in order to determine our worldwide provision for income taxes for each quarterly and annual reporting period. In the ordinary course of our business, there are many transactions and calculations where the ultimate tax determination is uncertain. Our tax estimates and tax positions could be materially affected by many factors including the final outcome of tax audits and related appeals, the introduction of new tax accounting standards, legislation, regulations and related interpretations, our global mix of earnings, the realization of deferred tax assets, changes in uncertain tax positions and changes in our tax strategies.

The results of current or future income tax return examinations could result in unfavorable adjustments to the amounts of income taxes previously recorded and/or paid. Any such future event or determination related to income taxes could have a material impact on our net earnings and cash flows from operations. See Note 12 to the accompanying consolidated financial statements for discussion of our current income tax return examinations.

We could be adversely affected by violations of the Foreign Corrupt Practices Act and similar anti-bribery laws.

The U.S. Foreign Corrupt Practices Act, the U.K. Bribery Act of 2010 and similar anti-bribery laws in other jurisdictions generally prohibit companies and their intermediaries from making improper payments to officials or others for the purpose of obtaining or retaining business. While we believe that our policies and oversight in this area are comprehensive and effective, we cannot provide assurances that our internal controls and procedures always will protect us from the possible reckless or criminal acts committed by our employees or others. If we are found to be liable for anti-bribery law violations (either due to our own acts or our inadvertence, or due to the acts or inadvertence of others including our partners, subcontractors or suppliers), we could suffer from criminal or civil penalties or other sanctions, including contract cancellations or debarment, and damage to our reputation, any of which could have a material adverse effect on our business. Litigation or investigations relating to alleged or suspected violations of anti-bribery laws, even if such litigation or investigations demonstrate ultimately that we did not violate anti-bribery laws, could be costly and could divert management’s attention away from other aspects of our business.

Our continued success requires us to retain and hire talented personnel.

Undoubtedly, unforeseen future changes in our management will occur. Therefore, we cannot be certain that any key executive or manager will continue in such capacity while performing at a high level for any particular period of time, nor can we be certain that events will permit us to complete smooth management transitions should they occur. Our ability to operate productively and profitably, particularly in the power industry, is dependent on our ability to attract, employ, retain and train skilled personnel necessary to meet our future requirements. We cannot be certain that we will be able to maintain experienced management teams and adequately skilled groups of employees necessary to execute our long-term construction contracts successfully and to support our future growth strategy. The loss of key personnel, the inability to complete management transitions without significant loss of effectiveness, or the inability to hire and retain qualified employees in the future could negatively impact our ability to manage our business in the future.

- 22 -

Risks Related to an Investment in Our Securities

Our acquisition strategy may result in dilution to our stockholders.

We may make future acquisitions of other businesses that require the use of cash and issuances of common stock. To the extent that we intend to use cash for any acquisition, we may be required to raise additional equity and/or obtain debt financing. Stock issuances and financing, if obtained, may not be on terms favorable to us and could result in substantial dilution to our stockholders at the time(s) of these transactions.

Future stock option exercises and restricted stock issuances will dilute the ownership of the Company’s current stockholders.

We award stock options, time-based restricted stock units, market-based restricted stock units and performance-based restricted stock units to executives and other key employees (see Note 11 to the accompanying consolidated financial statements). Future exercises of options to purchase shares of common stock at prices below prevailing market prices will result in ownership dilution for current stockholders. Additionally, the number of shares of our common stock that will ultimately be issued in connection with the restricted stock unit awards is not known. Any issuance will result in the dilution of the stock ownership of current stockholders.

Our officers, directors and certain unaffiliated stockholders have substantial control over the Company.

As of January 31, 2024, our executive officers and directors as a group directly owned approximately 7.3% of our voting shares. In addition, four other stockholders owned approximately 30.6% of our shares in total as of December 31, 2023. These groups of stockholders may have significant influence over corporate actions such as the election of directors, amendments to our certificate of incorporation, the consummation of any merger, the sale of all or substantially all of our assets or other actions requiring stockholder approval.

We may not pay cash dividends in the future.

Our board of directors evaluates our ongoing operational and financial performance in order to determine what role strategically aligned dividends should play in creating shareholder value. We have paid regular and special cash dividends in the past. Since Fiscal 2019, we paid a regular quarterly cash dividend of $0.25 per share of common stock, which was increased to $0.30 per share of common stock for October 2023. There can be no assurance that the evaluations of our board of directors will result in the payment of regular or special cash dividends in the future.

We may discontinue the repurchase of our common stock in the future.

Under our share repurchase program, our board of directors has authorized us to repurchase shares of our common stock in the open market or through investment banking institutions, privately-negotiated transactions, or direct purchases. We began to repurchase shares of our common stock in November 2021, and we have repurchased shares of our common stock during each fiscal year since. Subsequent to January 31, 2024, we have continued to make open market purchases pursuant to the approvals of our board of directors.

The timing and amount of stock repurchase transactions depend on market and business conditions, applicable legal and credit requirements and other corporate considerations. We have no obligation to repurchase any amount of our common stock under the share repurchase program. The share repurchase program may be suspended, modified or discontinued at any time, and we cannot guarantee that we will continue to make common stock repurchases up to the authorized amount.

Provisions of our certificate of incorporation and Delaware law could deter takeover attempts.

Provisions of our certificate of incorporation and Delaware law could delay, prevent, or make more difficult a merger, tender offer or proxy contest involving us. Among other things, our board of directors may issue up to 500,000 shares of our preferred stock and may determine the price, rights, preferences, privileges and restrictions, including voting and conversion rights, of these shares. The issuance of preferred stock by us could adversely affect the rights of holders of common stock by, among other factors, establishing dividend rights, liquidation rights and voting rights that are superior to the rights of the holders of the common stock. In addition, Delaware law limits transactions between us and persons that acquire significant amounts of our stock without approval of our board of directors.

- 23 -

ITEM 1B. UNRESOLVED STAFF COMMENTS.

None.

ITEM 1C. CYBERSECURITY

Our approach to managing cybersecurity risk involves a comprehensive program established at each subsidiary. This strategy intends to pinpoint subsidiary-specific risks associated with both our digital and physical assets with the objective of employing effective measures that ensure the security of our infrastructure, systems, data, business partners, customers, and financial information against potential cyber incidents. Corporate management of the holding company oversees the cybersecurity risk program at each of the subsidiaries to ensure the collective cohesively responds to organization-wide risks.

Administered by security, information technology, and compliance professionals and managed by senior management at each of our subsidiaries, our cybersecurity program integrates into our broader enterprise risk management framework and aligns with recognized frameworks and industry standards, as applicable, and complies with various legal and regulatory requirements.

The audit committee of our board of directors oversees cybersecurity risk and ensures timely reporting and management of these threats.

Risk Management and Strategy

As our business objectives and operational needs change, our cybersecurity professionals continuously evaluate and refine the measures taken to address our identified risks. Our technical measures include firewalls, intrusion detection and prevention systems, anti-malware tools, and access and configuration controls, to shield our information systems from cybersecurity incidents.

Acknowledging the dynamic and complex landscape of cybersecurity threats, we engage with various external specialists to evaluate and strengthen our cybersecurity risk management practices. Such engagements differ across our subsidiaries, as they are tailored to the specific risk profile of each subsidiary, ensuring that each entity works with experts most suited to their specific cybersecurity needs. These engagements, which may encompass regular audits, threat assessments, vulnerability testing, and consultations on security enhancements, help us tap into specialized knowledge and stay aligned with industry best practices. Significant results of these assessments are reported to the audit committee and, when necessary, the board of directors, leading to adjustments in our cybersecurity approach based on their findings to ensure our defenses remain robust and effective.

Recognizing the importance of human factors in cybersecurity, we provide regular employee training that emphasizes common threats, such as phishing, social engineering, sensitive data exposure, and insider risks. In addition to regular training sessions, we perform phishing simulations, post security bulletins, and provide dedicated means for employees to report attempted threats.

To mitigate cybersecurity risks linked to our engagement with third-party service providers, we perform security screening and review for prospective vendors that require access to our information systems. Additionally, to further protect our operations and enhance our cybersecurity risk management process, we maintain cybersecurity risk insurance obtained from industry leading underwriters.

Our strategy for responding to cybersecurity incidents involves a well-defined plan at each subsidiary that prescribes dedicated cross-functional personnel to each response team, ensuring a coordinated and premeditated response. These plans, which undergo regular review, assert the ability of system recovery processes and provide response frameworks for escalating issues. The plans are designed to minimize the impact to our operations and stakeholders, initiate appropriate communications both within and outside of the organization, and identify recommendations for improvement.

Governance and Oversight

While our management team is tasked with the day-to-day handling of risks facing our organization, the audit committee, as delegated by the board of directors and documented in the committee’s charter, specifically oversees cybersecurity risk and governance. Management provides the audit committee regular updates covering information security issues, recent

- 24 -

organizational developments and IT initiatives, vulnerability assessments, third-party evaluations, and emerging best practices. The audit committee also engages with our internal audit firm and other external specialists about organizational risks related to cybersecurity, as well as the policies and controls designed to mitigate these risks. In January 2024, our board of directors participated in a cybersecurity training session provided by our internal audit firm. Our audit committee or the board of directors is actively involved in strategic cybersecurity decisions, providing guidance and concurrence for significant or pervasive projects. This ensures that cybersecurity is seamlessly integrated into our strategic planning, aligning with our broader organizational goals.

Additionally, we have established a cross-organizational IT steering committee, comprising senior and executive leadership, enterprise risk management representatives, and IT management, many of whom have over 15 years of experience and hold professional certifications in their respective fields. In an effort to build a comprehensive cybersecurity strategy across the organization, this committee convenes several times each year to discuss ongoing cybersecurity initiatives, emerging regulatory requirements and industry standards, and results of risk assessments.

Cybersecurity incidents are regularly reported to cross-functional teams at each subsidiary through the dedicated means we have in place, and events deemed critical are reported to the Chief Executive Officer and Chief Financial Officer. Moreover, the audit committee and the board of directors are promptly informed of any significant cybersecurity incident, along with continuous updates until resolution.

Cybersecurity Risks, Threats and Material Incidents

Despite our endeavors to safeguard the security and integrity of our networks, systems, and the sensitive information they contain or transmit, including the adoption of numerous cybersecurity policies and protocols aimed at mitigating the risk of cybersecurity breaches or disruptions as previously outlined, it is impossible to guarantee the complete effectiveness of these measures. There remains a possibility that efforts to thwart cybersecurity threats may not be entirely successful, potentially resulting in successful breaches or disruptions that could be harmful. Refer to “Our failure to protect our management information systems against security breaches could adversely affect our business and results of operations” in Item 1A. Risk Factors.

As previously disclosed, we were targeted by a complex criminal scheme in March 2023, which resulted in fraudulently-induced outbound wire transfers to a third-party account (see Note 18 to the accompanying consolidated financial statements). The Company self-discovered the fraudulent activity and promptly contacted the remitting bank, receiving bank, dispute resolution experts, and federal and local law enforcement authorities. Moreover, we quickly informed the audit committee and regularly provided them with updates during investigation and recovery efforts. As a result of the fraud loss, net with funds recovered, and professional fees incurred related to an independent forensic investigation and efforts to recover the funds, we recognized $2.7 million of loss. We are unaware of any other significant security breaches at any of our business locations.

ITEM 2. PROPERTIES.

We occupy our corporate headquarters in Rockville, Maryland, under a lease covering 2,521 square feet of office space.

GPS owns and occupies a three-story office building (23,380 square feet) and the underlying land (1.75 acres), located in Glastonbury, Connecticut, that serves as its headquarters.

TRC owns and occupies a one-story industrial fabrication and warehouse facility (90,000 square feet), containing approximately 5,400 square feet of office space, and the underlying land (12.16 acres), located in Winterville, North Carolina. TRC also leases two offices (2,200 and 1,800 square feet) that are located close to one another in Winterville, North Carolina.

APC owns the top two floors (3,500 square feet) and leases an additional floor (2,000 square feet) of an office building located in Limerick, Ireland, that serves as its headquarters. In addition, APC owns an operations support facility in Nenagh, Ireland, that includes approximately 10,663 square feet of warehouse and a small amount of office space. APC also leases office space in Derby, England, and warehouse space in Billingham, England.

SMC is primarily located in Tracys Landing, Maryland, and leases facilities that include approximately five acres of land, a 2,400 square foot maintenance facility and approximately 3,900 square feet of office space. SMC also leases office space (3,570 square feet) and warehouse space (11,460 square feet) in Hampton, Virginia.

- 25 -

We consider the Company’s owned and leased properties to be sufficient for continuation of our operations for the foreseeable future. Our operations in the field may require us to occupy additional facilities for project support, staging or on customer premises or job sites. Accordingly, we may rent local office space, construction offices on or near job sites, storage yards for equipment and materials and temporary housing units; all under arrangements that are temporary or short-term in nature. These costs are expensed as incurred and are included substantially in the cost of revenues.

ITEM 3. LEGAL PROCEEDINGS.

Note 10 to the accompanying consolidated financial statements included in Item 8 of Part II of this 2024 Annual Report presents a discussion of our legal matters. In the normal course of business, we may have other pending claims and legal proceedings. It is our opinion, based on information available at this time, that any other current claim or proceeding will not have a material effect on our consolidated financial statements.

ITEM 4. MINE SAFETY DISCLOSURES.

Not applicable.

- 26 -

PART II

ITEM 5. MARKET FOR REGISTRANT’S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES.

Shares of our common stock trade under the symbol AGX on the New York Stock Exchange (the “NYSE”). As of April 6, 2024, we had approximately 52 stockholders of record. This number does not include shareholders for whom shares were held in “street name.”

Dividends

In September 2023, our board of directors increased our regular quarterly cash dividend by 20% from $0.25 to $0.30 per share of common stock for the cash dividend that was paid in October 2023. Prior to that increase and since Fiscal 2019, our board of directors declared and we paid regular quarterly cash dividends of $0.25 per share, totaling $1.00 per share for each year. During Fiscal 2021, our board of directors also declared and we paid two special cash dividends of $1.00 per share each.

Each quarter, our board of directors evaluates the Company’s ongoing operational and financial performance in determining the amount of the regular dividend and any special dividend. There can be no assurance that these evaluations will result in the payments of cash dividends in the future.

Share Repurchase Program

During Fiscal 2023, our board of directors authorized an increase in our share repurchase program from $100 million to $125 million. The repurchases may occur in the open market or through investment banking institutions, privately-negotiated transactions, or direct purchases. The timing and amount of stock repurchase transactions will depend on market and business conditions, applicable legal and credit requirements and other corporate considerations. In accordance with the SEC’s Rule 10b5-1, and pursuant to our share repurchase plan, we have allowed, and may in the future allow, the repurchase of common stock during trading blackout periods by an investment banking firm or other institution agent acting on our behalf pursuant to predetermined parameters.

In our reports on Form 10-Q for the first three quarterly periods of Fiscal 2024, we disclosed the number of shares repurchased during each month of the applicable quarter and information related to the costs of the repurchase transactions. Information related to our share repurchases for the fourth quarter of Fiscal 2024 follows:

Approximate Dollar

Total Number of

Value of Shares That May Yet

Shares Purchased as Part

Be Purchased under the

Total Number of

Average Price per

of Publicly Announced

Plans or Programs

Period

    

Shares Repurchased

    

Share Paid

    

Plans or Programs

    

(Dollars in Thousands)

November 1 - 30, 2023

4,881

$

44.40

4,881

$

27,758

December 1 - 31, 2023

7,721

$

43.60

7,721

$

27,422

January 1 - 31, 2024

80,125

$

43.67

78,117

$

24,018

Total

 

92,727

 

90,719

In January 2024, we accepted 2,008 shares of our common stock at the average price per share of $47.61 for the exercise price and/or tax withholding in connection with stock option exercises and/or restricted stock unit settlements that occurred during the month. Also during the month ended January 31, 2024, we repurchased 73,000 shares of common stock in a direct purchase from a director of the Company for an aggregate price of approximately $3.2 million, or $43.50 per share.

- 27 -

Common Stock Price Performance Graph

The graph presented below compares the percentage change in the cumulative total stockholder return on our common stock for the last five years with the S&P 500, a broad market index, and the Dow Jones US Heavy Construction TSM Index, a group index of companies where their focus is limited primarily to heavy civil construction. The returns are calculated assuming that an investment with a value of $100 was made in our common stock and in each index at January 31, 2019, and that all dividends were reinvested in additional shares of common stock. The graph lines merely connect the measuring dates and do not reflect fluctuations between those dates. The stock performance shown on the graph is not intended to be indicative of future stock performance.

Graphic

Years Ended January 31, 

    

2019

    

2020

    

2021

    

2022

    

2023

    

2024

Argan, Inc.

 

$ 100.00

 

$ 102.10

 

$ 112.11

 

$ 98.53

 

$ 106.37

 

$ 124.16

S&P 500

 

100.00

 

121.68

 

142.67

 

175.90

 

161.45

 

195.06

Dow Jones US Heavy Construction TSM

 

100.00

 

115.28

 

147.95

 

184.87

 

237.63

 

267.42

Unregistered Sales of Equity Securities and Use of Proceeds

None.

- 28 -

ITEM 6. [RESERVED]

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

This section of our 2024 Annual Report may include projections, assumptions and beliefs that are intended to be “forward-looking statements.” They should be read in light of our cautionary statement regarding “forward-looking statements” presented at the beginning of this 2024 Annual Report. The following discussion summarizes the financial position of Argan, Inc. and its subsidiaries as of January 31, 2024, and the results of their operations for Fiscal 2024 and Fiscal 2023, and should be read in conjunction with the consolidated financial statements and notes thereto included elsewhere in Item 8 of this 2024 Annual Report.

Please see “Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations,” in the Company’s Annual Report on Form 10-K for the year ended January 31, 2023, that was filed with the SEC on April 17, 2023, for a discussion of financial trends, variance drivers and other significant matters for Fiscal 2023 as compared with Fiscal 2022.

Business Description

The Company is primarily a construction firm that conducts operations through its wholly-owned subsidiaries, GPS, APC, TRC and SMC. Through GPS and APC we provide a full range of engineering, procurement, construction, commissioning, maintenance, project development and technical consulting services to the power generation market, including the renewable energy sector, for a wide range of customers, including independent power project owners, public utilities, power plant heavy equipment suppliers and other commercial firms with significant power requirements in the U.S., Ireland and the U.K. GPS and APC represent our power industry services reportable segment. Through TRC, the industrial construction services reportable segment provides primarily field services that support new plant construction and additions, maintenance turnarounds, shutdowns and emergency mobilizations for industrial plants primarily located in the Southeast region of the U.S. and that may include the fabrication, delivery and installation of steel components such as piping systems and pressure vessels. Through SMC, which conducts business as SMC Infrastructure Solutions, the telecommunications infrastructure services segment provides project management, construction, installation and maintenance services to commercial, local government and federal government customers primarily in the Mid-Atlantic region of the U.S.

We may make additional opportunistic acquisitions and/or investments by identifying companies with significant potential for profitable growth and realizable synergies with one or more of our existing businesses. However, we may have more than one industrial focus depending on the opportunity and/or needs of our customers. Significant acquired companies will be operated in a manner that we believe will best provide long-term and enduring value for our stockholders.

Overview

Operating Results

Consolidated revenues for Fiscal 2024 were $573.3 million, which represented an increase of $118.3 million, or 26.0%, from consolidated revenues of $455.0 million reported for Fiscal 2023.

The revenues of the power industry services segment increased by $70.3 million to $416.3 million for Fiscal 2024 from $346.0 million reported for Fiscal 2023, representing an increase of 20.3%. The revenues of this reportable segment represented 72.6% of consolidated revenues for Fiscal 2024. For Fiscal 2023, the percentage share of consolidated revenues represented by this reportable segment was 76.0%. The industrial construction services business reported revenues of $142.8 million for Fiscal 2024. This amount represented an increase of $50.0 million, or 53.9%, from revenues of $92.8 million reported for Fiscal 2023. Revenues provided by this reportable business segment represented 24.9% and 20.4% of corresponding consolidated revenues for Fiscal 2024 and Fiscal 2023, respectively. Revenues of the telecommunications infrastructure services business decreased to $14.3 million for Fiscal 2024 from revenues of $16.2 million for Fiscal 2023. Revenues provided by this reportable segment represented 2.5% and 3.6% of corresponding consolidated revenues for Fiscal 2024 and Fiscal 2023, respectively.

Consolidated gross profit declined by $5.5 million, or 6.4%, to $80.8 million for Fiscal 2024, or 14.1% of the corresponding consolidated revenues. The amount of consolidated gross profit reported for Fiscal 2023 was $86.4 million, or 19.0% of

- 29 -

the corresponding consolidated revenues. The reduction in the overall gross profit amount and percentage for the current fiscal year was primarily due to the recorded loss of $13.6 million related to APC’s construction contract in Northern Ireland. The effect of the contract loss on the gross profit amount for Fiscal 2024 was meaningfully offset by the profits earned on the performance of other projects by each of our four operating companies, including APC.

Selling, general and administrative expenses for Fiscal 2024 and Fiscal 2023 were $44.4 million, or 7.7% of corresponding consolidated revenues, and $44.7 million, or 9.8% of corresponding consolidated revenues, respectively. The net amount of other income increased significantly for Fiscal 2024 to $12.5 million from $4.3 million reported for Fiscal 2023 due primarily to increased investment income.

Due primarily to the consolidated pre-tax book income reported for Fiscal 2024 in the amount of $48.9 million, we reported income tax expense in the amount of $16.6 million for the year. For Fiscal 2023, we reported consolidated pre-tax book income of $46.0 million and recorded income tax expense in the amount of $11.3 million.

For Fiscal 2024, our overall operating performance resulted in net income attributable to our stockholders in the amount of $32.4 million, or $2.39 per diluted share. For Fiscal 2023, our overall operating performance resulted in net income attributable to our stockholders in the amount of $33.1 million, or $2.33 per diluted share.

Project Backlog

At January 31, 2024 and 2023, our consolidated project backlog amount of $0.8 billion consisted substantially of the projects of the power industry services reporting segment. Our reported amount of project backlog at a point in time represents the total value of projects awarded to us that we consider to be firm as of that date less the amounts of revenues recognized to date on the corresponding projects.

Typically, we include the total value of EPC services and other major construction contracts in project backlog upon receiving a notice to proceed from the project owner. When provided with LNTP, we usually record only the value of the contract related to the LNTP initially. Nevertheless, the inclusion of contract values in project backlog may require management judgement based on the facts and circumstances.

We are committed to the construction of state-of-the-art, natural gas-fired power plants, as important elements of our country’s electricity-generation mix now and in the future. This represents our core business. In addition, we have been directing meaningful business development efforts to winning projects for the erection of utility-scale solar fields and wind farms and for the construction of hydrogen-based energy and other industrial projects in order to diversify the sources of revenues. We have successfully completed alternative energy projects in the past and we have renewed efforts to obtain new work in other sectors of the power market that will complement our natural gas-fired EPC services projects going forward.

It is important to note that the start of new projects is primarily controlled by project owners and that delays may occur that are beyond our control. However, we continue to pursue natural gas-fired power plant, renewable energy plant and industrial construction opportunities in the U.S., Ireland and the U.K. Our vision is to safely contribute to the construction of the energy infrastructure and state-of-the-art industrial facilities that are essential to future economic prosperity in the areas where we operate. We intend to realize this vision with motivated, creative, high-energy and customer-driven teams that are committed to delivering the best possible project results each and every time.

Trumbull Energy Center

In October 2022, GPS added to project backlog the EPC services contract value of the Trumbull Energy Center, a 950 MW natural gas-fired power plant now under construction in Lordstown, Ohio (the “Trumbull Energy Center”). We received the full notice to proceed from the project owner, Clean Energy Future-Trumbull, LLC, in November 2022. This combined cycle power station will consist of two Siemens Energy SGT6-8000H gas-fired, high efficiency, combustion turbines with two heat recovery steam generators and a single steam turbine. Project completion is scheduled for early in the year ending January 31, 2027.

Guernsey Power Station

In January 2019, GPS entered into an EPC services contract to construct an 1,875 MW natural gas-fired power plant in Guernsey County, Ohio (the “Guernsey Power Station”). Caithness Energy, L.L.C. (“Caithness”) led the development of

- 30 -

this project. Using state-of-the-art combined cycle technology and an air-cooling system, the Guernsey Power Station will be a cost-efficient, fuel-efficient, electricity generating power plant that protects air quality and conserves water with the capability to satisfy the electricity needs of approximately one million homes.

The combined cycle design of this plant utilizes three power trains, with each one including a gas-fired turbine, a heat recovery steam generator and a steam turbine, that will enable this plant to generate significantly more power from the equivalent amount of fuel than a traditional gas-fired power plant. The Guernsey Power Station also uses dry cooling technology to reduce water usage by as much as 95% compared with a water-cooled power plant. Because of its advanced design, the power plant will achieve extremely low emission levels from a gas-fired power plant of its type.

After receiving a full notice-to-proceed, GPS commenced substantial activities for this project in August 2019, which remains the largest, single-phase, gas-fired, power plant construction project in the U.S. Completion of construction activities on this project occurred during Fiscal 2024, and as of January 31, 2024, a nominal amount related to this effort remains in project backlog.

It should be noted that this major project, the largest in the history of GPS, was substantially executed during the worst phases of the COVID-19 epidemic and the most severe global impacts of the recent overall supply chain disruptions. Yet, the completed plant was delivered successfully to the project owner.

Midwest Solar and Battery Projects

In August 2023, GPS executed LNTPs with a customer for three solar and battery projects in Illinois (the “Midwest Solar and Battery Projects”). Under the LNTPs, GPS commenced early engineering and design activities as well as procurement of major equipment for construction of state-of-the-art solar energy and battery energy storage facilities. In January 2024, GPS received full notices to proceed on two of the solar and battery projects. The three projects will cumulatively represent 160 MW of electrical power and 22 MW of energy storage.

Maple Hill Solar Facility

In May 2021, we announced that GPS entered into an EPC services contract with CPV Maple Hill Solar, LLC, an affiliate of Competitive Power Ventures, Inc. (“CPV”), to construct the Maple Hill Solar facility, which is among the largest solar-powered energy plants in Pennsylvania. The unique Maple Hill Solar project, which is located in Cambria County, includes over 235,000 photovoltaic modules for the generation of up to approximately 100 MW of electrical power. Final completion of the project and site demobilization occurred near the end of Fiscal 2024, and as of January 31, 2024, no amount related to Maple Hill remained in project backlog.

Shannonbridge Power Project

APC entered into an EPC services contract with GE Vernova for the construction and commissioning of an open-cycle thermal power facility in County Offaly, Ireland, that will have the capacity to generate approximately 264 MW of temporary emergency electrical power (the “Shannonbridge Power Project”). The Shannonbridge Power Project, an initiative of EirGrid and the Electricity Supply Board of Ireland (the “ESB”), aims to enhance the region’s power infrastructure and to ensure a reliable electricity supply during critical situations and emergencies. GPS is teaming with APC in performance of this contract. Work on this project commenced early in Fiscal 2024 pursuant to the receipt of a series of LNTPs. In August 2023, APC received the full notice to proceed on this project. Project completion is expected in the first half of the fiscal year ending January 31, 2025 (“Fiscal 2025”).

ESB FlexGen Peaker Plants

In May 2022, APC entered into engineering and construction services contracts with the ESB to construct three 65 MW aero-derivative gas turbine flexible generation power plants in and around the city of Dublin, Ireland (“ESB FlexGen Peaker Plants”). Two of the power plants, the Poolbeg and Ringsend FlexGen Power Plants, are located on the Poolbeg Peninsula, and the Corduff FlexGen Power Plant is located in nearby Goddamendy. All three projects cleared the applicable capacity auction in Fiscal 2023 and are expected to operate intermittently during peak periods of electricity demand and as back-up supply options when renewable electricity generation is limited. The completion of each power facility is expected to occur in early Fiscal 2025.

- 31 -

Kilroot Power Station

In October 2021, APC was contracted to construct a 2 x 330 MW natural gas-fired power plant in Carrickfergus that is near Belfast, Northern Ireland, in an existing structure that was initially designed to enclose coal-fired units (the “Kilroot Power Station” or the “Kilroot” project). See “The Kilroot Project Loss” below for discussion of the challenges related to this project and the loss recorded in Fiscal 2024 related to this project.

TRC Project Backlog

As of January 31, 2024, TRC’s project backlog was approximately $127.5 million, slightly up from $123.5 million on January 31, 2023, demonstrating the ability to maintain and increase project backlog despite converting a significant amount of previous project backlog into revenues, which increased by approximately 53.9% in Fiscal 2024 as compared to Fiscal 2023. This consistency is a result of targeted efforts to win larger industrial field service construction projects from both new and recurring clients. Following this strategic direction, TRC has streamlined by consolidating its pipe and vessel fabrication facilities, aiming to lower fixed costs and enhance operations for a scalable business model amidst growing construction demands.

Project Backlog Subsequent to Year-end

Since January 31, 2024, we have added to our project backlog as a result of GPS and TRC entering into several contract agreements, including certain LNTPs with several customers that support large solar and battery facilities and a planned natural gas-fired power plant, and service agreements for other power and industrial facilities.

The Kilroot Project Loss

There have been a number of challenges related to the Kilroot project that have adversely impacted our ability to execute as expected, including supply chain delays, material changes to the project, the COVID-19 omicron outbreak, the war in Ukraine and extreme weather. In addition, unresolved variances and claims have disrupted the execution of the project and harmed the cash flow of this project. Unresolved project-related matters continue to meaningfully impact the contract, our costs and the project schedule negatively. During the third quarter of Fiscal 2024, APC’s estimates of the unfavorable financial impacts due to difficulties on the Kilroot project escalated substantially. APC conducted an updated and comprehensive review of the costs of the efforts to complete the remaining contract work and recorded a contract loss. Our accounting reflects that the estimated costs of APC at the completion of the Kilroot project will exceed projected revenues by $10.0 million. The amount of this loss, plus the unfavorable adjustment of estimated gross profit of approximately $3.6 million recognized in the prior fiscal year in connection with the project, was reflected in our operating results for Fiscal 2024.

The project owner has provided notice to us asserting that it is entitled to schedule liquidated damages (the “LDs”). We do not agree with the project owner, who has continued to deny any of our entitlements to an extension of time related to owner delays, force majeure and other events, and we have not recorded any liability related to the LDs. We have identified and/or submitted claims, in excess of the amount of our recorded contract loss and the LDs, that we have not included in contract value at January 31, 2024. APC is continuing all efforts to resolve open variations, claims and an appropriate extension of time to mitigate these losses and improve the final results of the project. APC shall vigorously pursue all of its rights under the contract including through legal means if necessary.

APC has substantially completed the scope of its work and has turned over one of two power units to the owner, with the second power unit expected to be turned over imminently. First fire was achieved for one of the units in March 2024. APC continues to support commissioning efforts and is completing final works and punch list items, which is expected to be finished during the first half of Fiscal 2025. The determination of the amount of the loss identified above includes management’s estimates of the level of effort, and the associated costs, required for APC to complete the project. There can be no assurance that future unanticipated problems on this project will not result in APC incurring costs, that may be meaningful, in excess of those currently estimated for the completion of the contracted work or suffering unfavorable contract variations.

Operating Result Trends

The loss recorded for the Kilroot project in Fiscal 2024 obscured the otherwise strong operating performances of GPS, TRC, SMC and the Irish operations of APC. Consolidated revenues did increase by approximately 26% for Fiscal 2024.

- 32 -

Consolidated gross profit of $80.8 million for Fiscal 2024, however, was directly impacted by the $13.6 million loss recorded for the Kilroot project. As we continue to grow, the mix of our revenues may become more diversified with the addition of lower risk, lower margin projects that would result in lower overall gross margin percentages. However, our gross profit amounts will continue to grow as we reduce the overall risk profile of our project portfolio.  

Market Outlook

Natural Gas Power

The overall growth of our power business has been substantially based on the number of combined cycle gas-fired power plants built by us, as many coal-fired plants have been shut down in the U.S. In 2010, coal-fired power plants accounted for about 45% of net electricity generation in the U.S. For 2023, coal fueled approximately 17% of net electricity generation. It has been reported that the average age of the active plants in the coal-fired fleet approximates 45 years old with an average life span of 50 years; the last coal-fired power plant built in the U.S. was constructed in 2015. On the other hand, natural-gas fired power plants provided approximately 42% of the electricity generated by utility-scale power plants in the U.S. in 2023, representing an increase of 70% in the amount of electrical power generated by natural gas-fired power plants, which provided approximately 24% of net electricity generation for 2010.

In the reference case of its most recently published Annual Energy Outlook released in March 2023, the EIA projects that economic growth paired with increasing electrification in end-user sectors will result in notable growth of electricity demand in the U.S. through 2050. Declining capital costs for solar panels, wind turbines and battery storage, as well as government subsidies like those included in the Inflation Reduction Act of 2022 (the “IRA”), will result in renewables becoming increasingly cost effective compared with the alternatives when the costs of building new power capacity are considered. Renewables are increasingly meeting power demand through 2050 as they become more competitive with natural gas, coal and nuclear power. As a result of the renewables growth, U.S. coal-fired generation capacity is forecasted to decline sharply to represent approximately 8% of net electricity generation for 2030, with a gradual decline thereafter.

The historic decline in the use of coal as a power source in the U.S. was caused, to a significant extent, by the plentiful supply of domestic and generally inexpensive natural gas which made it the fuel of choice for power plant developers over this period. The pace of the historic increase in the preference for natural gas as an electricity generating fuel source also was energized, in part, by environmental activism and restrictive regulations targeting coal-fired power plants.

However, the headwinds confronting a significant resurgence in the pace of planning new developments of gas-fired power plants are strong. The environmentalist opposition against coal-fired power generation expanded meaningfully to target all fossil fuel energy projects, including both power plants and pipelines, and evolved into powerful support for renewable energy sources. Various cities, counties and states have adopted clean energy and carbon-free goals or objectives with achievement expected by a certain future date, typically 10 to 30 years out. These aspirational goals may increase the risk of a new power plant becoming a stranded asset long before the end of its otherwise useful economic life, a risk that potential equity capital providers may be unwilling to take. The difficulty in obtaining project equity financing and the other factors identified above, may be adversely impacting the planning and initial phases for the construction of new natural gas-fired power plants. Lenders, who have become more wary of funding fossil-fuel ventures as environmental, social and governance ideals influence financing decisions, may be generally unwilling to provide capital for energy projects to increase the domestic production and transmission of oil and natural gas. In addition, insurance underwriters may require oil and gas industry clients to implement plans to reduce methane emissions, that are among the most severe greenhouse gases, and will not provide insurance coverage for oil and gas projects in government-protected conservation areas that do not allow for sustainable use.

Solar and Wind Power

The net amount of electricity generation in the U.S. provided by utility-scale solar photovoltaic and wind facilities continues to rise. Together, such power facilities provided approximately 12%, 13% and 15% of the net amount of electricity generated by utility-scale power facilities in 2021, 2022 and 2023, respectively. EIA projects that new wind and photovoltaic solar capacity will continue to be added to the utility-scale power fleet in the U.S. at a brisk pace substantially attributable to declines in the amount of renewable power plant component and power storage costs, an increase in the scale of energy storage capacity (i.e., battery farms and other energy storage technologies), the availability of valuable tax credits and the overall political commitment to renewable energy.

- 33 -

The surge in renewable energy is propelled by significant factors, including a nearly 90% reduction in solar power costs and a two-thirds decrease in onshore wind costs between 2009 and 2023. These cost reductions, driven by technological advancements, have led to widespread global adoption. The EIA indicated that for 2024, of the approximately 62.8 gigawatts of new utility-scale electric-generating capacity that is planned to be added to U.S. power grids, approximately 71% will come from solar and wind facilities. However, challenges persist, notably in offshore wind sectors facing cost overruns and supply chain issues, resulting in major offshore wind projects being delayed or cancelled.

The Power Grid Transition

Throughout the U.S., the risk of electricity shortages grows as the retirement of traditional power plants outpaces their replacement by renewable energy and battery storage. The strain on power grids mounts as the U.S. makes the historic transition from conventional power plants fueled by coal and natural gas to renewable forms of energy such as solar and wind power. Electric-grid operators are warning that power-generating capacity is struggling to keep up with demand, a gap that could lead to additional rolling blackouts during heat waves or other peak power periods.

The challenge is that solar and wind farms do not produce electricity at all times and they need large batteries to store their output for later use. While large battery storage capacity is under development, regional grid operators have warned that the pace may not be fast enough to offset the closures of traditional power plants that can work around the clock.

PJM published a study in February 2023 that supported the growing concern that the reliability of power grids is being eroded by the rush to renewable power. Its research highlighted three trends that present increasing reliability risks during the transition due to a potential timing mismatch between load growth, resource retirements and the pace of new electricity generating plant additions. The study indicates that the growth rate of electricity demand in the PJM footprint is likely to increase from electrification (i.e., shifts to electric-powered automobiles, electric appliances, etc.) coupled with the proliferation of high-demand data centers in the region. Coal-fired and old gas-fired power generation facilities are being retired at a rapid pace, possibly creating the risk that such retirements may outpace the construction of new power-generating facilities as PJM’s interconnection queue includes primarily intermittent and limited-duration renewable energy resources. Given the operating characteristics of these types of facilities, PJM will need multiple megawatts of renewable power and accompanying battery storage, and improvements in the transmission network, to replace a single megawatt of thermal generation.

Accelerating the build-out of renewable energy sources and batteries has become an especially difficult proposition amid supply-chain challenges and inflation. For example, during Fiscal 2023, the highly publicized probe by the U.S. Commerce Department into whether Chinese solar manufacturers were circumventing trade tariffs on solar panels had the effect of halting imports of key components needed to build new solar farms. As a result of this probe, the U.S. determined that certain Chinese solar manufacturers were dodging U.S. tariffs by finishing their products in Cambodia, Malaysia, Thailand and Vietnam, countries that accounted for approximately 80% of solar panel supplies. In August 2023, the U.S. Commerce Department imposed tariffs on solar imports from Southeast Asia. Critics of this action claim that the tariffs will scramble supply chains, delay projects and reduce profits for solar farm developers.

Additionally, solar and wind energy plant developers continue to confront the problems caused by grid congestion, often unsuccessfully. Many of these projects have been canceled because renewable plants need to be sited where the resources are optimal, often in remote locations where the transmission systems are not robust as power is consumed substantially in urban areas. The costs associated with the necessary grid upgrades may be prohibitive.

U.S. offshore wind projects progress inconsistently, facing challenges in the areas of environmental and fishery impacts, grid connection complexities, transmission planning, federal permitting processes and rising interest rates. Further, U.S. projects are confronted by shipping regulations that may limit the ability of developers to replicate successful European erection models. Commitments to sell power at a fixed price in an environment of rising inflation and interest rates have challenged the finances of many offshore wind projects, and as a result several prominent projects have been delayed or cancelled. Proponents of clean energy also face political challenges from constituencies who oppose the impacts to wildlife and the environment that may be caused by clean energy infrastructure projects.

Nuclear Power

Electricity generation from commercial nuclear power plants in the U.S. began in 1958. Over the last several decades, the number of operating nuclear reactors has declined. At the end of August 2023, the U.S. had 93 operating commercial

- 34 -

nuclear reactors at 54 nuclear power plants in 28 states. The average age of these nuclear reactors is approximately 42 years old with most plants authorized to operate for another 20 years. Few nuclear reactors have been constructed in the U.S. over the last several decades. Construction of the Vogtle Units 3 and 4 located in Georgia began in 2009. After lengthy construction delays and billions of dollars of cost overruns, Vogtle Unit 3 commenced commercial operation in August 2023, which marks the first nuclear reactor commissioned in the U.S. since the Tennessee Valley Authority’s Watts Bar 2 in 2016, which was twenty years after the previous one began operation.

Renewed interest in nuclear power could result in the construction of carbon-free, electricity generation stations in the U.S. that would use smaller and more economical nuclear reactors. The deployment of small modular reactors could mean lower construction and electricity costs through the use of simpler power plant designs, standardized components and passive safety measures. Such plants could be built in less time than larger plants, utilize less space and represent a viable choice for reliable power to offset the intermittencies of renewable power sources. The increase by the U.S. in its use of nuclear power for electricity generation could have unfavorable effects on the demand for new natural gas-fired and additional renewable energy facilities in the future, but could provide balance-of-plant construction opportunities for GPS.

Hydrogen Power

It is important to note that the plans for certain natural gas-fired power plant projects include the integration of hydrogen-burning capabilities. While the plants will initially burn natural gas alone, it is planned by the respective project owners that the plants will eventually burn a mixture of natural gas and green hydrogen, thereby establishing power-generation flexibility for these plants. Operational testing of gas turbines fueled with renewable hydrogen have been successful. We believe this pairing is a winning combination that provides inexpensive and efficient power, enhances grid reliability and addresses clean-air concerns. The building of state-of-the-art power plants with flex-fuel capability replaces coal-fired power plants in the short term with relatively clean gas-fired electricity generation. Further, such additions to the power generation fleet provide the potential for the plants to burn 100% green hydrogen gas, which would provide both base load power and long duration back-up power, when the sun is not shining or the wind is not blowing, for extended periods of time and without certain harmful air emissions.

The Regulatory Landscape

We believe that significant uncertainty relates to the policies of the current U.S. presidential administration. President Biden proposes to make the electricity production in the U.S. carbon free by 2035 and to put the country on the path to achieve net zero carbon emissions by 2050.

In August 2022, President Biden signed the IRA, a climate and healthcare bill that funds hundreds of billions of dollars in tax subsidies intended to combat climate change among other measures. According to certain commentary, the legislation will cause investment in technologies needed for leaner production and the use of fuel types, including hydrogen, nuclear, renewables and fossil fuels. However, it appears that receipt of the majority of the tax subsidies will be conditioned on the extent that taxpayers “buy American” and/or pay prevailing wages, among other requirements. Existing supply chains and skilled labor pools may lack the capacity to meet the demand that the incentives are intended to create. Therefore, the subsidies may not provide the intended economic incentives to renewable and other energy project owners.

In May 2023, the Biden administration proposed new rules for the Environmental Protection Agency (the “EPA”) that are intended to drastically reduce greenhouse gases from coal- and gas-fired power plants that officials admit will cost such plants billions of dollars to comply fully by 2042. The proposed rules would give owners of energy plants flexibility in choosing the means to achieve the emission targets. Alternatives could include the installation of carbon-capture systems or the blending of cleaner fuels such as hydrogen. Opponents to the rules posit that the technology needed to meet such emissions targets, particularly for carbon capture and storage as well as hydrogen blending, is not yet commercially available, and as a result, makes compliance uncertain. Additionally, environmental groups and landowners have challenged plans to erect pipelines intended to transfer carbon emissions to storage locations. In March 2024, the EPA signaled it will narrow the scope of the rules by excluding existing natural gas power plants. Final rules are expected in 2024.

In June 2023, President Biden signed the debt ceiling bill which included reforms for certain elements of the permitting process for energy projects. The bill imposes certain timelines for federal agencies to review and to approve elements of major energy projects and includes provisions designating a single agency to take the lead on the environmental review

- 35 -

process. Such streamlining of the current permitting process for energy generating facilities could ease certain constraints on the power industry.  

Capacity Auctions

Most of our recently completed and awarded EPC service contracts relate to the construction of natural gas-fired power plants located within the Mid-Atlantic geographic footprint of PJM, which operates a capacity market to ensure long-term grid reliability by securing the appropriate amount of power supply resources needed to meet predicted future energy demands in its region. Capacity payments represent meaningful portions of the revenue streams of qualifying power plants. Annual capacity auctions since 2021 have suffered delays that, once held, resulted in lower prices than previous auctions. In June 2023, FERC issued an order accepting delays in future capacity auctions so that market design rule changes proposed by stakeholders might be implemented for all future auctions. In January 2024, FERC approved only one component of PJM’s two-part proposal for its capacity auction reform.

Uncertainty in this market, including the difficulties experienced by PJM in implementing a capacity auction design that all of its stakeholders consider to be fair, the repeated capacity auction delays, and the shrinking annual capacity auction prices, may discourage potential power plant owners from commencing the development of new power plants in this area thereby reducing potential new business opportunities for us.

Outlook for Natural Gas-Fired Power Plants

Despite the headwinds, we believe that the lower operating costs of natural gas-fired power plants, the higher energy generating efficiencies of modern gas turbines, and the requirements for grid resiliency should sustain the demand for modern combined cycle and simple cycle gas-fired power plants in the future. Natural gas is relatively clean burning, generally cost-effective, dependable and abundant. New gas-fired power plants incorporate major advances in gas-fired turbine technologies that have provided increased power plant efficiencies while providing the quick starting capabilities and the reliability that are necessary to balance the inherent intermittencies of solar and wind power plants.

We believe that the benefits of natural gas as a source of power are compelling, especially as a complement to the deployment of solar and wind powered energy sources, and that the future long-term prospects for natural gas-fired power plant construction remain generally favorable as natural gas continues to be the primary source for power generation in our country. The future availability of less carbon-intense, higher efficiency and inexpensive natural gas in the U.S. should be a significant factor in the economic assessment of future power generation capacity additions, although the pace of new opportunities emerging may be restrained and the starts of awarded EPC projects may be delayed or cancelled due to the challenges described above.

It has been stated that the scramble for electricity, regardless of source, caused by the Russian invasion of Ukraine clarified that the 100% transition to renewable energy is in the distant future and has prompted, in part, renewed interest in not only carbon capture techniques, but carbon removal technologies as well. Carbon capture processes grab carbon from smokestacks and other sources of dense greenhouse gases, thereby reducing harmful emissions. Carbon-removal technologies are more demanding as they remove carbon out of the more diffuse open air in order to store it for centuries. Governments, including the U.S., are taking initial steps to boost this industry. The success of this industry could reduce the climate-change fear associated with natural gas-fired power plants. We intend to execute an “all-of-the-above” approach in pursuing the construction of future facilities that support the energy transition, which we see as a continuation of our historical commitment to building cleaner energy plants.

International Power Markets

The foregoing discussion in this “Market Outlook” has focused on the state of the domestic power market as the EPC services business of GPS historically provides the predominant portion of our revenues. However, overseas power markets provide important new power construction opportunities for APC especially across Ireland and the U.K.

While both of these countries are committed to the increase in energy consumption sourced from the sun and wind on the pathway to net zero emissions, there is a recognition that these sources of electrical power are inherently variable. Other technologies will be required to support these power sources and to provide electricity when power demands exceed the amount of electricity supplied by these renewables. The existence of the necessary power reserve will require conventional generation sources, typically natural gas-fired power plants in Ireland but including nuclear power in the U.K.

- 36 -

The Irish government has issued a policy statement on the security of the electricity supply in Ireland which confirms the requirement for the development of new support technologies to deliver on its commitment to have 80% of the country’s electricity generated from renewables by 2030. The report emphasizes that this will require a combination of conventional generation (typically powered by natural gas), interconnection to other jurisdictions, demand flexibility and other technologies such as battery storage and generation from renewable gases. The Irish government has approved that the development of new conventional generation (including gas-fired and gasoil distillate-fired generation) is a national priority and should be permitted and supported in order to ensure the security of electricity supply while supporting the growth of renewable electricity generation.

Further, the Irish government recognizes that the successful development of data centers in the country is a key aspect in promoting Ireland as a digital economy hot-spot in Europe. The stewards of the electricity supply in Ireland acknowledge that the large increase in electricity demand presented by the growth of the data center industry represents an evolving, significant risk to the security of the supply. During Fiscal 2023, APC completed a project to install natural gas-fired power generation for a major data center in the Dublin area.

Recently, the government of the U.K. expressed support for new gas-fired power plants to offset the remaining coal-fired plant retirement, the retirement of aging gas plants, and the intermittency of renewable energy plants. Prime Minister Rishi Sunak stated that he would not gamble with energy security despite U.K. plans to decarbonize the power system by 2035. His secretary of state for energy security echoed these sentiments with a speech in which she stated that she expected to warn of blackouts unless there is sufficient gas-fired capacity to provide back-up for intermittent renewables. Her comments also expressed hope that new gas plants will be accompanied with the potential ability to burn 100% hydrogen or be fitted with carbon capture and storage technologies. Of course, the recency of these pronouncements means that it is too soon to expect energy policy shifts or the announcement of plans for specific new gas-fired power plants in the U.K. Further, the outlook for Mr. Sunak’s government is shaky and the opposition party is much more bullish on decarbonization.  

Nonetheless, APC is actively pursuing other new business opportunities in both the renewable and support sectors of power generation with its existing and new clients in both countries. Over the last three years, APC has increased its activities and currently has multiple projects under execution. GPS has been providing top management guidance and project management expertise to APC during this period. APC has also provided experienced resources to GPS on several of its EPC services contracts in the U.S. These recent experiences have demonstrated that the two companies can combine and share resources effectively to leverage capacity and opportunities. We believe that GPS and APC working together is a competitive advantage as we pursue emerging new business opportunities in Ireland and the U.K. GPS is teaming with APC in the performance of the Shannonbridge Power Project.

The EPC Competitive Landscape

We are committed to the rational pursuit of new construction projects, including those with overseas locations and unique deployments of power-generation turbines, and the future growth of our revenues. This may result in additional decisions to make investments in the development and/or ownership of new projects. Because we believe in the strength of our balance sheet, we are willing to consider certain opportunities that include reasonable and manageable risks in order to assure the award of the related EPC or equipment installation services contracts to us.

The competitive landscape for our core EPC services business related to natural gas-fired power plants in the U.S. remains dynamic, although there are fewer competitors for new gas-fired power plant EPC services project opportunities. Several major competitors have exited the market for a variety of reasons or have been acquired. Others have announced intentions to avoid entering into fixed-price contracts. Nonetheless, the competition for new utility-scale gas-fired power plant construction opportunities is fierce and still includes multiple global firms. We believe that the Company has a reputation as an accomplished, dependable and cost-effective provider of EPC and other large project construction contracting services. With the proven ability to deliver completed power facilities, particularly combined cycle, natural gas-fired power plants, we are focused on expanding our position in the power markets of the U.S., Ireland and the U.K. where we expect investments to be made based on forecasts of electricity demand covering decades into the future. We believe that our expectations are valid and that our plans for the future continue to be based on reasonable assumptions.

- 37 -

Industrial Construction Services Outlook

TRC was founded in 1977, initially focused on the fabrication of piping systems and pressure vessels. Prior to our acquisition of TRC in 2015, it expanded its business to include industrial field services with a concentration on turnarounds, outage support, renovations, repairs and maintenance projects. Since the acquisition, TRC has narrowed the focus of its field services to emphasize industrial construction projects. During Fiscal 2023, TRC consolidated its metal fabrication plants and support structures into one industrial fabrication and warehouse facility near Greenville, North Carolina, which is centrally located within its primary geographic market. The consolidation reduced fixed costs and notably streamlined the business, which has permitted TRC to primarily focus on its field service construction opportunities.

Industrial field services typically represent the majority of TRC’s annual revenues with the remaining revenues contributed by projects consisting solely of metal fabrication. Recent and current major customers of TRC include Nutrien Ltd., the global fertilizer company; Jacobs Solutions Inc., an international engineering and construction firm that is building a significant biotechnology manufacturing facility in the research triangle area of North Carolina; and North America’s largest forest products companies such as Weyerhaeuser Company, International Paper and Domtar Corporation; and various other industrial companies. These relationships demonstrate that TRC is a trusted industrial services provider to blue chip customers from around North America, and from countries like France, Germany, Denmark, Japan, Belgium and Australia, that are expanding or locating new production facilities in TRC’s geographic region.

As stated above, the business footprint for TRC encompasses the Southeast region of the U.S. where there are many local and state governments that welcome industrial production facilities with ideal locations and with serious economic development programs and incentives. The national focus on infrastructure improvements, biotechnology advancements, energy storage and clean water have resulted in firms that are focused on these trends recently choosing TRC to participate in major construction projects in the region. Other important factors and trends include low corporate state tax rates, favorable labor migration patterns, the surface transportation infrastructure and the ready access to modern seaports.

Economic data supports our belief that TRC is ideally located in a leading manufacturing growth area of the U.S., which should continue to provide it with project opportunities going forward that will expand its business and industrial construction capabilities. The Dodge Construction Starts report for 2024 forecasts that total construction in the U.S. will increase by 7% in 2024, with a 16% increase in the manufacturing category. The FMI Construction Put-in-Place Forecast for 2024 predicts that construction activity in the manufacturing sector will increase by over 15% in 2024. This data suggests that manufacturing construction will be a robust market as the economy moves into 2024. Despite headwinds such as material price volatility and rising labor costs, skilled labor shortages, high interest rates and tighter lending standards, it is likely that 2024 will see a boost to construction associated with manufacturing, as well as the transportation and clean energy infrastructures, as funds from three key pieces of national legislation passed in 2021 and 2022 are expected to flow into the industry. These bills include the Infrastructure and Jobs Act, the IRA and the Creating Helpful Incentives to Produce Semiconductors Act, and appear to be sustaining high construction industry confidence for 2024 and the future beyond.

For Fiscal 2024, the revenues of TRC increased by approximately 54% to $142.8 million and the project backlog of TRC has grown by over 175% since January 31, 2022 to approximately $127.5 million as of January 31, 2024.

Comparison of the Results of Operations for the Years Ended January 31, 2024 and 2023

We reported net income attributable to our stockholders of $32.4 million, or $2.39 per diluted share, for Fiscal 2024. For the prior fiscal year, we reported net income attributable to our stockholders of $33.1 million, or $2.33 per diluted share. The following schedule compares our operating results for Fiscal 2024 and Fiscal 2023 (dollars in thousands):

- 38 -

Years Ended January 31, 

2024

    

2023

    

$ Change

    

% Change

REVENUES

  

 

  

 

  

 

  

Power industry services

$

416,281

$

346,033

$

70,248

 

20.3

%

Industrial construction services

 

142,801

 

92,774

 

50,027

 

53.9

Telecommunications infrastructure services

 

14,251

 

16,233

 

(1,982)

 

(12.2)

Revenues

 

573,333

 

455,040

 

118,293

 

26.0

COST OF REVENUES

 

  

 

  

 

  

 

  

Power industry services

 

357,705

 

277,402

 

80,303

 

28.9

Industrial construction services

 

124,321

 

78,034

 

46,287

 

59.3

Telecommunications infrastructure services

 

10,473

 

13,243

 

(2,770)

 

(20.9)

Cost of revenues

 

492,499

 

368,679

 

123,820

 

33.6

GROSS PROFIT

 

80,834

 

86,361

 

(5,527)

 

(6.4)

Selling, general and administrative expenses

 

44,376

 

44,692

 

(316)

 

(0.7)

INCOME FROM OPERATIONS

 

36,458

 

41,669

 

(5,211)

 

(12.5)

Other income, net

 

12,475

 

4,331

 

8,144

 

188.0

INCOME BEFORE INCOME TAXES

 

48,933

 

46,000

 

2,933

 

6.4

Income tax expense

 

16,575

 

11,296

 

5,279

 

46.7

NET INCOME

 

32,358

 

34,704

 

(2,346)

 

(6.8)

Net income attributable to non-controlling interest

 

 

1,606

 

(1,606)

 

(100.0)

NET INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC.

$

32,358

$

33,098

$

(740)

 

(2.2)

%

Revenues

Power Industry Services

The revenues of the power industry services business increased by 20.3%, or $70.3 million, to $416.3 million for Fiscal 2024 compared with revenues of $346.0 million for Fiscal 2023, as the current year construction activities increased for the Trumbull Energy Center, the Shannonbridge Power Project, the ESB FlexGen Peaker Plants and the Midwest Solar and Battery Projects. The increase in revenues between years was partially offset by decreased construction activities associated with the Guernsey Power Station project, the Maple Hill Solar Facility and the Equinix data center project, as those projects are generally near or at completion. The revenues of this business represented approximately 72.6% of consolidated revenues for Fiscal 2024 and 76.0% of consolidated revenues for the prior year. The project backlog amounts for the power industry services reportable segment as of January 31, 2024 and 2023 were $0.6 billion and $0.7 billion, respectively.

Industrial Construction Services

The revenues of industrial construction services increased by $50.0 million, or 53.9%, to $142.8 million for Fiscal 2024 compared with revenues of $92.8 million for Fiscal 2023. The revenues of this business represented approximately 24.9% of consolidated revenues for Fiscal 2024 and 20.4% of consolidated revenues for the prior fiscal year. The strategy to focus on larger field projects, coupled with the consolidation of the two fabrication facilities during Fiscal 2023, enhanced leadership and a positive regional business environment has resulted in increased revenues and the ability to maintain project backlog at $127.5 million as of January 31, 2024 as compared to $123.5 million as of January 31, 2023.

Telecommunications Infrastructure Services

The revenues of telecommunications infrastructure services were $14.3 million for Fiscal 2024 compared with revenues of $16.2 million for Fiscal 2023.

Cost of Revenues

Due primarily to the increase in consolidated revenues for Fiscal 2024 compared with revenues for Fiscal 2023, consolidated cost of revenues also increased. These costs were $492.5 million and $368.7 million for Fiscal 2024 and Fiscal 2023, respectively.

- 39 -

For Fiscal 2024, we reported a consolidated gross profit of approximately $80.8 million, which represented a gross profit percentage of approximately 14.1% of corresponding consolidated revenues. Consolidated gross profit was adversely impacted by the $13.6 million loss recorded for the Kilroot Power Station project in the current fiscal year. However, the effect of the contract loss was meaningfully offset by the profits earned on the performance of other projects by each of our four operating companies, including APC.

The gross profit for the period reflected primarily the profit contributions of efficient construction activities related to the major projects of the power industry services reporting segment, which was adversely impacted by the loss recorded in Fiscal 2024 related to the Kilroot Power Station. The gross profit percentages of corresponding revenues for the power industry services, industrial construction services and telecommunications infrastructure services segments for Fiscal 2024 were 14.1%, 12.9% and 26.5%, respectively.

For Fiscal 2023, we reported a consolidated gross profit of approximately $86.4 million, which represented a gross profit percentage of approximately 19.0% of corresponding consolidated revenues. The gross profit percentages of corresponding revenues for the power industry services, industrial construction services and telecommunications infrastructure services segments for Fiscal 2023 were 19.8%, 15.9% and 18.4%, respectively.

Selling, General and Administrative Expenses

Selling, general and administrative expenses were $44.4 million and $44.7 million for Fiscal 2024 and Fiscal 2023, respectively, representing 7.7% and 9.8% of consolidated revenues for the corresponding periods, respectively.

Other Income, Net

For Fiscal 2024 and Fiscal 2023, the net amounts of other income were $12.5 million and $4.3 million, respectively, which represented an increase of 188.0% between the comparable periods. For Fiscal 2024 and Fiscal 2023, this line item included income in the amounts of $14.1 million and $3.4 million, respectively, earned on invested funds, as investment yields and average balances of invested funds have increased meaningfully between periods. Offsetting the increase of other income between periods is the wire-transfer fraud loss of $3.0 million that occurred in the first quarter of Fiscal 2024, of which $0.5 million in funds were recovered through legal efforts and insurance proceeds (see Note 18 to the accompanying consolidated financial statements). This line item also includes our share of the net income reported from our solar tax credit investments in the amount of $1.1 million for Fiscal 2023, with the corresponding amount for Fiscal 2024 being insignificant (see Note 12 to the accompanying consolidated financial statements).

Income Tax Expense

We recorded income tax expense for Fiscal 2024 in the net amount of approximately $16.6 million primarily due to our reporting pre-tax income for financial reporting purposes in the amount of $48.9 million for the year. Our annual effective income tax rate for Fiscal 2024 was 33.9%. This tax rate differed from the statutory federal tax rate of 21% due to various factors with unfavorable income tax effects. Most significantly, the net operating loss of APC’s subsidiary in the U.K., where the loss on the Kilroot Power Station project was recorded, was not tax effected with benefit. In addition, the actual effective tax rate reflected the effect of state income taxes, and the unfavorable effects of several nondeductible expense amounts, including certain executive compensation, meals, and other travel expenses, and an unfavorable adjustment to deferred taxes by APC. Partially offsetting these unfavorable effects were the foreign tax rate differential, which lowered the overall effective tax rate and the investment tax credit effect recorded in Fiscal 2024 related to our solar fund investments.

We recorded income tax expense for Fiscal 2023 in the net amount of approximately $11.3 million primarily due to our reporting pre-tax income for financial reporting purposes in the amount of $46.0 million for the year. Our annual effective income tax rate for Fiscal 2023 was 24.6%. This tax rate differed from the statutory federal tax rate of 21% due primarily to the effects of state income taxes, nondeductible executive compensation and the unfavorable effects of our settlement with the IRS related to research and development credits at an amount lower than we had previously recorded, partially offset by the favorable recognition of tax benefits related to research and development tax credits recognized in the current year and favorable deferred tax adjustments. See Note 12 to the accompanying consolidated financial statements.

- 40 -

Net Income Attributable to Non-Controlling Interest

As discussed above, we recorded a gain of $1.6 million related to the VIE settling on amounts owed for certain previously impaired development costs during Fiscal 2023, which was attributed to non-controlling interest. See Note 15 to the accompanying consolidated financial statements.

Liquidity and Capital Resources as of January 31, 2024

At January 31, 2024 and 2023, our balances of cash and cash equivalents were $197.0 million and $173.9 million, respectively, which represented an increase of $23.1 million between years.

The net amount of cash provided by operating activities for Fiscal 2024 was $116.9 million. Our net income for Fiscal 2024, adjusted favorably by the net amount of non-cash income and expense items, represented a source of cash in the total amount of $38.9 million. The increase in the balance of contract liabilities in the amount of $84.8 million represented a source of cash during the year as net billings were received in advance of the satisfaction of performance obligations on certain of our contracts. These favorable balance sheet account changes primarily related to the increases in contract liabilities for the Trumbull Energy Center and the Shannonbridge Power Project, partially offset by decreases in contract liabilities related to the Kilroot Power Station and the ESB FlexGen Peaker Plants. Additionally, the increase in the combined level of accounts payable and accrued expenses in the amount of $14.8 million represented a source of cash for the year. The decrease in accounts receivable in the amount of $2.8 million also represented a source of cash for the year. The increases in the balances of contract assets and prepaid expenses and other assets in the amounts of $23.4 million and $1.0 million, respectively, represented uses of cash during the year.

During Fiscal 2024, our primary source of cash from investing activities was the net maturities of CDs issued by the Bank, in the amount of $44.8 million. We used $104.5 million to invest in available-for-sale securities, consisting of U.S. Treasury notes and a U.S. corporate debt security. We also used $2.8 million to make capital expenditures, and we made a cash investment of $5.1 million in a solar tax credit entity during the year.

We used $26.1 million cash in financing activities during Fiscal 2024, including $12.5 million used to repurchase shares of common stock pursuant to our Share Repurchase Plan and $14.7 million used for the payment of regular cash dividends. Lastly, during Fiscal 2024, we received net $1.1 million of proceeds from the settlement of share-based awards. As of January 31, 2024, there were no restrictions with respect to intercompany payments between GPS, TRC, APC, SMC and the holding company.

During Fiscal 2023, our balance of cash and cash equivalents declined by a net amount of $176.6 million.

The net amount of cash used in operating activities for Fiscal 2023 was $30.1 million. However, our net income for Fiscal 2023, adjusted favorably by the net amount of non-cash income and expense items, represented a source of cash in the total amount of $39.0 million. The increases in accounts receivable, contract assets and other assets in the amounts of $23.2 million, $19.9 million and $3.3 million, respectively, represented uses of cash during Fiscal 2023. Additionally, the reduction in the balance of contract liabilities in the amount of $31.6 million represented a use of cash during Fiscal 2023 to fund, on a net basis, the satisfaction of performance obligations on certain of our contracts. These unfavorable balance sheet account changes primarily related to the decline in the construction activity of the Guernsey Power Station project, partially offset by increases in contract liabilities related to the Trumbull Energy Center and several APC projects. The increase in the combined level of accounts payable and accrued expenses in the amount of $9.1 million, represented a source of cash for Fiscal 2023.

Non-operating activities during Fiscal 2023 used cash to increase the level of our short-term investments, which consisted entirely of CDs issued by the Bank, by $59.8 million and to make capital expenditures in the amount of $3.4 million. We also used $82.8 million cash in financing activities during Fiscal 2023, including $68.2 million used to repurchase shares of common stock pursuant to our Share Repurchase Plan, and $14.0 million used for the payment of regular cash dividends.

At January 31, 2024, a portion of our balance of cash and cash equivalents was invested in a money market fund with most of its net assets invested in cash, U.S. Treasury obligations, other obligations issued by U.S. Government agencies and sponsored enterprises, and repurchase agreements secured by U.S. government obligations. The major portion of our domestic operating bank account balances are maintained with the Bank. We do maintain certain Euro-based bank accounts in Ireland and certain pound sterling-based bank accounts in the U.K. in support of the operations of APC.

- 41 -

In order to monitor the actual and necessary levels of liquidity for our business, we focus on working capital, or net liquidity, in addition to our cash balances. Our net liquidity increased by $8.7 million to $244.9 million as of January 31, 2024 from $236.2 million as of January 31, 2023, due primarily to our net income for the fiscal year, partially offset by common stock repurchases and the payment of cash dividends. As we have no debt service, as our fixed asset acquisitions in a reporting period are typically low, and as our net liquidity includes our short-term investments and available-for-sale investments, our levels of working capital are not subjected to the volatility that affects our levels of cash and cash equivalents.

During April 2021, we amended our Credit Agreement with the Bank which extended its expiration date to May 31, 2024 and reduced the borrowing rate. On March 6, 2023, we entered into the Second Amendment to the Credit Agreement. The Second Amendment modified the Credit Agreement primarily to replace the interest pricing with a rate of SOFR plus 1.6% and add SOFR successor rate language. The Credit Agreement, as amended, includes the following features, among others: a lending commitment of $50.0 million including a revolving loan and an accordion feature which allows for an additional commitment amount of $10.0 million, subject to certain conditions. Additionally, the Credit Agreement, as amended, continues to include customary terms, covenants and events of default for a credit facility of its size and nature. Prior to the expiration of the current term of the Credit Agreement, we expect to reach agreement with the Bank to amend and extend it.

We may also use the borrowing ability to cover other credit instruments issued by the Bank for our use in the ordinary course of business as defined by the Bank. At January 31, 2024, we had no outstanding borrowings, but the Bank has issued a letter of credit in the total outstanding amount of $9.3 million related to the Kilroot project of APC discussed above.

We have pledged the majority of our assets to secure the financing arrangements. The Bank’s consent is not required for acquisitions, divestitures, cash dividends or significant investments as long as certain conditions are met. The Credit Agreement, as amended, requires that we comply with certain financial covenants at our fiscal year-end and at each fiscal quarter-end, and includes other terms, covenants and events of default that are customary for a credit facility of its size and nature, including a requirement to achieve positive adjusted earnings before interest, taxes, depreciation and amortization, as defined, over each rolling twelve-month measurement period. At January 31, 2024, we were compliant with the covenants of the Credit Agreement, as amended.

In the normal course of business and for certain major projects, we may be required to obtain surety or performance bonding, to provide parent company guarantees, or to cause the issuance of letters of credit (or some combination thereof) in order to provide performance assurances to clients on behalf of one of our subsidiaries.

If our services under a guaranteed project would not be completed or would be determined to have resulted in a material defect or other material deficiency, then we could be responsible for monetary damages or other legal remedies. As is typically required by any surety bond, we would be obligated to reimburse the issuer of any surety bond provided on behalf of a subsidiary for any cash payments made thereunder. The commitments under performance bonds generally end concurrently with the expiration of the related contractual obligation. Not all of our projects require bonding.

As of January 31, 2024 and 2023, the estimated amounts of our unsatisfied bonded performance obligations, covering all of its subsidiaries, were approximately $0.5 billion and $0.6 billion, respectively. In addition, as of January 31, 2024 and 2023, the outstanding amounts of bonds covering other risks, including warranty obligations related to completed activities, were not material.

We have also provided a financial guarantee up to $3.6 million to support certain project developmental efforts. Any estimated loss related to this guarantee was recorded during Fiscal 2022.

When sufficient information about claims related to performance on projects would be available and monetary damages or other costs or losses would be determined to be probable, we would record such losses. As our subsidiaries are wholly-owned, any actual liability related to contract performance is ordinarily reflected in the financial statement account balances determined pursuant to the Company’s accounting for contracts with customers. Any amounts that we may be required to pay in excess of the estimated costs to complete contracts in progress as of January 31, 2024 are not estimable.

In prior years, we made investments in limited liability companies that make equity investments in solar energy projects that are eligible to receive energy tax credits, for which we have received substantially all of the income tax benefits

- 42 -

associated with those investments. In Fiscal 2024, we made an investment of approximately $5.1 million cash in a solar tax credit entity, and as of January 31, 2024, we have $3.3 million remaining of cash investment commitments related to this solar fund, which we expect to make during Fiscal 2025. It is likely that we will evaluate opportunities to make other solar energy investments of this type in the future.

We believe that cash on hand, our cash equivalents, cash that will be provided from the maturities of short-term investments and other debt securities and cash generated from our future operations, with or without funds available under our Credit Agreement, will be adequate to meet our general business needs in the foreseeable future. In general, we maintain significant liquid capital in our consolidated balance sheet to ensure the maintenance of our bonding capacity and to provide parent company performance guarantees for EPC and other construction projects.

However, any significant future acquisition, investment or other unplanned cost or cash requirement, may require us to raise additional funds through the issuance of debt and/or equity securities. There can be no assurance that such financing will be available on terms acceptable to us, or at all.

Contractual Obligations

During Fiscal 2024, there was no significant change in the nature or amounts of our contractual obligations. We estimate that the balance of such contractual obligations as of January 31, 2024 was less than $20.0 million. The two largest items in this estimate, operating leases and deferred compensation, are amounts included as liabilities in our consolidated balance sheet. The remainder of such obligations relate primarily to open service arrangements. Outstanding commitments represented by open purchase orders and subcontracts related to our construction contracts have not been included in the estimated amounts of contractual obligations as such amounts are expected to be funded through contract billings to customers. We do not have any significant obligations for materials or subcontracted services beyond those required to complete construction contracts awarded to us.  

Special Purpose Entities

As is common in our industry, EPC contractors and third parties form joint ventures, limited partnerships and limited liability companies for purposes of executing a project or program for a project owner. These teaming arrangements are typically dissolved upon completion of the project or program.

In addition, we may obtain interests in VIEs formed by its owners for a specific purpose. The evaluation of whether such interests represent our financial control of a VIE requires analysis and judgement. In January 2018, we concluded that we were the primary beneficiary of a VIE formed by an independent firm for the purpose of developing a natural gas-fired power plant in Virginia. As a result, the VIE was included in our consolidated financial statements until the fourth quarter of Fiscal 2023, when we determined that we were no longer the primary beneficiary and we deconsolidated the entity. During Fiscal 2022, as described in Note 15 to the accompanying consolidated financial statements, we recorded an impairment loss related to the development costs associated with the project in the amount of $7.9 million, of which $2.5 million was attributed to the non-controlling interest. In Fiscal 2023, prior to deconsolidation, the VIE settled on amounts owed for certain impaired development costs and recognized a gain of $1.6 million, all of which was attributed to the non-controlling interest.

We have entered into similar support arrangements with other independent parties in the past that resulted in the successful development and our construction of three separate gas-fired power plant projects. We were paid project development fees for each project and our loans to the development entities were repaid in full plus interest. In each of these cases, we deconsolidated the corresponding VIE when we were no longer the primary beneficiary.

We may enter into other support arrangements in the future in connection with power plant development opportunities when they arise and when we are confident that providing early financial support for the projects will lead to the award of the corresponding EPC contracts to us.

Earnings before Interest, Taxes, Depreciation and Amortization (“EBITDA”)

We believe that EBITDA is a meaningful presentation that enables us to assess and compare our operating performance on a consistent basis by removing from our operating results the impacts of our capital structure, the effects of the accounting methods used to compute depreciation and amortization and the effects of operating in different income tax jurisdictions. Further, we believe that EBITDA is widely used by investors and analysts as a measure of performance.

- 43 -

However, as EBITDA is not a measure of performance calculated in accordance with U.S. GAAP, we do not believe that this measure should be considered in isolation from, or as a substitute for, the results of our operations presented in accordance with U.S. GAAP that are included in our consolidated financial statements. In addition, our EBITDA does not necessarily represent funds available for discretionary use and is not necessarily a measure of our ability to fund our cash needs.

The following table presents the determinations of EBITDA for Fiscal 2024 and Fiscal 2023, respectively (amounts in thousands).

2024

    

2023

Net income, as reported

$

32,358

$

34,704

Income tax expense

 

16,575

 

11,296

Depreciation

 

2,013

 

2,983

Amortization of intangible assets

 

392

 

732

EBITDA

51,338

49,715

EBITDA of non-controlling interest

1,606

EBITDA attributable to the stockholders of Argan, Inc.

$

51,338

$

48,109

Critical Accounting Policies

Critical accounting policies are those related to the areas where we have made what we consider to be particularly subjective or complex judgments in arriving at estimates and where these estimates can significantly impact our financial results under different assumptions and conditions.

These estimates, judgments, and assumptions affect the reported amounts of assets, liabilities and equity, the disclosure of contingent assets and liabilities at the date of financial statements and the reported amounts of revenues and expenses during the reporting periods. We base our estimates on historical experience and various other assumptions that we believe are reasonable under the circumstances, the results of which form the basis for making judgments about the carrying value of assets, liabilities and equity that are not readily apparent from other sources. Actual results and outcomes could differ from these estimates and assumptions. We do periodically review these critical accounting policies and estimates with the audit committee of our board of directors.

We consider the accounting policies related to revenue recognition on long-term construction contracts and income tax reporting to be most critical to the understanding of our financial position and results of operations.

Revenue Recognition

Our revenues are primarily derived from construction contracts that can span several quarters or years. We enter into EPC and other long-term construction contracts principally on the basis of competitive bids or in conjunction with our support of the development of power plant projects. The types of contracts may vary. However, the EPC contracts of our power industry services reporting segment, and most other large contracts awarded to our other companies, are fixed-price contracts. Revenues are recognized primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer. The accuracy of our revenues and profit recognition in a given period depends on the accuracy of our estimates of the forecasted contract value, or transaction price, and the cost to complete the work for each project.

Central to accounting for revenues from contracts with customers is a five-step revenue recognition model that requires reporting entities to:

1.Identify the contract,
2.Identify the performance obligations of the contract,
3.Determine the transaction price of the contract,
4.Allocate the transaction price to the performance obligations, and
5.Recognize revenue.

The guidance focuses on the transfer of the control of the goods and/or services to the customer, as opposed to the transfer of risk and rewards. Major provisions cover the determination of which goods and services are distinct and represent

- 44 -

separate performance obligations, the appropriate treatment of variable consideration, and the evaluation of whether revenues should be recognized at a point in time or over time. In general, application of the rules requires us to make important judgements and meaningful estimates that may have significant impact on the amounts of revenues recognized by us for any reporting period.

Revenues from fixed price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. The cost and profit estimates are re-forecasted monthly for all significant contracts pursuant to a detailed determination and review process. The results of the process are subjected to reviews by senior management with the applicable project management personnel at each subsidiary. The intensity of the reviews may vary between projects depending on the percentage-of-completion for the projects, among other factors. The cost-to-cost method measures the ratio of costs incurred and accrued to date for each contract to the estimated, or forecasted, total cost for each contract at completion. This requires us to prepare on-going estimates of the forecasted cost to complete each contract as the project progresses. In preparing these estimates, we make significant judgments and assumptions about our significant costs, including materials, labor and equipment, and we evaluate contingencies based on possible schedule variances, major equipment delivery delays, construction delays, weather or other productivity factors.

Actual costs may vary from the costs we estimate. Variations from estimated contract costs, along with other risks inherent in fixed-price contracts, may result in actual revenues and gross profits differing from those we estimate and could result in losses on projects or other significant unfavorable impacts on our operating results for any fiscal quarter or year. If a current estimate of total contract cost indicates a loss on a contract, the projected loss is recognized in full when determined, without regard to the percentage of completion. There are a number of factors that can contribute to changes in estimated contract costs, revenues and profitability. The most significant of these are identified in the first item included in the Risks Related to our Operational Execution section of Part I, Item 1A. of this Annual Report entitled Risk Factors.

Crucial to the compliance with the accounting standard covering the recognition of revenues on contracts with customers is the identification of the promises made to the customer by us that are included in the contract. If a promise is distinct, as that concept is defined in the accounting standard, it represents a separate performance obligation. Contracts may have multiple promises. The amounts of revenue associated with each promise are recognized when, or as, the performance obligations are satisfied. However, complex contracts may include only one performance obligation if the multiple promises are not distinct within the context of the contract. For example, if the promises that could be considered distinct are interrelated or require us to perform integration so that the customer receives a complete product, the contract is considered to include only one performance obligation. Most of our long-term contracts have a single performance obligation as the promises to transfer individual goods or services are not separately identifiable from other promises within the context of the contract. Our EPC contracts require us to deliver a complete and functioning power plant, not just functioning components.

The transaction price of a contract represents the value used to determine the amount of revenues recognized as of the balance sheet date. It may reflect amounts of variable consideration, which could be either increases or decreases to the transaction price. These adjustments can be made from time-to-time during the period of contract performance as circumstances evolve related to such items as variations in the scope and price of contracts, claims, incentives and liquidated damages.

We may include an estimated amount of variable consideration in the transaction price to the extent it is probable that a significant reversal of cumulative revenues recognized on the particular contract will not occur when the uncertainty associated with the variable consideration is resolved. The Company’s determination of the amount of variable consideration to be included in the transaction price of a particular contract is based largely on an assessment of the Company’s anticipated performance and all information (historical, current and forecasted) that is reasonably available. The effect of any revisions to the transaction price on the amount of previously recognized revenues that is due to the addition or reduction of variable consideration is recorded currently as an adjustment to revenues on a cumulative catch-up basis. In the event that any amounts of variable consideration that are reflected in the transaction price of a contract are not resolved in the Company’s favor, there could be reductions in, or reversals of, previously recognized revenues. In most significant instances, modifications to our contracts do not represent the addition of new performance obligations.

Contract results may be impacted by estimates of the amounts of contract variations that we expect to receive. The effects of any resulting revisions to revenues and estimated costs can be determined at any time and they could be material. As of

- 45 -

January 31, 2024 and 2023, the aggregate amounts of contract variations reflected in estimated transaction prices that were pending customer approval were $8.4 million and $11.6 million, respectively.

Substantially all of our customer contracts include the right for customers to terminate contracts for convenience as disclosed in Note 2 to the consolidated financial statements. The value of future work that companies are contractually obligated to perform pursuant to active customer contracts should not be included in the disclosure of remaining unsatisfied performance obligations when the corresponding contracts include termination for convenience clauses without substantial penalties accruing to the customers upon such terminations. In the application of this guidance, we assess whether the nature of the work being performed under contract is largely service-based and repetitive and should be considered a succession of one-month contracts for the duration of the identified term of the contract. Predominantly, our customers contract with us to construct assets, to fabricate materials or to perform emergency maintenance or outage services where we believe a substantial penalty or cost would be incurred upon a termination for convenience. We believe that in substantially all cases, there would be substantial costs incurred by a customer if it terminated a contract with us for convenience including the costs of terminating subcontracts, canceling purchase orders and returning or otherwise disposing of delivered materials and equipment. Further, to the best of management’s knowledge, the Company has never had a customer terminate a material contract with us for convenience. Therefore, our disclosure in Note 2 of the value of remaining unsatisfied performance obligations on active customer contracts represents an amount based on contracts or orders received from customers that the Company believes are firm and where the parties are acting in accordance with their respective obligations.    

Our long-term contracts typically have schedule dates and other performance obligations that, if not achieved, could subject us to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by achievement of a specified level of output or efficiency. Each contract defines the conditions under which a project owner may make a claim for liquidated damages. The amounts of liquidated damages owed to a project owner pursuant to the terms of a contract would represent reductions of the transaction price of the corresponding contract.

At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted, from the transaction price as the Company believes that it has included activities in its contract plan, and has reflected the associated costs in its forecasts of completed contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. In general, we consider potential liquidated damages, the costs of other related items and potential mitigating factors in determining the estimates of forecasted revenues and the adequacy of our estimates of the cost to complete contracts.

Uncertain Income Tax Positions

As we have disclosed in the “Research and Development Tax Credits” section of Note 12 to the accompanying consolidated financial statements, during Fiscal 2019, we completed a detailed review of the activities of our engineering staff on major EPC services projects in order to identify and quantify the amounts of research and development credits available to reduce prior year income taxes. This extensive study focused on the costs incurred on specific projects during the three-year period ended January 31, 2018. Based on the results of the study, we identified and estimated significant amounts of income tax benefits that were not previously recognized in our financial results for any prior year reporting period.

Under current professional accounting guidance, income tax positions must meet a more-likely-than-not recognition threshold to be recognized. Income tax positions that previously failed to meet the more-likely-than-not threshold are recognized in the first subsequent financial reporting period in which that threshold is met. Fiscal 2019 was the initial reporting period in which we had sufficient data on which to make an evaluation and to reach a conclusion on the amount of income tax credit benefits related to prior year project costs that, more likely than not, qualified as research and development costs under the Internal Revenue Code and the rules and regulations of certain states. The net amount of the credits that we recognized in income taxes during Fiscal 2019 was $16.2 million, as subsequently reduced by $0.4 million. Based on our judgement, the amount of income tax benefits related to identified research and development income tax credits that we assessed as not meeting the threshold criteria for recognition was $5.0 million.

- 46 -

The research and development credits were included in amendments to our consolidated federal income tax returns for Fiscal 2016 and Fiscal 2017, that were filed in January 2019, and our consolidated federal income tax return for Fiscal 2018, that was filed in November 2018. In January 2021, the IRS issued its final revenue agents reports that disagreed with our treatment of a substantial amount of the costs that supported our claims. In March 2021, we submitted a formal protest of the findings of the IRS examiner and requested an appeal hearing.

At the conclusion of the hearing that occurred in May 2022, we agreed to accept a settlement offer from the IRS in the amount of approximately $7.9 million, before interest, which was approximately 42% of the total of our claims. As a result, we made an unfavorable adjustment to income tax expense for Fiscal 2023 in the amount of $6.2 million.

In a manner similar to the process described above, we completed a detailed review of the activities of our engineering staff on major EPC services projects in order to identify and quantify the amounts of research and development tax credits that may have been available to reduce federal income taxes for Fiscal 2022 and Fiscal 2021. As a result, we filed amended federal income tax returns for those years, including research and development tax credits in the total amount of $5.8 million. With the application of current accounting guidance, we have recognized approximately 59% of this benefit. In Fiscal 2024, we obtained an insurance policy covering our tax position in the event that we would suffer a loss related to our research and development claims.

Deferred Tax Assets and Liabilities

Our consolidated balance sheet as of January 31, 2024 includes net deferred tax assets in the amount of approximately $2.3 million. The components of our deferred taxes are presented in Note 12 to the accompanying consolidated financial statements. These amounts reflect differences in the periods in which certain transactions are recognized for financial and income tax reporting purposes.

We consider whether it is more likely than not that some portion or all of the deferred tax assets will not be realized on a jurisdiction-by-jurisdiction basis. Our ability to realize our deferred tax assets, including those related to the past NOLs incurred in the U.K. (that applicable income tax rules will allow us to use in order to offset future amounts of applicable taxable income), depends primarily upon the generation of sufficient future taxable income to allow for the realization of our deductible temporary differences. If such estimates and assumptions regarding income amounts change in the future, we may be required to record additional valuation allowances against some or all of the deferred tax assets resulting in additional income tax expense in our consolidated statement of earnings. During Fiscal 2020, a valuation allowance in the amount of $7.1 million was established against the deferred tax asset amount created by the NOL of APC’s subsidiary in the U.K. (“APC UK”). During Fiscal 2023, APC UK continued a turnaround of its operating results such that we believed it had a stable earnings history upon which APC UK could reliably forecast future profitable operations. Based on the forecast, which rested on the belief that meaningful investments would be made in the power infrastructure of the U.K. for the foreseeable future, we believed that it was more likely than not that a certain portion of the deferred tax asset would be realized. Accordingly, we reversed a portion of the corresponding allowance during Fiscal 2023 in the amount of $2.6 million. However, the unexpected difficulties with one construction project and the loss that was recorded by APC UK related to it caused management to reconsider the amount of work expected to be performed in the U.K. in the future. Accordingly, the estimate of the amount of future net earnings of APC UK available to offset its net operating loss carryforwards was reduced causing us to increase the amount of the allowance by $2.1 million in Fiscal 2024.

A deferred tax asset in the amount of $8.3 million was recorded as of January 31, 2020 associated with the income tax benefit of our domestic NOL for Fiscal 2020 without any corresponding valuation allowance. Among other changes, the CARES Act re-established a carryback period for certain losses to five years. The NOLs eligible for carryback under the CARES Act include our domestic loss for Fiscal 2020, which was approximately $39.5 million. The carryback provided a favorable rate benefit for us as the loss, which was incurred in a year where the statutory federal tax rate was 21%, has been carried back to tax years where the tax rate was higher. The net amount of this additional income tax benefit, which we recorded in Fiscal 2021, was $4.4 million. We have made the appropriate filings with the IRS requesting carryback refunds of income taxes paid in prior years. With the enactment of the CARES Act, the asset amount, which totals $12.7 million, was moved to income taxes receivable. The IRS has not completed the examination of our refund request.

At this time, we believe that the historically strong earnings performance of our power industry services segment will provide sufficient income during the years when most of our other deferred tax assets become deductible in the U.S. in order for us to realize the applicable temporary income tax differences. Accordingly, we believe that it is more likely than not that we will realize the benefit of significantly all of our net deferred tax assets.

- 47 -

Recently Issued Accounting Pronouncements

See Note 1 to the accompanying consolidated financial statement for discussion of recently issued accounting pronouncements.

ITEM 7A. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK.

In the normal course of business, our results of operations may be subject to risks related to fluctuations in interest rates. As of January 31, 2024, we had no outstanding borrowings under our financing arrangements with the Bank (see Note 8 to the accompanying consolidated financial statements), which provide a revolving loan with a maximum borrowing amount of $50.0 million that is available until May 31, 2024 with interest at SOFR plus 1.6%.

During Fiscal 2024, Fiscal 2023 and Fiscal 2022, we did not enter into any material derivative financial instruments for trading, speculation or other purposes that would expose us to market risk.

We maintain a substantial amount of our temporarily investable cash in certificates of deposit, a money market fund, U.S. Treasury notes and a U.S. corporate debt security (see Note 3 of the accompanying consolidated financial statements). As of January 31, 2024, the weighted average number of days remaining until maturity for the certificates of deposit, U.S. Treasury notes and U.S. corporate debt security was 393 days. The weighted average annual interest rate of our certificates of deposit of $105.0 million, the money market fund balance of $126.6 million, the U.S. Treasury notes face value of $95.0 million and the U.S. corporate debt security face value of $9.2 million was 5.1%. To illustrate the potential impact of changes in the overall interest rate associated with our investable cash balance at January 31, 2024 on our annual results of operations, we present the following hypothetical analysis. It assumes that our consolidated balance sheet as of January 31, 2024 remains constant, and no further actions are taken to alter our existing interest rate sensitivity, including reinvestments (dollars in thousands).

Increase (Decrease) in

Increase (Decrease) in

Net Increase (Decrease) in

Basis Point Change

    

Interest Income

    

Interest Expense

    

Income (Pre-Tax)

Up 300 basis points

$

10,565

$

$

10,565

Up 200 basis points

7,043

7,043

Up 100 basis points

 

3,522

 

 

3,522

Down 100 basis points

(3,522)

(3,522)

Down 200 basis points

(7,043)

(7,043)

Down 300 basis points

 

(10,565)

 

 

(10,565)

With the consolidation of APC, we are subject to the effects of translating the financial statements of APC from its functional currency (Euros) into our reporting currency (U.S. dollars). The effects of translation are recognized in accumulated other comprehensive loss, which is net of tax when applicable. APC remeasures transactions and subsidiary financial statements denominated in local currencies to Euros. Gains and losses on the remeasurements are recorded in the other income line of our consolidated statement of earnings.

In the “Risk Factors” section of this 2024 Annual Report (see Item 1A), we have included discussion of the risks to our fixed price contracts if actual contract costs rise above the estimated amounts of such costs that support corresponding contract prices. Identified as factors that could cause contract cost overruns, project delays or other unfavorable effects on our contracts, among other circumstances and events, are delays in the scheduled deliveries of machinery and equipment ordered by us or project owners, unforeseen increases in the costs of labor, warranties, raw materials, components or equipment or the failure or inability to obtain resources when needed.

We are subject to fluctuations in prices for commodities including steel products, copper, concrete and fuel. Although we attempt to secure firm quotes from our suppliers, we generally do not hedge against increases in prices for these commodities. Commodity price risks may have an impact on our results of operations due to the fixed-price nature of many of our contracts. We attempt to include the anticipated amounts of price increases or decreases in the costs of our bids. In times of increased supply cost volatility, we may take other steps to reduce our risks. For example, we may hold quotes related to materials in our industrial construction services segment for very short periods. For major fixed price contracts in our power industry services segment, we may mitigate material cost risks by procuring the majority of the equipment and construction supplies during the early phases of a project. The profitability of our active jobs has not suffered meaningfully from the periodic global surges in non-residential construction material costs.

- 48 -

Our operations have been challenged by the well-publicized global supply chain disruptions. While management of the risks associated with the inability to obtain machinery, equipment and other materials when needed continues to require our best efforts, we are concerned that the supply chain uncertainties may impact project owners’ confidence in commencing new work which may adversely affect our expected levels of revenues until the supply chain disruptions substantially dissipate.

ITEM 8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA.

See the Index to the Consolidated Financial Statements on page 55 of this 2024 Annual Report.

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

None.

ITEM 9A. CONTROLS AND PROCEDURES.

Attached as exhibits to this 2024 Annual Report are certifications of our Chief Executive Officer (“CEO”) and Chief Financial Officer (“CFO”), which are required in accordance with Rule 13a-14 of the Exchange Act. This “Controls and Procedures” section includes information concerning the controls and controls evaluation referred to in the certifications and a reference to the report of Grant Thornton LLP, our independent registered public accounting firm, regarding its audit of our internal control over financial reporting. This section should be read in conjunction with the certifications and the report of Grant Thornton LLP for a more complete understanding of the topics presented.

Evaluation of Disclosure Controls and Procedures

We conducted an evaluation of the effectiveness of the design and operation of our disclosure controls and procedures (“Disclosure Controls”) as of the end of the year covered by this 2024 Annual Report. The controls evaluation was conducted under the supervision and with the participation of management, including our CEO and CFO. Disclosure Controls are controls and procedures designed to reasonably assure that information required to be disclosed in our reports filed under the Exchange Act, such as this 2024 Annual Report, is recorded, processed, summarized, and reported within the time periods specified in the SEC’s rules and forms. Disclosure Controls are also designed to reasonably assure that such information is accumulated and communicated to our management, including the CEO and CFO, as appropriate to allow timely decisions regarding required disclosure. Our quarterly evaluation of Disclosure Controls includes an evaluation of some components of our internal control over financial reporting, which is separately evaluated on an annual basis for purposes of providing the management report that is set forth below.

Based on the controls evaluation, our CEO and CFO have concluded that, as of the end of the year covered by this 2024 Annual Report, our Disclosure Controls were effective to provide reasonable assurance that information required to be disclosed in our Exchange Act reports is recorded, processed, summarized, and reported within the time periods specified by the SEC, and the material information related to Argan and its consolidated subsidiaries is made known to management, including the CEO and CFO, particularly during the period when our periodic reports are being prepared.

Management’s Report on Internal Control over Financial Reporting

Our management is responsible for establishing and maintaining adequate internal control over financial reporting to provide reasonable assurance regarding the reliability of our financial reporting and the preparation of financial statements for external purposes in accordance with U.S. GAAP. Internal control over financial reporting includes those policies and procedures that (i) pertain to the maintenance of records that in reasonable detail accurately and fairly reflect the transactions and dispositions of the assets of the Company; (ii) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with authorizations of management and directors of the Company; and (iii) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the Company’s assets that could have a material effect on the consolidated financial statements.

- 49 -

Management assessed our internal control over financial reporting as of January 31, 2024, the end of the fiscal year, based on assessment criteria established in the 2013 Internal Control—Integrated Framework issued by the Committee of Sponsoring Organizations of the Treadway Commission. Management’s assessment included evaluation of elements such as the design and operating effectiveness of key financial reporting controls, process documentation, accounting policies, and our overall control environment.

Based on its assessment, management has concluded that our internal control over financial reporting was effective as of the end of the fiscal year to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external reporting purposes in accordance with U.S. GAAP. We reviewed the results of management’s assessment with the audit committee of our board of directors. In addition, on a quarterly basis, we will evaluate any changes to our internal control over financial reporting to determine if material change occurred.

Attestation Report of the Independent Registered Public Accounting Firm

The effectiveness of our internal control over financial reporting as of January 31, 2024 has been audited by Grant Thornton LLP, our independent registered public accounting firm, who also audited our consolidated financial statements included in this 2024 Annual Report, as stated in their reports which appear with our accompanying consolidated financial statements.

Changes in Internal Controls

No change in our internal control over financial reporting (as defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act) occurred during the fiscal quarter ended January 31, 2024 that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting.

Inherent Limitations on Effectiveness of Controls

The Company’s management, including the CEO and CFO, does not expect that our Disclosure Controls or our internal control over financial reporting will prevent or detect all errors and all fraud. A control system, no matter how well designed and operated, can provide only reasonable, not absolute, assurance that the control system’s objectives will be met. The design of a control system must reflect the fact that there are resource constraints, and the benefits of controls must be considered relative to their costs. Further, because of the inherent limitations in all control systems, no evaluation of controls can provide absolute assurance that misstatements due to error or fraud will not occur or that all control issues and instances of fraud, if any, within the Company have been detected. These inherent limitations include the realities that judgments in decision-making can be faulty and that breakdowns can occur because of simple error or mistake. Controls can also be circumvented by the individual acts of some persons, by collusion of two or more people, or by management override of the controls.

The design of any system of controls is based in part on certain assumptions about the likelihood of future events, and there can be no assurance that any design will succeed in achieving its stated goals under all potential future conditions. Projections of any evaluation of controls effectiveness to future periods are subject to risks. Over time, controls may become inadequate because of changes in conditions or deterioration in the degree of compliance with policies or procedures.

ITEM 9B. OTHER INFORMATION.

During the quarter ended January 31, 2024, no director or officer of the Company (as defined in Rule 16a-1(f) under the Exchange Act) adopted or terminated any Rule 10b5-1 trading arrangements or non-Rule 10b5-1 trading arrangements (in each case, as defined in Item 408(a) of Regulation S-K).

ITEM 9C. DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS.

Not applicable.

- 50 -

PART III

ITEM 10. DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE.

Information required by this item will be incorporated by reference to our 2024 Proxy Statement, which is expected to be filed by us pursuant to Regulation 14A, within 120 days after the close of our fiscal year.

ITEM 11. EXECUTIVE COMPENSATION.

Information required by this item will be included in our 2024 Proxy Statement and is incorporated herein by reference.

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

Equity Compensation Plan Information

The following table sets forth certain information, as of January 31, 2024, concerning securities authorized for issuance under options to purchase our common stock.

Number of Securities

Weighted Average Exercise

Number of Securities

Issuable under Outstanding

Price of Outstanding

Remaining Available for

    

Options

    

Options

    

Future Awards (1)

Equity Compensation Plans Approved by the Stockholders (2)

 

1,364,668

$

44.95

 

543,087

Equity Compensation Plans Not Approved by the Stockholders

 

 

 

Totals

 

1,364,668

$

44.95

 

543,087

(1)Represents the number of shares of common stock reserved for future stock awards, including restricted stock unit awards.
(2)Approved plans include the Company’s Stock Plans.

The number of issuable shares of our common stock under outstanding stock options presented in the chart above does not include an estimated 348,307 shares of our common stock covered by outstanding restricted stock units awarded pursuant to the terms of the Stock Plans. See Note 11 to the accompanying consolidated financial statements included in Item 8 of Part II of this 2023 Annual Report for a description of the restricted stock units including the various vesting terms related to the awards.

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

Information required by this item will be included in our 2024 Proxy Statement and is incorporated herein by reference.

ITEM 14. PRINCIPAL ACCOUNTANT FEES AND SERVICES.

Information required by this item will be included in our 2024 Proxy Statement and is incorporated herein by reference.

- 51 -

PART IV

ITEM 15. EXHIBITS AND FINANCIAL STATEMENTS.

(a)Financial Statements: Our consolidated financial statements together with the reports of our independent registered public accounting firm on those consolidated financial statements and our system of internal control over financial reporting are filed as part of this 2024 Annual Report.
(b)Financial Statement Schedules: We have omitted all financial statement schedules because they are not applicable or not in amounts sufficient to require submission or because we have included the necessary information in our consolidated financial statements or related notes.
(c)Exhibits: The following exhibits are filed as part of this 2024 Annual Report:


Exhibit No.

   

Description

3.1

Certificate of Incorporation, as amended. Incorporated by reference to Exhibit 3.1 to the Registrant’s Annual Report on Form 10-K filed on April 10, 2019.

3.2

Bylaws. Incorporated by reference to Exhibit 3.2 to the Registrant’s Annual Report on Form 10-K filed on April 15, 2009.

4

Description of Registrant’s Securities. Incorporated by reference to Exhibit 4 to the Registrant’s Annual Report on Form 10-K filed on April 14, 2020.

10.1

Argan, Inc. 2011 Stock Plan (Revised as of April 10, 2018). Incorporated by reference to the Registrant’s Proxy Statement filed on Schedule 14A on May 7, 2018. (b)

10.2

Argan, Inc. 2020 Stock Plan (Revised as of April 11, 2023). Incorporated by reference to the Registrant’s Proxy Statement filed on Schedule 14A on May 1, 2023. (b)

10.3

Third Amended and Restated Employment Agreement, dated November 15, 2019, by and among Gemma Power Systems, LLC, Gemma Power, Inc., Gemma Power Systems California, Inc., Gemma Power Hartford, LLC, Gemma Renewable Power, LLC, Gemma Power Operations, LLC and William F. Griffin, Jr. Incorporated by reference to Exhibit 10.1 to the Registrant’s Quarterly Report on Form 10-Q filed on December 10, 2019. (b)

10.4

Employment Agreement, dated November 15, 2019, by and among Gemma Power Systems, LLC, Gemma Power, Inc., Gemma Power Systems California, Inc., Gemma Power Hartford, LLC, Gemma Renewable Power, LLC, Gemma Power Operations, LLC and Charles Collins IV. Incorporated by reference to Exhibit 10.2 to the Registrant’s Quarterly Report on Form 10-Q filed on December 10, 2019. (b)

10.5

Amended and Restated Replacement Credit Agreement, dated May 15, 2017, among Argan, Inc. and certain subsidiaries of Argan, Inc., as borrowers, and Bank of America, N.A., as the lender. Incorporated by reference to Exhibit 10.1 to the Registrant’s Current Report on Form 8-K filed on May 17, 2017.

10.6

First Amendment to the Amended and Restated Replacement Credit Agreement, dated April 30, 2021, among Argan, Inc. and certain subsidiaries of Argan, Inc., as borrowers, and Bank of America, N.A., as the lender. Incorporated by reference to Exhibit 10.1 to the Registrant’s Current Report on Form 8-K filed on May 4, 2021.

10.7

Second Amendment to the Amended and Restated Replacement Credit Agreement, dated March 6, 2023, among Argan, Inc. and certain subsidiaries of Argan, Inc., as borrowers, and Bank of America, N.A., as the lender. Incorporated by reference to Exhibit 10.1 to the Registrant’s Current Report on Form 8-K filed on March 8, 2023.

10.8

Deferred Compensation Plan, adopted by Gemma Power Systems, LLC, effective as of April 6, 2017. Incorporated by reference to Exhibit 10.7 of the Registrant’s Annual Report on Form 10-K filed on April 11, 2017. (b)

- 52 -


Exhibit No.

   

Description

10.9

Amendment No. 2020-1 to the Gemma Power Systems, LLC Deferred Compensation Plan. Incorporated by reference to Exhibit 10.1 to the Registrant’s Quarterly Report on Form 10-Q filed on December 9, 2020. (b)

10.10

Retirement Agreement, dated as of August 16, 2022, by and between Argan, Inc. and Rainer H. Bosselmann. Incorporated by reference to Exhibit 10.1 to the Registrant’s Current Report on Form 8-K filed on August 18, 2022. (b)

10.11

Employment Agreement, dated September 8, 2022, by and between Argan, Inc. and David H. Watson. Incorporated by reference to Exhibit 10.2 to the Registrant’s Quarterly Report on Form 10-Q filed on September 8, 2022. (b)

10.12

Employment Agreement, dated September 8, 2022, by and between Argan, Inc. and Richard H. Deily. Incorporated by reference to Exhibit 10.3 to the Registrant’s Quarterly Report on Form 10-Q filed on September 8, 2022. (b)

14.1

Code of Ethics. Incorporated by reference to the Registrant’s Annual Report on Form 10-KSB filed on April 27, 2004.

14.2

Argan, Inc. Code of Conduct, effective December 10, 2020. Incorporated by reference to Exhibit 14 to the Registrant’s Current Report on Form 8-K filed on December 10, 2020.

21

Subsidiaries of the Company. Incorporated by reference to Exhibit 21 to the Registrant’s Annual Report on Form 10-K filed on April 14, 2021.

23.1

Consent of Grant Thornton LLP, Independent Registered Public Accounting Firm. (a)

31.1

Certification of CEO required by Section 302 of the Sarbanes-Oxley Act of 2002. (a)

31.2

Certification of CFO required by Section 302 of the Sarbanes-Oxley Act of 2002. (a)

32.1

Certification of CEO required by Section 906 of the Sarbanes-Oxley Act of 2002. (a)

32.2

Certification of CFO required by Section 906 of the Sarbanes-Oxley Act of 2002. (a)

97.1

Policy Regarding Repayment or Forfeiture of Certain Compensation (“Clawback Policy”) (a) (b)

101.INS

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.

101.CAL

Inline XBRL Taxonomy Extension Calculation Linkbase.

101.LAB

Inline XBRL Taxonomy Label Linkbase.

101.PRE

Inline XBRL Taxonomy Presentation Linkbase.

101.DEF

Inline XBRLTaxonomy Extension Definition Document.

104

Cover Page Interactive Data File (formatted as Inline XBRL with applicable taxonomy extension information contained in Exhibits 101).

(a)    Filed herewith.

(b) Management contract or compensatory plan, contract or arrangement.

ITEM 16. FORM 10-K SUMMARY.

None.

- 53 -

SIGNATURES

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

ARGAN, INC.

April 11, 2024

By:

/s/ Richard H. Deily

Richard H. Deily

Senior Vice President, Chief Financial Officer, Treasurer and Corporate Secretary

(Principal Accounting and Financial Officer)

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

Name

    

Title

    

Date

/s/ David H. Watson

President and Chief Executive Officer, Director

April 11, 2024

David H. Watson

(Principal Executive Officer)

/s/ William F. Leimkuhler

Chairman of the Board of Directors

April 11, 2024

William F. Leimkuhler

/s/ Rainer H. Bosselmann

Director

April 11, 2024

Rainer H. Bosselmann

/s/ Cynthia A. Flanders

Director

April 11, 2024

Cynthia A. Flanders

/s/ Peter W. Getsinger

Director

April 11, 2024

Peter W. Getsinger

/s/ William F. Griffin

Director

April 11, 2024

William F. Griffin

/s/ John R. Jeffrey

Director

April 11, 2024

John R. Jeffrey

/s/ Mano Koilpillai

Director

April 11, 2024

Mano Koilpillai

/s/ W. G. Champion Mitchell

Director

April 11, 2024

W. G. Champion Mitchell

/s/ James W. Quinn

Director

April 11, 2024

James W. Quinn

- 54 -

ARGAN, INC. AND SUBSIDIARIES

INDEX TO CONSOLIDATED FINANCIAL STATEMENTS

JANUARY 31, 2024

The following financial statements (including the notes thereto and the Reports of Independent Registered Public Accounting Firm with respect thereto), are filed as part of this 2024 Annual Report.

Page Number

Reports of Grant Thornton LLP, Independent Registered Public Accounting Firm (PCAOB ID Number 248)

- 56-

Consolidated Statements of Earnings for the years ended January 31, 2024, 2023 and 2022

- 59-

Consolidated Balance Sheets as of January 31, 2024 and 2023

- 60-

Consolidated Statements of Stockholders’ Equity for the years ended January 31, 2024, 2023 and 2022

- 61-

Consolidated Statements of Cash Flows for the years ended January 31, 2024, 2023 and 2022

- 62-

Notes to Consolidated Financial Statements

- 63-

- 55 -

REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

Board of Directors and Stockholders

Argan, Inc.

Opinion on the financial statements

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

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

Basis for opinion

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

We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.

Critical audit matter

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

Revenue recognition for certain fixed-price contracts

As described in Notes 1 and 2 to the consolidated financial statements, the Company recognizes revenues for fixed-price contracts over time using a cost-to-cost input method in which the extent of progress is measured based on the ratio of costs incurred to date to the total estimated costs at completion. In addition, the revenue recognition process requires the Company to determine the transaction price representing the amount of consideration to which the Company expects to be entitled, which can require estimation of variable consideration related to matters surrounding change orders, claims, bonuses and penalties.

The principal consideration for our determination that revenue recognition for certain fixed-price contracts is a critical audit matter is that the estimation of total costs at completion and/or of the total transaction price is subject to considerable management judgment which can be challenging, subjective and complex to audit. In addition, future results related to such estimates may vary significantly from past estimates due to changes in facts and circumstances.

- 56 -

Our audit procedures related to the auditing of certain fixed-price contract revenues included, among others:

We evaluated the design and tested the operating effectiveness of internal controls over the estimation process that affects estimates of variable consideration and costs to complete utilized in the estimation process in determining revenue on certain fixed-price contracts.  
We tested a sample of revenue recognized on certain fixed-price contracts and inspected contract agreements, related amendments, and change orders. We also tested underlying contractual and financial data for completeness and accuracy. In addition, we tested estimates to complete by evaluating significant assumptions, taking into account the stage of the Company’s progress towards completion of the subject project.
We agreed a sample of costs allocated to contracts to supporting documentation and recalculated revenues recognized based on the percentage of completion. We also attended a sample of monthly project review meetings and, where applicable, obtained relevant supporting documentation for significant assumptions impacting the estimate to complete and/or the transaction price for fixed-price contracts.
We performed retrospective audit procedures for a sample of revenue contracts to compare management’s estimated margins in prior year to the current year margins in order to assess management’s ability to estimate the transaction price and costs to complete.

/s/ GRANT THORNTON LLP

We have served as the Company’s auditor since 2006.

Arlington, Virginia

April 11, 2024

- 57 -

REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

Board of Directors and Stockholders

Argan, Inc.

Opinion on internal control over financial reporting

We have audited the internal control over financial reporting of Argan, Inc. (a Delaware corporation) and subsidiaries (the “Company”) as of January 31, 2024, based on criteria established in the 2013 Internal Control—Integrated Framework issued by the Committee of Sponsoring Organizations of the Treadway Commission (“COSO”). In our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of January 31, 2024, based on criteria established in the 2013 Internal Control—Integrated Framework issued by COSO.

We also have audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (“PCAOB”), the consolidated financial statements of the Company as of and for the year ended January 31, 2024, and our report dated April 11, 2024 expressed an unqualified opinion on those financial statements.

Basis for opinion

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

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

Definition and limitations of internal control over financial reporting

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

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

/s/ GRANT THORNTON LLP

Arlington, Virginia

April 11, 2024

- 58 -

ARGAN, INC. AND SUBSIDIARIES

CONSOLIDATED STATEMENTS OF EARNINGS

FOR THE YEARS ENDED JANUARY 31,

(In thousands, except per share data)

2024

    

2023

    

2022

REVENUES

$

573,333

$

455,040

$

509,370

Cost of revenues

 

492,499

 

368,679

 

409,638

GROSS PROFIT

 

80,834

 

86,361

 

99,732

Selling, general and administrative expenses

 

44,376

 

44,692

 

47,321

Impairment loss

7,901

INCOME FROM OPERATIONS

 

36,458

 

41,669

 

44,510

Other income, net

 

12,475

 

4,331

 

2,552

INCOME BEFORE INCOME TAXES

 

48,933

 

46,000

 

47,062

Income tax expense

 

16,575

 

11,296

 

11,356

NET INCOME

 

32,358

 

34,704

 

35,706

Net income (loss) attributable to non-controlling interest

1,606

(2,538)

NET INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC.

32,358

33,098

38,244

Foreign currency translation adjustments

(920)

(425)

(1,370)

Net unrealized gains on available-for-sale securities

199

COMPREHENSIVE INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC.

$

31,637

$

32,673

$

36,874

NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC.

Basic

$

2.42

$

2.35

$

2.43

Diluted

$

2.39

$

2.33

$

2.40

WEIGHTED AVERAGE NUMBER OF SHARES OUTSTANDING

Basic

 

13,365

 

14,083

 

15,715

Diluted

 

13,548

 

14,176

 

15,913

CASH DIVIDENDS PER SHARE

$

1.10

$

1.00

$

1.00

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

- 59 -

ARGAN, INC. AND SUBSIDIARIES

CONSOLIDATED BALANCE SHEETS

JANUARY 31,

(Dollars in thousands, except per share data)

    

2024

    

2023

ASSETS

CURRENT ASSETS

Cash and cash equivalents

$

197,032

$

173,947

Investments

215,373

151,511

Accounts receivable, net

 

47,326

 

50,132

Contract assets

 

48,189

 

24,778

Other current assets

 

39,259

 

38,334

TOTAL CURRENT ASSETS

 

547,179

 

438,702

Property, plant and equipment, net

 

11,021

 

10,430

Goodwill

 

28,033

 

28,033

Intangible assets, net

2,217

2,609

Deferred taxes, net

2,259

3,689

Right-of-use and other assets

7,520

6,024

TOTAL ASSETS

$

598,229

$

489,487

LIABILITIES AND STOCKHOLDERS' EQUITY

CURRENT LIABILITIES

Accounts payable

$

39,485

$

56,375

Accrued expenses

 

81,721

 

49,867

Contract liabilities

 

181,054

 

96,261

TOTAL CURRENT LIABILITIES

 

302,260

 

202,503

Noncurrent liabilities

5,030

6,087

TOTAL LIABILITIES

 

307,290

 

208,590

COMMITMENTS AND CONTINGENCIES (see Notes 9 and 10)

STOCKHOLDERS’ EQUITY

Preferred stock, par value $0.10 per share – 500,000 shares authorized; no shares issued and outstanding

 

 

Common stock, par value $0.15 per share – 30,000,000 shares authorized; 15,828,289 shares issued; 13,242,520 and 13,441,590 shares outstanding at January 31, 2024 and 2023, respectively

 

2,374

 

2,374

Additional paid-in capital

 

164,183

 

162,208

Retained earnings

 

225,507

 

207,832

Less treasury stock, at cost – 2,585,769 and 2,386,699 shares at January 31, 2024 and 2023, respectively

(97,528)

(88,641)

Accumulated other comprehensive loss

(3,597)

(2,876)

TOTAL STOCKHOLDERS’ EQUITY

 

290,939

 

280,897

TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY

$

598,229

$

489,487

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

- 60 -

ARGAN, INC. AND SUBSIDIARIES

CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY

FOR THE YEARS ENDED JANUARY 31, 2024, 2023 AND 2022

(Dollars in thousands)

Common Stock

Additional

Accumulated

    

Outstanding

    

Par

    

Paid-in

    

Retained

    

Treasury

    

Other Comprehensive

    

Non-controlling

    

Total

Shares

Value

Capital

Earnings

Stock

Loss

Interest

Equity

Balances, February 1, 2021

 

15,702,969

$

2,356

$

153,315

$

166,110

$

(33)

$

(1,081)

$

1,741

$

322,408

Net income (loss)

38,244

(2,538)

35,706

Foreign currency translation loss

(1,370)

(1,370)

Stock compensation expense

3,459

3,459

Stock option exercises

82,471

12

1,416

1,428

Common stock repurchases

(527,752)

(20,372)

(20,372)

Cash dividends

(15,664)

(15,664)

Balances, January 31, 2022

 

15,257,688

2,368

158,190

188,690

(20,405)

(2,451)

(797)

325,595

Net income

33,098

1,606

34,704

Foreign currency translation loss

(425)

(425)

Stock compensation expense

3,958

3,958

Stock option exercises and other share-based award settlements

39,616

6

60

66

Common stock repurchases

(1,855,714)

(68,236)

(68,236)

Cash dividends

(13,956)

(13,956)

Distribution to non-controlling interest

(677)

(677)

Deconsolidation of VIE

(132)

(132)

Balances, January 31, 2023

13,441,590

2,374

162,208

207,832

(88,641)

(2,876)

280,897

Net income

32,358

32,358

Foreign currency translation loss

(920)

(920)

Net unrealized gains on available-for-sale securities

199

199

Stock compensation expense

4,455

4,455

Stock option exercises and restricted stock unit settlements, net of shares withheld for exercise price and withholding taxes

104,090

(2,480)

3,577

1,097

Common stock repurchases

(303,160)

(12,464)

(12,464)

Cash dividends

(14,683)

(14,683)

Balances, January 31, 2024

13,242,520

$

2,374

$

164,183

$

225,507

$

(97,528)

$

(3,597)

$

$

290,939

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

- 61 -

ARGAN, INC. AND SUBSIDIARIES

CONSOLIDATED STATEMENTS OF CASH FLOWS

FOR THE YEARS ENDED JANUARY 31,

(Dollars in thousands)

2024

    

2023

    

2022

CASH FLOWS FROM OPERATING ACTIVITIES

Net income

$

32,358

$

34,704

$

35,706

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

Stock compensation expense

4,455

3,958

3,459

Changes in accrued interest on investments

(3,899)

(1,735)

29

Depreciation

2,013

2,983

3,367

Lease expense

 

1,906

 

2,554

 

3,391

Deferred income tax expense (benefit)

1,333

(3,232)

(208)

Amortization of intangible assets

 

392

 

732

 

870

Equity in loss (income) of solar energy investments

130

(1,113)

466

Provisions for credit losses

92

2,381

Impairment loss

 

 

 

7,901

Other

 

198

 

7

 

(71)

Changes in operating assets and liabilities

Accounts receivable

 

2,764

 

(23,246)

 

(480)

Contract assets

(23,411)

(19,874)

21,741

Other assets

 

(1,004)

 

(3,346)

 

(241)

Accounts payable and accrued expenses

 

14,830

 

9,084

 

(5,742)

Contract liabilities

84,793

(31,629)

(44,154)

Net cash provided by (used in) operating activities

 

116,858

 

(30,061)

 

28,415

CASH FLOWS FROM INVESTING ACTIVITIES

Purchases of short-term investments

(115,000)

(249,750)

(90,000)

Maturities of short-term investments

159,750

190,000

90,000

Purchases of available-for-sale securities

(104,492)

Purchases of property, plant and equipment

 

(2,756)

 

(3,372)

 

(1,422)

Investments in solar energy projects

 

(5,109)

 

 

(5,016)

Acquisition of Lee Telecom, Inc.

(600)

Net cash used in investing activities

 

(67,607)

 

(63,122)

 

(7,038)

CASH FLOWS FROM FINANCING ACTIVITIES

Common stock repurchases

(12,464)

(68,236)

(20,372)

Payments of cash dividends

 

(14,683)

 

(13,956)

 

(15,664)

Distribution to non-controlling interest

 

 

(677)

 

Proceeds from share-based award settlements

 

1,097

 

66

 

1,428

Net cash used in financing activities

 

(26,050)

 

(82,803)

 

(34,608)

EFFECTS OF EXCHANGE RATE CHANGES ON CASH

(116)

(539)

(2,968)

NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS

 

23,085

 

(176,525)

 

(16,199)

CASH AND CASH EQUIVALENTS, BEGINNING OF PERIOD

173,947

350,472

366,671

CASH AND CASH EQUIVALENTS, END OF PERIOD

$

197,032

$

173,947

$

350,472

NON-CASH INVESTING AND FINANCING ACTIVITIES

Investments in solar energy projects not yet paid

$

3,312

$

$

Right-of-use assets obtained in exchange for lease obligations

$

2,444

$

3,678

$

3,525

SUPPLEMENTAL CASH FLOW INFORMATION

Cash paid for income taxes, net of refunds

$

14,297

$

6,665

$

13,897

Cash paid for operating leases

$

1,910

$

2,552

$

3,290

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

- 62 -

ARGAN, INC. AND SUBSIDIARIES

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

JANUARY 31, 2024, 2023 AND 2022

(Tabular amounts in thousands, except per share data)

NOTE 1 – DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION

Description of the Business

Argan, Inc. (“Argan”) conducts operations through its wholly owned subsidiaries, Gemma Power Systems, LLC and affiliates (“GPS”); The Roberts Company, Inc. (“TRC”); Atlantic Projects Company Limited and affiliates (“APC”) and Southern Maryland Cable, Inc. (“SMC”). Argan and these consolidated subsidiaries are hereinafter collectively referred to as the “Company.”

Through GPS and APC, the Company provides a full range of engineering, procurement, construction, commissioning, maintenance, project development and technical consulting services to the power generation market. The customers include primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial construction services reportable segment provides field services that support new plant construction and additions, maintenance turnarounds, shutdowns and emergency mobilizations for industrial operations primarily located in the Southeast region of the U.S. and that may include the fabrication, delivery and installation of steel components such as piping systems and pressure vessels. Through SMC, which conducts business as SMC Infrastructure Solutions, the telecommunications infrastructure services segment provides project management, construction, installation and maintenance services to commercial, local government and federal government customers primarily in the Mid-Atlantic region of the U.S.

Basis of Presentation and Significant Accounting Policies

The Company’s fiscal year ends on January 31 of each year. The consolidated financial statements include the accounts of Argan, its wholly owned subsidiaries, a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023 (see Note 15). All significant intercompany balances and transactions have been eliminated in consolidation. In Note 17, the Company has provided certain financial information relating to the operating results and assets of its reportable segments based on the manner in which management disaggregates the Company’s financial reporting for purposes of making internal operating decisions.

Use of Estimates – The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, revenues, expenses, and certain financial statement disclosures.  Management believes that the estimates, judgments and assumptions upon which it relies are reasonable based upon information available to it at the time that these estimates, judgments and assumptions are made. Estimates are used for, but are not limited to, the Company’s accounting for revenues, the valuation of assets with long and indefinite lives including goodwill, the valuation of restricted stock units and options to purchase shares of the Company’s common stock, the evaluation of uncertain income tax return positions, the valuation of deferred taxes, and the determination of the allowance for doubtful accounts. Actual results could differ from these estimates.

Revenue Recognition – The Company’s accounting for revenues on contracts with customers is based on a single comprehensive five-step model that requires reporting entities to:

1.Identify the contract,
2.Identify the performance obligations of the contract,
3.Determine the transaction price of the contract,
4.Allocate the transaction price to the performance obligations, and
5.Recognize revenue.

The Company focuses on the transfer of the contractor’s control of the goods and/or services to the customer. When a performance obligation is satisfied over time, the related revenues are recognized over time. The Company’s revenues are

- 63 -

recognized primarily under various types of long-term construction contracts, including those for which revenues are based on either a fixed-price or a time-and-materials basis, and primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer.

Revenues from fixed-price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. If, at any time, the estimate of contract profitability indicates an anticipated loss on a contract, the Company will recognize the total loss in the reporting period in which it is identified and the loss amount becomes estimable. Revenues from time-and-materials contracts are recognized when the related services are provided to the customer. For its time-and-materials contracts, the Company is generally able to elect the right-to-invoice practical expedient. This practical expedient permits the Company to recognize revenue equal to the value of the performance completed to date, provided that the Company has a right to invoice the customer.

Predominantly all of the Company’s fixed-price contracts are considered to have a single performance obligation. Although multiple promises to transfer individual goods or services may exist, they are not typically distinct within the context of such contracts because contract promises included therein are interrelated or the contracts require the Company to perform critical integration so that the customer receives a completed project. Warranties provided under the Company’s contracts with customers are assurance-type primarily and are recorded as the corresponding contract work is performed.

The transaction price for a customer contract represents the value of the contract awarded to the Company that is used to determine the amount of revenues recognized as of the balance sheet date. It may reflect amounts of variable consideration which could be either increases or decreases to the transaction price. These adjustments can be made from time-to-time during the period of contract performance as circumstances evolve related to such items as changes in the scope and price of contracts, claims, incentives and liquidated damages.

Variable Consideration

Amounts for unapproved change orders for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The effects of any revision to a transaction price can be determined at any time and they could be material. The Company also includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. Once a final amount has been determined, the transaction price may be revised again to reflect the final resolution.

Variations related to the Company’s contracts typically represent modifications to the existing contracts and performance obligations and do not represent new performance obligations. Actual costs related to any changes in the scope of the corresponding contract are expensed as they are incurred. Changes to total estimated contract costs and losses, if any, are reflected in operating results for the period in which they are determined.

The Company’s long-term contracts typically have schedule dates and other performance objectives that if not achieved could subject the Company to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by the achievement of a specified level of output or efficiency. Each applicable contract defines the conditions under which a project owner may be entitled to any liquidated damages. At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted from the transaction price as the Company believes that it has included activities in its contract plan, and the associated forecasted contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. The Company considers potential liquidated damages, the costs of other related items and potential mitigating factors in determining the adequacy of its regularly updated estimates of the amounts of gross profit expected to be earned on active projects.

In other cases, the Company may have the grounds to assert liquidated damages against subcontractors, suppliers, project owners or other parties related to a project. Such circumstances may arise when the Company’s activities and progress are adversely affected by delayed or damaged materials, challenges with equipment performance or other events out of the Company’s control where the Company has rights to recourse, typically in the form of liquidated damages. In general, the

- 64 -

Company does not adjust the corresponding contract accounting until it is probable that the favorable cost relief will be realized. Such adjustments have been and could be material.

The Company records adjustments to revenues and profits on contracts, including those associated with contract variations and estimated cost changes, using a cumulative catch-up method. Under this method, the impact of an adjustment to the amount of revenues recognized to date is recorded in the period that the adjustment is identified. Estimated variable consideration amounts are determined by the Company based primarily on the single most likely amount in the range of possible consideration amounts. Revenues and profits in future periods of contract performance are recognized using the adjusted amounts of transaction price and estimated contract costs.

Contract Assets and Liabilities

The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. Those rights are generally dependent upon advance billing terms, milestone billings based on the completion of certain phases of work or when services are performed. On most of our large contracts, milestone billings that occur early in the corresponding contract terms typically are made in advance of certain significant and related costs being incurred. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts.

The balances of the Company’s accounts receivable represent amounts billed to customers that have yet to be collected and represent an unconditional right to cash from its customers. Contract assets include amounts that represent the rights to receive payment for goods or services that have been transferred to the customer, with the rights conditional upon something other than the passage of time. Contract liabilities include amounts that reflect obligations to provide goods or services for which payment has been received.

Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. Retention amounts and the length of retention periods may vary. Retainage amounts related to active contracts are considered current regardless of the term of the applicable contract; such amounts are generally collected by the completion of the applicable contract.

Remaining Unsatisfied Performance Obligations

Substantially all of the Company’s customer contracts include the right for customers to terminate contracts for convenience. The value of future work that the Company is contractually obligated to perform pursuant to active customer contracts should not be included in remaining unsatisfied performance obligations (“RUPO”) when the corresponding contracts include termination for convenience clauses without substantial penalties accruing to the customers upon such terminations. Management assesses whether the nature of the work being performed under contract is largely service-based and repetitive and should be considered a succession of one-month contracts for the duration of the identified term of the contract. These types of arrangements do not qualify as RUPO. Predominantly, the Company’s customers contract with the Company to construct assets, to fabricate materials or to perform emergency maintenance or outage services where management believes substantial penalties or costs would be incurred upon a termination for convenience, including the costs of terminating subcontracts, canceling purchase orders and returning or otherwise disposing of delivered materials and equipment. The value of RUPO on customer contracts represents amounts based on contracts or orders received from customers that the Company believes are firm and where the parties are acting in accordance with their respective obligations. The cancellation or termination of contracts for the convenience of customers has not had a material adverse effect on the consolidated financial statements.

Cash Equivalents – The Company considers all liquid investments with original maturities of three months or less at the time of purchase to be cash equivalents.

- 65 -

Available-For-Sale Securities – At each balance sheet date, available-for-sale (“AFS”) securities are stated at fair value with unrealized gains and losses, net of income taxes, presented as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, and realized gains and losses are included in other income, net, in the Company’s consolidated statements of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of AFS securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the AFS securities is reevaluated at each balance sheet date.

The Company evaluates whether a decline in the fair value of AFS securities below amortized cost basis is credit-related or due to other factors. If the Company intends to sell the AFS security or it is more likely than not that the Company would be required to sell the AFS security before recovery, impairment is recognized in earnings with a corresponding adjustment to the security’s amortized cost basis. If a portion of the unrealized loss is credit-related, the impairment is recorded as an allowance on the balance sheet with a corresponding adjustment to earnings. Credit recovery is recorded as an adjustment to the allowance and earnings in the period in which credit conditions improve.

Property, Plant and Equipment – Property, plant and equipment are stated at cost less accumulated depreciation. Such assets acquired in a business combination are initially included in the Company’s consolidated balance sheet at fair values. The Company capitalizes power plant project development costs incurred by consolidated variable interest entities. Depreciation amounts are determined using the straight-line method over the estimated useful lives of the assets, other than land, which are generally from five to thirty-nine years. Building and leasehold improvements are amortized on a straight-line basis over the shorter of the estimated useful life of the related asset or the lease term, as applicable. The costs of maintenance and repairs are expensed as incurred and major improvements are capitalized. When an asset is sold or retired, the cost and related accumulated depreciation amounts are removed from the accounts and the resulting gain or loss is included in earnings.

Goodwill – On November 1 of each year, the Company reviews the carrying value of goodwill amounts for impairment. The Company also evaluates amounts of goodwill for impairment at any time when events or changes in circumstances indicate that goodwill value may be impaired.

The Company identifies a potential impairment loss by comparing the fair value of a reporting unit with the reporting unit’s carrying amount, including goodwill. In the quantitative approach, the fair value of the reporting unit is estimated using various market-based and income-based valuation techniques as applicable in the particular circumstances. If the fair value of the reporting unit exceeds the related carrying amount, goodwill of the reporting unit is not deemed to be impaired. If the carrying amount of the reporting unit exceeds its fair value, a goodwill impairment loss is recorded in an amount equal to the excess of the unit’s carrying value over its fair value, not to exceed the amount of goodwill allocated to the reporting unit.

An alternative method allows the Company to first assess qualitative factors to decide whether it is necessary to perform the quantitative goodwill impairment test. It is not required to calculate the fair value of a reporting unit unless management concludes, based on a qualitative assessment, that it is more likely than not that its fair value may be less than the corresponding carrying amount. The professional guidance for this evaluation identifies the types of factors which the Company should consider in conducting the qualitative assessment including macroeconomic, industry, market and entity-specific factors.

Long-Lived Assets – Long-lived assets (other than goodwill), consisting primarily of intangible assets with definite lives, right-of-use assets, and property, plant and equipment, are subject to review for impairment whenever events or changes in circumstances indicate that a carrying amount should be assessed. In such circumstances, the Company would compare the carrying value of the long-lived asset to the undiscounted future cash flows expected to result from the use of the asset. In the event that the Company would determine that the carrying value of the asset is not recoverable, a loss would be recognized based on the amount by which the carrying value exceeds the fair value of the asset. Fair value would be determined by using quoted market prices or valuation techniques such as the present value of expected future cash flows, appraisals, or other pricing models as appropriate. The Company’s intangible assets with definite lives are amortized over their estimated useful lives using the straight-line method.

- 66 -

Leases – The Company determines whether a contract is a lease at the inception of the contract based on whether the contract provides the Company the right to control the use of a physically distinct asset or substantially all of the capacity of an asset. Operating lease right-of-use assets and associated lease liabilities are recorded in the balance sheet at the lease commencement date based on the present value of future minimum lease payments to be made over the expected lease term. As the implicit rate is not determinable in most of the Company’s leases, management uses the Company’s incremental borrowing rate at the commencement date in determining the present value of future payments. The expected lease term includes any option to extend or to terminate the lease when it is reasonably certain the Company will exercise such option.

The Company classifies as short-term leases any lease with an initial noncancellable term of twelve months or less that does not include an option to purchase the underlying asset that the Company is reasonably certain to exercise. Right-of-use assets and lease liabilities related to short-term leases are excluded from the consolidated balance sheets.

Under certain leases, the Company is obligated to pay property taxes, insurance, and maintenance costs. For leases that contain both lease and non-lease components, fixed and variable payments are allocated to each component relative to observable or estimated standalone prices.

Income Taxes – Deferred taxes are recognized using enacted tax rates for the effects of temporary differences between the book and tax bases of assets and liabilities. If management believes that it is more likely than not that some portion or all of a deferred tax asset will not be realized, the carrying value will be reduced by a valuation allowance.

The Company accounts for uncertain tax positions in accordance with current accounting guidance which prescribes a recognition threshold and measurement attribute for financial statement disclosure of tax positions taken, or expected to be taken, on the income tax returns of the Company. Management evaluates and the Company records the effect of any uncertain tax position based on the amount that management deems is more likely than not (i.e., greater than a 50% probability) to be sustained upon examination and ultimate settlement with the tax authorities in the applicable tax jurisdiction.

Interest incurred related to overdue income taxes is included in income tax expense; franchise taxes and income tax penalties are included in selling, general and administrative expenses.

Share-Based Payments – The Company measures and recognizes compensation expense for all stock-based awards granted to employees and directors based upon estimates of fair value determined at the grant date of the award. Forfeitures are recognized when they occur. Share-based compensation expense is included in selling, general and administrative expenses.

The Company estimates the weighted average fair value of stock options on the date of award using a Black-Scholes option pricing model. The Company believes that its past stock option exercise activity is sufficient to provide it with a reasonable basis upon which to estimate the expected life of newly awarded stock options. Risk-free interest rates are determined by blending the rates for three-to-five-year U.S. Treasury notes. The dividend yield is based on the Company’s current annual regular dividend amount. The calculations of the expected volatility factors are based on the monthly closing prices of the Company’s common stock for the five-year periods preceding the dates of the corresponding awards. The compensation expense for each stock option is recognized on a straight-line basis over the corresponding vesting period which is typically three years.

The fair value amounts for total stock return performance-based restricted stock units (“PRSUs”) are determined by using the per share market price of the common stock on the dates of award and by assigning equal probabilities to the thirteen possible payout outcomes at the end of each three-year term, and by computing the weighted average of the outcome amounts. For each award, the estimated fair value amount was calculated to be 88.5% of the aggregate market value of the target number (which is 50% of the maximum number) of shares on the award date. The fair value amounts of PRSUs are recorded to stock compensation expense using the straight-line method over the requisite service period, which is generally three years.

For earnings per share performance-based stock units (“ERSUs”) and renewable energy performance-based restricted stock units (“RRSUs”), the fair value of each award equals the aggregate market price for the number of shares that, as of the award date, are probable of vesting based on the performance conditions. For these stock-based awards with

- 67 -

performance conditions, compensation expense is recognized using the graded attribution method over the requisite service period when it is probable that the performance conditions will be satisfied.

For time-based restricted stock units (“TRSUs”), the fair value of each award equals the aggregate market price for the number of shares covered by each award on the date of award. TRSUs awarded by the Company are generally subject to a service-based vesting condition, which is generally three years. For these stock-based awards subject to service-based vesting conditions, the fair value amounts are recorded in stock compensation expense over the three-year contractual lapsing periods for the corresponding restrictions.

For each exercise of a stock option or each vesting of a restricted stock unit, the Company determines whether the difference between the deduction for income tax reporting purposes created at that time and the related compensation expense previously recorded for financial reporting purposes results in either an excess income tax benefit or an income tax deficiency which is recognized, accordingly, as income tax benefit or expense in the corresponding consolidated statement of earnings.

Fair Value of Financial Instruments – ASC Topic 820, Fair Value Measurement, establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and to minimize the use of unobservable inputs when measuring fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy prioritizes the inputs into three levels that may be used to measure fair value:

Level 1 – Inputs are unadjusted quoted prices in active markets for identical assets or liabilities.

Level 2 – Inputs are quoted prices for similar assets or liabilities in active markets; or quoted prices for identical or similar assets or liabilities in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.

Level 3 – Inputs are unobservable inputs based on a company’s own assumptions.

The carrying values presented in the consolidated balance sheets for the Company’s cash, certificates of deposit (“CD’s”), accounts receivable and contract assets, and the Company’s current liabilities are reasonable estimates of their fair values due to the short-term nature of these instruments.

Foreign Currency Translation – The accompanying consolidated financial statements are presented in the currency of the United States (“U.S. Dollars”). The effects of translating the financial statements of APC from its functional currency (Euros) into the Company’s reporting currency (U.S. Dollars) are recognized as translation adjustments in accumulated other comprehensive loss. There are no applicable income taxes. The translation of assets and liabilities to U.S. Dollars is made at the exchange rate in effect at the consolidated balance sheet date, while equity accounts are translated at historical rates. The translation of the statement of earnings amounts is made monthly based generally on the average currency exchange rate for the month.

Foreign currency transactions are remeasured at current exchange rates, with adjustments recorded as foreign currency gains or losses. Net foreign currency gains and losses are included in other income, net, in the consolidated statements of earnings. For the years ended January 31, 2024 (“Fiscal 2024”), 2023 (“Fiscal 2023”) and 2022 (“Fiscal 2022”), such amounts were not material.

Treasury Stock – Treasury Stock is recorded using the cost method. Incremental direct costs to purchase treasury stock, including excise tax, are included in the cost of the shares acquired. The Company uses the average cost method to account for treasury stock. For shares of treasury stock provided for settlements or sold at a price higher than its cost, the gain is recorded to additional paid-in capital. For shares of treasury stock provided for settlements or sold at a price lower than its cost, the loss is recorded to additional paid-in capital to the extent there are previous net gains included in the account. Any losses in excess of that amount are recorded to retained earnings.

Net Income Per Share – Basic net income per share is computed by dividing net income by the weighted average number of shares of common stock outstanding during the period. Diluted net income per share is computed similarly, however, the denominator is adjusted for the number of common stock equivalents that would have a dilutive effect using the treasury stock method. If a common stock equivalent is considered antidilutive, it is not included. Potentially dilutive common stock equivalents include stock options and restricted stock units.

- 68 -

RECENTLY ISSUED ACCOUNTING PRONOUNCEMENTS

In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method, which provides an election to account for tax equity investments using the proportional amortization method if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. Early adoption is permitted. The Company adopted this guidance using the modified retrospective approach on the first day of Fiscal 2024. As the Company’s investments in solar tax credit structures entered into prior to Fiscal 2024 do not qualify for the proportional amortization method permitted under this guidance, the Company’s financial statements were not impacted at the time of adoption. During Fiscal 2024, the Company made an equity investment in a solar tax credit structure that is eligible for the proportional amortization method (see Note 12).

In November 2023, the FASB issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures introducing key amendments to enhance disclosures in public entities’ reportable segments. Notable changes include the mandatory disclosure of significant segment expenses regularly provided to the chief operating decision maker (“CODM”), disclosure of other segment items, and requirements for consistency in reporting measures used by the CODM. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption ASU 2023-07 may have on its financial position, results of operations, cash flows, or disclosures.

In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which introduces more detailed requirements for annual disclosures for income taxes. The ASU requires public business entities to present specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 also requires all entities to disclose the amount of income taxes paid, net of refunds received, disaggregated by federal, state, and foreign jurisdiction. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-09 may have on its financial position, results of operations, cash flows, or disclosures.

There are no other recently issued accounting pronouncements that have not yet been adopted that the Company considers material to its consolidated financial statements.

NOTE 2 – REVENUES FROM CONTRACTS WITH CUSTOMERS

Disaggregation of Revenues

The following table presents consolidated revenues for Fiscal 2024, Fiscal 2023 and Fiscal 2022, disaggregated by the geographic area where the corresponding projects were located:

2024

    

2023

    

2022

United States

$

334,244

$

328,850

$

456,211

Republic of Ireland

198,701

68,242

35,044

United Kingdom

 

40,388

 

57,948

 

17,521

Other

 

 

 

594

Consolidated Revenues

$

573,333

$

455,040

$

509,370

Revenues for projects located in Ireland and the U.K. are attributed to the power industry services segment. The major portions of the Company’s consolidated revenues are recognized pursuant to fixed-price contracts with most of the remaining portions earned pursuant to time-and-material contracts. Consolidated revenues are disaggregated by reportable segment in Note 17 to the consolidated financial statements.

- 69 -

Contract Loss

For a project being performed by APC to construct a gas-fired power facility in Northern Ireland, an estimated loss at completion of the project of approximately $10.0 million was recognized in the latter half of Fiscal 2024. Accordingly, APC recorded a loss during Fiscal 2024 in the amount of approximately $13.6 million, which includes an unfavorable adjustment of estimated gross profit recorded in the prior fiscal year. This project is expected to be completed by APC during the first half of the fiscal year ending January 31, 2025 (“Fiscal 2025”).

Contract Assets and Liabilities

The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts. During the fiscal year ended January 31, 2024, there were no material unusual or one-time adjustments to contract liabilities. The amounts of revenues recognized during Fiscal 2024 and Fiscal 2023 that were included in the balances of contract liabilities as of January 31, 2023 and 2022, were approximately $95.5 million and $131.0 million, respectively.

Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. The amounts retained by project owners and other customers under construction contracts at January 31, 2024, and 2023 were $21.2 million and $49.1 million, respectively.

Variable Consideration

Amounts for unapproved change orders for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The Company also includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. At January 31, 2024 and 2023, the aggregate amounts of such contract variations that were included in the transaction prices and that were still pending customer approval were $8.4 million and $11.6 million, respectively.

Remaining Unsatisfied Performance Obligations

At January 31, 2024, the Company had RUPO of $0.7 billion. The largest portion of RUPO at any date usually relates to engineering, procurement and construction (“EPC”) services and other construction contracts with typical performance durations of one to three years. However, the length of certain significant construction projects may exceed three years. The Company estimates that approximately 69% of the RUPO amount at January 31, 2024 will be included in the amount of consolidated revenues that will be recognized during Fiscal 2025. Most of the remaining amount of the RUPO amount at January 31, 2024 is expected to be recognized in revenues during the fiscal years ending January 31, 2026 (“Fiscal 2026”) and 2027 (“Fiscal 2027”).

It is important to note that estimates may be changed in the future and that cancellations, deferrals or scope adjustments may occur related to work included in the amount of RUPO at January 31, 2024. Accordingly, RUPO may be adjusted to reflect project delays and cancellations, revisions to project scope and cost and foreign currency exchange fluctuations, or to revise estimates, as effects become known. Such adjustments to RUPO may materially reduce future revenues below Company estimates.

NOTE 3 – CASH, CASH EQUIVALENTS AND INVESTMENTS

At January 31, 2024 and 2023, certain amounts of cash equivalents were invested in a money market fund with net assets invested in high-quality money market instruments, including U.S. Treasury obligations; obligations of U.S. government agencies, authorities, instrumentalities or sponsored enterprises; and repurchase agreements secured by such obligations. Dividend income related to money market investments is recorded when earned. The balances of accrued dividends at January 31, 2024 and 2023 were $0.7 million and $0.3 million, respectively.

- 70 -

Investments

The Company’s investments consisted of the following as of January 31, 2024 and 2023:

2024

    

2023

Short-term investments

$

109,489

$

151,511

Available-for-sale securities

105,884

Total investments

$

215,373

$

151,511

Short-Term Investments

Short-term investments as of January 31, 2024 and 2023 consisted solely of certificates of deposit (“CDs”) with initial maturities of one year or less purchased from Bank of America, N.A. (the “Bank”). The Company has the intent and ability to hold the CDs until they mature, and they are carried at cost plus accrued interest. Interest income is recorded when earned and is included in other income. At January 31, 2024 and 2023, the weighted average annual interest rates of the outstanding CDs were 5.4% and 2.5%, respectively. The balances of accrued interest on the CDs at January 31, 2024 and 2023 were $4.5 million and $1.8 million, respectively.

Available-For-Sale Securities

AFS securities as of January 31, 2024 consisted of U.S. Treasury notes and a U.S. corporate debt security with original maturities of two or three years. The Company did not have any AFS securities investments as of January 31, 2023. The Company’s AFS securities consisted of the following amounts of amortized cost, allowance for credit losses, gross unrealized gains and losses and estimated fair value by contractual maturity as of January 31, 2024:

January 31, 2024

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due in one to two years

$

50,634

$

$

305

$

102

$

50,837

Due in two to three years

45,583

263

128

45,718

U.S. corporate debt security:

Due in two to three years

9,406

77

9,329

Totals

$

105,623

$

$

568

$

307

$

105,884

As of January 31, 2024, interest receivable in the amount of $1.3 million is included in the balance of AFS securities. During Fiscal 2024, the change in net unrealized holding gains, net of tax, for the Company’s AFS securities reported in other comprehensive income was approximately $0.2 million. During Fiscal 2024, there were no sales of the Company’s AFS securities, and therefore, there were no amounts of gains or losses reclassified out of other comprehensive income into net income. For AFS securities with unrealized losses, the Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of January 31, 2024, which includes an assessment of whether it is more likely than not the Company will be required to sell or intends to sell the investment before recovery of its amortized cost basis.

Earnings on Invested Funds

Earnings on invested funds for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $14.1 million, $3.4 million and $3.0 million, respectively, and are included in other income, net, in the consolidated statements of earnings.

Concentration Risk

The Company has a substantial portion of its cash on deposit in the U.S. with the Bank or invested in CDs purchased from the Bank. In addition, the Company has cash invested in a money market fund at a separate institution. The Company also maintains certain Euro-based bank accounts in Ireland and certain pound sterling-based bank accounts in the U.K. in support of the operations of APC. As of January 31, 2024, approximately 12% of the Company’s cash and cash equivalents were held by local financial institutions in Ireland and the U.K. Management does not believe that the combined amount

- 71 -

of the CDs and the cash deposited with the Bank, cash invested in the money market fund, and cash balances maintained at financial institutions in Ireland and the U.K., in excess of government-insured levels, represent material risks.

NOTE 4 – FAIR VALUE MEASUREMENTS

The following table presents the Company’s financial instruments as of January 31, 2024 and 2023 that are measured and recorded at fair value on a recurring basis:

January 31, 2024

January 31, 2023

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Cash equivalents:

Money market fund

$

126,646

$

$

$

68,647

$

$

Available-for-sale securities:

U.S. Treasury notes

96,555

U.S. corporate debt security

9,329

Totals

$

126,646

$

105,884

$

$

68,647

$

$

NOTE 5 – ACCOUNTS RECEIVABLE

The Company generally extends credit to a customer based on an evaluation of the customer’s financial condition without requiring tangible collateral. Customer payments on construction service contracts are generally due within 30 to 60 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts receivable may differ due to the varying financial condition of each customer. The Company monitors its exposure to credit losses and may establish an allowance for credit losses based on management’s estimate of the loss that is expected to occur over the remaining life of the particular financial asset. The amounts of the provision for credit losses for Fiscal 2024 and Fiscal 2023 were insignificant. For Fiscal 2022, the amount of the provision for credit losses was $2.4 million.  The amounts of the allowance for credit losses as of January 31, 2024 and 2023, were $1.8 million and $1.9 million, respectively.

NOTE 6 – INTANGIBLE ASSETS

Goodwill

The Company used a qualitative approach to assess the goodwill of the GPS reporting unit, which is included in the power industry services segment, as of November 1, 2023 and 2022. At each date, the Company concluded that it was more likely than not that the fair value of the reporting unit exceeded the corresponding carrying value. Therefore, completion of the quantitative impairment assessment was considered to be unnecessary in each case.

Similarly, the Company used a qualitative approach to assess the goodwill of the TRC reporting unit, which represents the industrial construction services segment, as of November 1, 2023 and 2022 and concluded that it was more likely than not that the fair value of the reporting unit exceeded the corresponding carrying value. Therefore, the completion of the quantitative impairment assessment was considered to be unnecessary.

During Fiscal 2022, the Company completed the acquisition of Lee Telecom, Inc. (“LTI”), which is located in Hampton, Virginia. The results of operations of LTI are included in the Company’s telecommunications infrastructure services segment. The acquisition represented a purchase of the assets of LTI, for which the Company paid $0.6 million cash, including customer contracts and goodwill.

- 72 -

The changes in the balances of the Company’s goodwill by reportable segment for Fiscal 2024 and Fiscal 2023 were as follows:

    

Power

Industrial

Telecom

Services

    

Services

    

Services

    

Totals

Goodwill as of February 1, 2022

$

18,476

$

9,467

$

90

$

28,033

Impairment losses

Goodwill as of January 31, 2023

18,476

9,467

90

28,033

Impairment losses

Goodwill as of January 31, 2024

$

18,476

$

9,467

$

90

$

28,033

Balances, January 31, 2024:

Goodwill

$

22,525

$

14,365

$

90

$

36,980

Accumulated impairment losses

 

(4,049)

 

(4,898)

 

 

(8,947)

Goodwill as of January 31, 2024

$

18,476

$

9,467

$

90

$

28,033

As of January 31, 2024, the accumulated impairment losses for the power industry services segment relate solely to the APC reporting unit.

For income tax reporting purposes, the 15-year straight-line amortization of goodwill related to acquisitions in the approximate amount of $16.5 million was completed during the year ended January 31, 2024. The other amounts of the Company’s goodwill are not amortizable for income tax reporting purposes.

Other Intangible Assets

The Company’s intangible assets, other than goodwill, relate primarily to the industrial construction services segment and consisted of the following as of January 31, 2024 and 2023:

January 31, 2024

January 31, 2023

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade name

15 years

$

4,499

$

2,450

$

2,049

$

4,499

$

2,150

$

2,349

Customer relationships

10 years

916

748

168

916

656

260

Totals

$

5,415

$

3,198

$

2,217

$

5,415

$

2,806

$

2,609

The amounts related to the trade name that became fully amortized during Fiscal 2023 were removed from the table. The Company believes that the useful life of the remaining trade name represents the remaining number of years that such intangible asset is expected to contribute to future cash flows. There were no additions to other intangible assets during Fiscal 2024 or Fiscal 2023. In addition, there were no impairment losses related to the assets for Fiscal 2024, Fiscal 2023 or Fiscal 2022. Amortization expense related to intangible assets for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $0.4 million, $0.7 million and $0.9 million, respectively.

The future amounts of amortization related to intangibles are presented below for the years ending January 31:

2025

    

$

392

2026

 

375

2027

 

300

2028

 

300

2029

300

Thereafter

 

550

Total

$

2,217

- 73 -

NOTE 7 – PROPERTY, PLANT AND EQUIPMENT, NET

Property, plant and equipment consisted of the following at January 31, 2024 and 2023:

    

2024

    

2023

Land and improvements

$

863

$

863

Building and improvements

 

7,910

 

7,558

Furniture, machinery and equipment

 

17,938

 

17,219

Trucks, trailers and other vehicles

 

5,902

 

6,042

 

32,613

 

31,682

Less - accumulated depreciation

 

21,592

 

21,252

Property, plant and equipment, net

$

11,021

$

10,430

The following table presents property, plant and equipment, net, disaggregated by geographic area as of January 31, 2024 and 2023:

    

2024

    

2023

United States

$

8,898

$

8,522

Republic of Ireland

 

1,836

 

1,614

United Kingdom

 

287

 

294

Property, plant and equipment, net

$

11,021

$

10,430

Depreciation expense for property, plant and equipment was $2.0 million, $3.0 million and $3.4 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively, which amounts were charged substantially to selling, general and administrative expenses in each year. The costs of maintenance and repairs were $1.6 million, $2.4 million and $2.1 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively, which amounts were charged substantially to selling, general and administrative expenses each year as well.

NOTE 8 – FINANCING ARRANGEMENTS

During April 2021, the Company amended its Amended and Restated Replacement Credit Agreement with the Bank (the “Credit Agreement”) which extended the expiration date of the Credit Agreement to May 31, 2024 and reduced the borrowing rate. On March 6, 2023, the Company entered into the Second Amendment (the “Second Amendment”) to the Credit Agreement. The Second Amendment modified the Credit Amendment, primarily, to replace the interest pricing with the Secured Overnight Financing Rate (“SOFR”) plus 1.6% and to add SOFR successor rate language. The Credit Agreement, as amended, includes the following features, among others: a lending commitment of $50.0 million including a revolving loan and an accordion feature which allows for an additional commitment amount of $10.0 million, subject to certain conditions. The Company may also use the borrowing ability to cover other credit instruments issued by the Bank for the Company’s use in the ordinary course of business as defined in the Credit Agreement. The Company intends to renew the Credit Agreement prior to its current expiration date.

At January 31, 2024 and 2023, the Company did not have any borrowings outstanding under the Credit Agreement. However, the Bank has issued a letter of credit in the total outstanding amount of $9.3 million at January 31, 2024, in support of the activities of APC under existing customer contracts. The comparable outstanding total amount of letters of credit at January 31, 2023 was $8.8 million.

The Company has pledged the majority of its assets to secure its financing arrangements. The Bank’s consent is not required for acquisitions, divestitures, cash dividends or significant investments as long as certain conditions are met. The Credit Agreement requires that the Company comply with certain financial covenants at its fiscal year-end and at each fiscal quarter-end. The Credit Agreement, as amended, includes other terms, covenants and events of default that are customary for a credit facility of its size and nature, including a requirement to achieve positive adjusted earnings before interest, taxes, depreciation and amortization, as defined, over each rolling twelve-month measurement period. As of January 31, 2024 and 2023, the Company was in compliance with the covenants of the Credit Agreement, as amended.

- 74 -

NOTE 9 – COMMITMENTS

Leases

The Company’s leases are primarily operating leases that cover office space, expiring on various dates through December 2031, and certain equipment used by the Company in the performance of its construction services contracts. Some of these equipment leases may be embedded in broader agreements with subcontractors or construction equipment suppliers. The Company has no material finance leases. None of the operating leases includes significant amounts for incentives, rent holidays or price escalations.

At January 31, 2024 and 2023, right-of-use assets were $5.3 million and $4.8 million, respectively. Operating lease expense amounts are recorded on a straight-line basis over the expected lease terms. Operating lease expense amounts for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $1.9 million, $2.6 million and $3.4 million, respectively.

The following is a schedule of future minimum lease payments for the operating leases that were recognized in the consolidated balance sheet as of January 31, 2024 for the years ending January 31:

2025

    

$

2,823

2026

1,461

2027

275

2028

221

2029

213

Thereafter

625

Total lease payments

5,618

Less imputed interest

300

Present value of lease payments

5,318

Less current portion (included in accrued expenses)

2,726

Noncurrent portion (included in noncurrent liabilities)

$

2,592

The following table presents summary information for the Company’s lease terms and discount rates for its operating leases at January 31, 2024 and 2023:

2024

    

2023

    

Weighted average remaining lease term

41 months

58 months

Weighted average discount rate

5.2

%

3.7

%

The Company also uses equipment and occupies other facilities under short-term rental agreements. Rent expense amounts incurred under short-term rentals were $9.5 million, $11.3 million and $9.6 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively.

Performance Bonds and Guarantees

In the normal course of business and for certain major projects, the Company may be required to obtain surety or performance bonding, to cause the issuance of letters of credit, or to provide parent company guarantees (or some combination thereof) in order to provide performance assurances to clients on behalf of its contractor subsidiaries. As these subsidiaries are wholly-owned, any actual liability is ordinarily reflected in the financial statement account balances determined pursuant to the Company’s accounting for contracts with customers. When sufficient information about claims on guaranteed or bonded projects would be available and monetary damages or other costs or losses would be determined to be probable, the Company would record such losses. Any such amounts that may be required to be paid in excess of the estimated costs to complete contracts in progress as of January 31, 2024 are not estimable.

As of January 31, 2024, the estimated amount of the Company’s unsatisfied bonded performance obligations, covering all of its subsidiaries, was approximately $0.5 billion. As of January 31, 2023, the outstanding amount of bonds covering other risks, including warranty obligations related to completed activities, was not material. Not all of our projects require bonding.

- 75 -

The Company also provided a financial guarantee, subject to certain terms and conditions, up to $3.6 million in support of business development efforts. Any estimated loss related to this guarantee was recorded during Fiscal 2022.

Warranties

The Company generally provides assurance-type warranties for work performed under its construction contracts. The warranties cover defects in equipment, materials, design or workmanship, and most warranty periods typically run from nine to twenty-four months after the completion of construction on a particular project. Because of the nature of the Company’s projects, including project owner inspections of the work both during construction and prior to substantial completion, the Company has not experienced material unexpected warranty costs in the past. Warranty costs are estimated based on experience with the type of work and any known risks relative to each completed project. The accruals of liabilities, which are established to cover estimated future warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the consolidated balances sheets. The liability amounts may be periodically adjusted to reflect changes in the estimated size and number of expected warranty claims.

Employee Benefit Plans

The Company maintains 401(k) savings plans pursuant to which the Company makes discretionary contributions for the eligible and participating employees. The Company’s expense amounts related to these defined contribution plans were approximately $2.9 million, $2.7 million and $2.3 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. The Company also maintains nonqualified plans whereunder the payments of certain amounts of incentive compensation earned by key employees are deferred for periods of four to seven years; payments are conditioned on continuous employment.

NOTE 10 – LEGAL CONTINGENCIES

In the normal course of business, the Company may have pending claims and legal proceedings. In the opinion of management, based on information available at this time, there are no current claims and proceedings that are expected to have a material adverse effect on the consolidated financial statements as of January 31, 2024.

In January 2019, GPS filed a lawsuit against Exelon West Medway II, LLC and Exelon Generation Company, LLC (together referred to as “Exelon”) in the U.S. District Court for the Southern District of New York for Exelon’s breach of contract and failure to remedy various conditions which negatively impacted the schedule and the costs associated with the construction by GPS of a gas-fired power plant for Exelon in Massachusetts. In September 2021, GPS reached a final settlement of all outstanding claims between the parties resulting in Exelon making a payment to GPS in the amount of $27.5 million, which was in excess of the previously reported total amount of receivables and contract assets. The excess amount was included in revenues for Fiscal 2022.

NOTE 11 – STOCK-BASED COMPENSATION

On June 23, 2020, the Company’s stockholders approved the adoption of the 2020 Stock Plan (the “2020 Plan”), and the allocation of 500,000 shares of the Company’s common stock for issuance thereunder. On June 20, 2023, the Company’s stockholders approved an allocation of an additional 500,000 shares for issuance under the 2020 Plan. The Company’s board of directors may make share-based awards under the 2020 Plan to officers, directors and key employees. The 2020 Plan replaced the 2011 Stock Plan (the “2011 Plan”); the Company’s authority to make awards pursuant to the 2011 Plan expired on July 19, 2021. Together, the 2020 Plan and the 2011 Plan are hereinafter referred to as the “Stock Plans.”

The features of the 2020 Plan are similar to those included in the 2011 Plan. Awards may include nonqualified stock options, incentive stock options, and restricted or unrestricted stock. The specific provisions for each award are documented in a written agreement between the Company and the awardee. All stock options awarded under the Stock Plans have exercise prices per share at least equal to the market value per share of the Company’s common stock on the date of grant. Stock options have a maximum term of ten years. Typically, stock options are awarded with one-third of each stock option vesting on each of the first three anniversaries of the corresponding award date.

As of January 31, 2024, there were 2,256,062 shares of common stock reserved for issuance under the Stock Plans; this number includes 543,087 shares of common stock available for future awards under the 2020 Plan.

- 76 -

Expense amounts related to stock awards were $4.5 million, $4.0 million and $3.5 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. At January 31, 2024, there was $6.0 million in unrecognized compensation cost related to outstanding stock awards that the Company expects to expense over the next three years.

Stock Options

A summary of stock option activity under the Stock Plans for Fiscal 2024 is presented below (shares in thousands):

Weighted-

Average

Weighted-

Weighted-

Remaining

Average

Average Exercise

Contractual

Grant-Date

    

Shares

    

Price

    

Term (years)

    

Fair Value

Outstanding, January 31, 2023

 

1,440

$

43.84

 

5.46

$

10.11

Granted

21

$

41.64

Exercised

(94)

$

27.42

Forfeited

(2)

$

33.81

Outstanding, January 31, 2024

1,365

$

44.95

 

4.67

$

10.43

Exercisable, January 31, 2024

1,273

$

45.33

 

4.40

$

10.61

Vested or expected to vest, January 31, 2024

 

1,365

$

44.95

 

4.67

$

10.43

A summary of the changes in the number of non-vested options to purchase shares of common stock for Fiscal 2024 is presented below (shares in thousands):

    

Weighted-

Average

Grant-Date

Shares

    

Fair Value

Non-vested, January 31, 2023

 

194

$

7.27

Granted

 

21

$

8.65

Vested

 

(122)

$

7.31

Forfeited

(1)

$

5.68

Non-vested, January 31, 2024

 

92

$

7.85

During Fiscal 2023 and 2022, respectively, 67,000 and 73,000 stock options were granted with weighted-average grant-date fair values per share of $8.54 and $7.19. The total intrinsic value amounts related to the stock options exercised during Fiscal 2024 and Fiscal 2022 were $1.5 million and $0.6 million, respectively; the corresponding amount during Fiscal 2023 was insignificant. At January 31, 2024, the aggregate market value amounts of the shares of common stock subject to outstanding stock options and exercisable stock options where the options were “in-the-money” exceeded the aggregate exercise prices of such options by $5.6 million and $5.1 million, respectively.

Restricted Stock Units

The Company awards restricted stock units to senior executives, certain other key employees and members of the Company’s board of directors. Awardees earn the right to receive shares of common stock as certain performance goals are achieved and/or service periods are satisfied. Each restricted stock unit expires on the three-year anniversary of the award.

During Fiscal 2024, the Company awarded PRSUs covering a target of 6,000 shares of common stock, ERSUs covering a target of 15,000 shares of common stock, RRSUs covering a target of 7,500 shares of common stock, TRSUs covering 77,800 shares of common stock, and 1,492 shares based on the amount of cash dividends deemed paid on shares earned pursuant to the awards.

- 77 -

The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for Fiscal 2024 are presented below (shares in thousands):

    

Weighted-

Average

Grant-Date

Shares

Fair Value

Outstanding, January 31, 2023

310

$

30.80

Awarded

129

$

30.46

Issued

(42)

$

43.80

Forfeited

(49)

$

15.57

Outstanding, January 31, 2024

348

$

30.21

During Fiscal 2023 and 2022, restricted stock units covering a maximum of 146,871 and 145,721 shares were awarded with a weighted-average grant-date fair values per share of $29.26 and $39.52, respectively. The total fair values of restricted stock units that vested and were issued during Fiscal 2024, Fiscal 2023, and Fiscal 2022 were $1.8 million, $0.9 million and $0.8 million, respectively.

NOTE 12 – INCOME TAXES

Income Tax Expense Reconciliations

The components of the amounts of income tax expense for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are presented below:

    

2024

    

2023

    

2022

Current:

Federal

$

10,870

$

12,776

$

10,921

State

 

1,835

 

1,012

 

643

Foreign

2,537

740

 

15,242

 

14,528

 

11,564

Deferred:

Federal

 

(923)

 

(803)

 

(341)

State

 

301

 

23

 

133

Foreign

1,955

(2,452)

 

1,333

 

(3,232)

 

(208)

Income tax expense

$

16,575

$

11,296

$

11,356

The amounts of interest and penalties related to income taxes that were incurred by the Company during Fiscal 2024, Fiscal 2023 and Fiscal 2022 were not material.

- 78 -

The Company’s income tax expense amounts differed from corresponding amounts computed by applying the federal corporate income tax rate of 21% to the consolidated amount of income before income taxes for Fiscal 2024, Fiscal 2023 and Fiscal 2022 as presented below:

2024

    

2023

    

2022

Computed expected income tax expense

$

10,276

$

9,660

$

9,883

Difference resulting from:

Unrecognized tax loss benefit

3,858

Foreign tax rate differential

(2,294)

(441)

(352)

State income taxes, net of federal tax effect

 

1,688

 

860

 

614

Excess executive compensation

1,040

1,397

1,296

Adjustment to valuation for foreign NOLs

2,083

(2,574)

Net benefit related to Solar Tax Credit investments

(646)

Meals and entertainment expense

626

83

58

Research and development tax credits adjustment

6,181

Recognition of research and development tax credit benefits

(3,430)

Other permanent differences and adjustments, net

(56)

(440)

 

(143)

Income tax expense

$

16,575

$

11,296

$

11,356

Net Operating Loss (“NOL”) Carryback

In March 2020, the Coronavirus, Aid, Relief, and Economic Security Act (the “CARES Act”) was signed into law. The tax changes of the CARES Act included a temporary suspension of the limitations on the future utilization of certain NOLs and re-established a carryback period for certain losses to five years. The NOLs eligible for carryback under the CARES Act include the Company’s domestic NOL for Fiscal 2020, which was approximately $39.5 million. The Company made the appropriate filing with the Internal Revenue Service (“IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 and 2015 in the total amount of approximately $12.7 million during the fiscal year ended January 31, 2021 (“Fiscal 2021”). At the instruction of the IRS, amended income tax returns for Fiscal 2016 and Fiscal 2015 were filed during the second quarter of Fiscal 2024; the IRS has not completed the examination and approval of the Company’s amended tax returns and refund request.

Research and Development Tax Credit Adjustments

During Fiscal 2019, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research and development tax credits that may have been available to reduce prior year income taxes. This study focused on project costs incurred during the three-year period ended January 31, 2018. Based on the results of the study, management identified and estimated significant amounts of income tax benefits that were not previously recognized in the Company’s operating results for any prior year reporting period. The net amount of federal and state research and development tax credit benefit recognized in prior fiscal years $16.2 million, against which the Company recorded a corresponding liability for uncertain income tax return positions in the amount of $5.0 million.

During Fiscal 2021, the IRS concluded examinations of the Company’s consolidated federal income tax returns for the years ending January 31, 2018, 2017 and 2016, with its focus on the research and development tax credits included therein. The final revenue agents reports disagreed with the Company’s treatment of a substantial amount of the costs that supported the Company’s claims. The Company submitted a formal protest of the findings of the IRS examiner and requested an appeal hearing. At the conclusion of the hearing, the Company accepted a settlement offer from the IRS in the amount of approximately $7.9 million, before interest. As a result, during Fiscal 2023, the Company made an unfavorable adjustment to income tax expense in the approximate amount of $6.2 million; the accounting for this adjustment reduced the contra-asset balance by approximately $4.4 million.

The Company has also formally protested the conclusions reached by two states, where the Company filed tax returns reflecting the benefits of certain research and development credits, that the credits are not allowable.

- 79 -

Research and Development Credits

During Fiscal 2022, in a manner similar to the process described above, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research and development tax credits that may have been available to reduce federal income taxes for Fiscal 2022 and Fiscal 2021. As a result, the Company filed amended federal income tax returns for those years including research and development tax credits in the total amount of $5.8 million, which was netted with a provision for uncertain tax return positions in the amount of $2.4 million, and recorded during Fiscal 2023. In May 2023, the Company received notification that its amended federal income tax returns for Fiscal 2021 and Fiscal 2022 were selected for examination. At January 31, 2024, the examination was in its early stages.

Unrecognized Income Tax Benefits

Changes in the balances of contra-asset established for uncertain income tax positions for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are presented below:

    

2024

    

2023

    

2022

Unrecognized income tax benefits, beginning of fiscal year

$

2,882

$

4,937

$

4,895

Increases related to prior period income tax positions

 

78

 

 

42

Increases related to current period income tax positions

 

2,359

 

Expirations of statutes of limitations

 

(407)

 

 

Settlements

 

 

(4,414)

 

Unrecognized income tax benefits, end of fiscal year

$

2,553

$

2,882

$

4,937

Gross unrecognized income tax benefits totaled $2.6 million for the fiscal year ended January 31, 2024, all of which would affect the Company’s effective income tax rate if recognized. The Company does not expect its unrecognized income tax benefits to change significantly within the next 12 months.

Recognition of Foreign NOL Income Tax Benefits

The Company has deferred tax assets in a total amount of approximately $13.8 million related to prior year NOLs of its foreign subsidiaries, primarily the operation of APC located in the U.K. (“APC UK”). The Company has established a valuation allowance against a substantial portion of these NOLs. For Fiscal 2023, APC UK continued a turnaround of its operating results such that the Company believed that it had a stable earnings history upon which APC UK could reliably forecast future profitable operations. Based on the forecast that rested on the belief that meaningful investments would be made in the power infrastructure of the U.K. for the foreseeable future, the Company believed that it would be more likely than not that a certain portion of the deferred tax assets would be realized. Accordingly, the Company reversed a portion of the corresponding allowance during Fiscal 2023 in the amount of $2.6 million. However, the unexpected difficulties with one construction project and the loss that was incurred by APC UK related to it caused management to lower its estimates of the amount of future net earnings of APC UK available to offset its net operating loss carryforwards. As a result, the Company increased the allowance by $2.1 million in Fiscal 2024.

Income Tax Refunds

As of January 31, 2024 and 2023, the balances of other current assets in the consolidated balance sheet included income tax refunds receivable and prepaid income taxes in the total amounts of approximately $18.3 million and $15.3 million, respectively. The income tax refunds included the amount expected to be received from the IRS upon its review and approval of the Company’s NOL carryback refund request and the completion of its examination of the amended tax returns for Fiscal 2022 and Fiscal 2021 as described above.

- 80 -

Deferred Taxes

The tax effects of temporary differences that are reflected in deferred taxes as of January 31, 2024 and 2023 included the following:

    

2024

    

2023

Assets:

Net operating loss carryforwards

$

19,772

$

13,964

Stock awards

2,726

2,726

Accrued expenses

1,955

1,480

Lease liabilities

1,383

1,189

Research and development costs deferral

1,622

1,015

Research and development credit carryforwards

269

Other

 

148

 

337

 

27,606

 

20,980

Liabilities:

Intangibles

(3,819)

(3,674)

Property and equipment

 

(893)

 

(1,033)

Construction contracts

 

(839)

 

(1,229)

Right-of-use assets

(1,378)

(1,184)

Other

(619)

(431)

 

(7,548)

 

(7,551)

Valuation allowances

(17,799)

(9,740)

Deferred tax assets, net

$

2,259

$

3,689

Taxpayers are now required to capitalize and amortize research and experimental expenses over five or 15 years for tax years beginning in 2022 or later. Accordingly, for Fiscal 2024 and 2023, the Company did estimate an amount of such expenses which resulted in the deferred tax asset balances presented in the table above.

The Company acquired unused NOLs for federal income tax reporting purposes from TRC that are subject to limitations imposed by Section 382 of the Internal Revenue Code of 1986, as amended. These losses are subject to annual limits that reduce the aggregate amount of NOLs available to the Company in the future to approximately $5.5 million. These NOLs are available to offset future taxable income and, if not utilized, begin expiring during 2032. The NOL carryforwards related to APC UK do not expire. The Company also has certain NOLs that will be available to the Company for state income tax reporting purposes that are substantially similar to the federal NOLs.

The Company’s ability to realize deferred tax assets, including those related to the NOLs discussed above, depends primarily upon the generation of sufficient future taxable income to allow for the Company’s use of temporarily deferred deductions and tax planning strategies. If such estimates and assumptions change in the future, the Company may be required to record additional valuation allowances against some or all of its deferred tax assets resulting in additional income tax expense in the future. At this time, based substantially on the strong earnings performance of the Company’s power industry services reporting segment, management believes that it is more likely than not that the Company will realize the benefit of significantly all of its deferred tax assets, net of valuation allowances.

Income Tax Returns

The Company is subject to federal and state income taxes in the U.S., and income taxes in Ireland and the U.K. Tax treatments within each jurisdiction are subject to the interpretation of the related tax laws and regulations which require the application of significant judgment. The Company is no longer subject to income tax examinations by authorities for its fiscal years ended on or before January 31, 2020, except for several notable exceptions including Ireland, the U.K. and several states where the open periods are one year longer.

Solar Energy Projects

The Company holds equity investments in Solar Tax Credit (“STC”) investments. Primarily, the STC investments are structured as limited liability companies that invest in solar energy projects that are eligible to receive energy tax credits.

- 81 -

During Fiscal 2024 and Fiscal 2022, the Company made investments of approximately $5.1 million and $5.0 million in STC investments. As of January 31, 2024, the Company had $3.3 million remaining of cash investment commitments related to its STC investments, which are expected to be paid in Fiscal 2025. At January 31, 2024 and 2023, the investment account balances were $2.1 million and $1.2 million, respectively, which are included in other assets in the consolidated balance sheets. These investments are expected to provide positive overall returns over their expected lives.

The Company has elected to use the proportional amortization method (“PAM”) for STC investments that qualify. Under PAM, an investment is amortized in proportion to the allocation of tax benefits received in each period, and the investment amortization and tax benefit amounts are presented net within income tax expense in the Company’s consolidated statements of earnings. Only the Company’s STC investment made in Fiscal 2024 qualifies for PAM. During Fiscal 2024, the Company recognized $8.1 million of income tax credits and other income tax benefits and recorded $7.4 million of investment amortization related to this STC investment. The amount of non-income tax-related activity and other returns related to this investment was not material for Fiscal 2024.

Not all of the Company’s STC investments qualify for PAM. For STC investments that do not qualify for PAM, the Company accounts for the investment using the equity method of accounting and includes income and losses related to the investment in other income in the Company’s consolidated statements of earnings. Tax credits, when recognized, are recorded as a reduction of the corresponding investment balance with an offsetting reduction to accrued taxes payable in accordance with the deferral method. For these STC investments that do not qualify for PAM, income tax credits in the approximate amount of $4.5 million were recognized during Fiscal 2022; no income tax credits were recognized in Fiscal 2024 and Fiscal 2023. For Fiscal 2024, Fiscal 2023 and Fiscal 2022, the Company recorded its share of losses of less than $0.1 million, income of $1.1 million and losses of $0.4 million, respectively, from these STC investments.

NOTE 13 – NET INCOME PER SHARE

Basic and diluted net income per share attributable to the stockholders of Argan, Inc. for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are computed as follows (shares in thousands except in note (1) below the chart):

2024

    

2023

    

2022

Net income

$

32,358

$

33,098

$

38,244

Weighted average number of shares outstanding – basic

13,365

14,083

15,715

Effect of stock awards (1)

183

93

198

Weighted average number of shares outstanding – diluted

13,548

14,176

15,913

Net income per share attributable to the stockholders of Argan, Inc.

Basic

$

2.42

$

2.35

$

2.43

Diluted

$

2.39

$

2.33

$

2.40

(1)For Fiscal 2024, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options and restricted stock units covering an aggregate of 685,334, 978,834 and 570,167 shares of common stock, respectively. The options had exercise prices per share in excess of the average market price per share for the applicable year.  

NOTE 14 – CASH DIVIDENDS AND COMMON STOCK REPURCHASES

On September 19, 2023, Argan’s board of directors increased the Company’s quarterly cash dividend by 20% from $0.25 to $0.30 per share of common stock and, accordingly, the Company made regular quarterly cash dividend payments of $0.30 per share of common stock in October 2023 and January 2024. The Company also made regular quarterly cash dividend payments of $0.25 per share of common stock in April 2023 and July 2023. During Fiscal 2023 and Fiscal 2022, the Company made regular quarterly cash dividend payments of $0.25 per share of common stock.

Pursuant to its established program and authorizations provided by Argan’s board of directors, the Company began to repurchase shares of its common stock in November 2021. During Fiscal 2024, the Company repurchased 230,160 shares of common stock, all on the open market, for an aggregate price of approximately $9.2 million, or $40.01 per share. In addition, the Company repurchased 73,000 shares of common stock in a direct purchase from a director of the Company

- 82 -

for an aggregate price of approximately $3.2 million, or $43.50 per share. During Fiscal 2024, the Company accepted 31,066 shares of common stock at the average price per share of $47.19 as consideration for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements.

During Fiscal 2023, the Company repurchased 1,855,714 shares of common stock, most on the open market, for an aggregate price of approximately $68.2 million, or $36.77 per share. During Fiscal 2022, the Company repurchased 527,752 shares of common stock, all on the open market, for an aggregate price of approximately $20.4 million, or $38.60 per share. For Fiscal 2024, the Company used 135,156 shares of treasury stock to settle stock option exercises and other share-based awards. For Fiscal 2023 and 2022, no shares of treasury stock were used to settle such transactions.

In August 2022, the Inflation Reduction Act was signed into law, which introduced a 1% excise tax on shares repurchased after December 31, 2022. For Fiscal 2024 and Fiscal 2023, the excise tax was not material.

NOTE 15 – VARIABLE INTEREST ENTITY

In January 2018, the Company was deemed to be the primary beneficiary of a VIE that was performing the project development activities related to the planned construction of a new natural gas-fired power plant. Consideration for the Company’s engineering and financial support provided to the project included the right to build the power plant pursuant to a turnkey EPC services contract that was negotiated and announced. In Fiscal 2023, the Company was deemed to no longer be the primary beneficiary of the VIE, and accordingly it was deconsolidated. Prior to deconsolidation, the account balances of the VIE had been included in the Company’s consolidated financial statements, including capitalized development costs that were included in property, plant and equipment.  

During Fiscal 2022, the project owner was unable to obtain the necessary equity financing for the project, and the Company recorded an impairment loss related to the capitalized development costs of this project in the amount of $7.9 million, of which $2.5 million was attributed to the non-controlling interest. In Fiscal 2023, prior to deconsolidation, the VIE settled on amounts owed for certain impaired development costs and recognized a gain of $1.6 million recorded in selling, general and administrative expenses, all of which was attributed to the non-controlling interest. The VIE distributed $0.7 million to the non-controlling interest.

NOTE 16 – CUSTOMER CONCENTRATIONS

The majority of the Company’s consolidated revenues relate to performance by the power industry services segment which provided 73%, 76% and 78% of consolidated revenues for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. For Fiscal 2024, Fiscal 2023 and Fiscal 2022, the Company’s industrial construction services segment represented 25%, 20% and 19% of consolidated revenues, respectively.

For Fiscal 2024, the Company’s most significant customer relationships included three power industry services customers, which accounted for 19%, 16% and 15% of consolidated revenues. For Fiscal 2023, the Company’s most significant customer relationships included two power industry services customers, which accounted for 38% and 12% of consolidated revenues. For Fiscal 2022, the Company’s most significant customer relationship included one power industry services customer which accounted for 57% of consolidated revenues.

The accounts receivable balances from three major customers represented 16%, 14% and 14% of the corresponding consolidated balance as of January 31, 2024, and accounts receivable balances from three major customers represented 36%, 12% and 12% of the corresponding consolidated balance as of January 31, 2023. The contract asset balance attributable to two major customers represented 39% and 32% of the corresponding consolidated balance as of January 31, 2024. The contract asset balance related to one major customer represented 70% of the corresponding consolidated balance as of January 31, 2023.

NOTE 17 – SEGMENT REPORTING

Segments represent components of an enterprise for which discrete financial information is available that is evaluated regularly by the Company’s chief executive officer, who is the chief operating decision maker, in determining how to allocate resources and in assessing performance. The Company’s reportable segments recognize revenues and incur expenses, are organized in separate business units with different management teams, customers, talents and services, and may include more than one operating segment.

- 83 -

Intersegment revenues and the related cost of revenues, are netted against the corresponding amounts of the segment receiving the intersegment services. For Fiscal 2024, intersegment revenues were not material. For Fiscal 2023 and 2022, intersegment revenues totaled approximately $0.6 million and $2.8 million, respectively. Intersegment revenues for the aforementioned periods primarily related to services provided by the industrial construction services segment to the power industry services segment and were based on prices negotiated by the parties.

Summarized below are certain operating results and financial position data of the Company’s reportable business segments for Fiscal 2024, Fiscal 2023 and Fiscal 2022. The “Other” column in each summary includes the Company’s corporate expenses.

Year Ended

Power

Industrial

Telecom

January 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

416,281

$

142,801

$

14,251

$

$

573,333

Cost of revenues

 

357,705

 

124,321

 

10,473

 

 

492,499

Gross profit

 

58,576

 

18,480

 

3,778

 

 

80,834

Selling, general and administrative expenses

 

24,274

6,440

2,469

11,193

44,376

Income (loss) from operations

34,302

12,040

1,309

(11,193)

36,458

Other income (loss), net

 

13,871

 

 

(3)

 

(1,393)

 

12,475

Income (loss) before income taxes

$

48,173

$

12,040

$

1,306

$

(12,586)

 

48,933

Income tax expense

 

16,575

Net income

$

32,358

Amortization of intangibles

$

$

392

$

$

$

392

Depreciation

527

1,073

409

4

2,013

Property, plant and equipment additions

1,266

1,014

473

3

2,756

Current assets

$

383,508

$

59,123

$

3,872

$

100,676

$

547,179

Current liabilities

256,975

41,869

1,591

1,825

302,260

Goodwill

18,476

9,467

90

28,033

Total assets

411,571

76,012

6,703

103,943

598,229

Year Ended

Power

Industrial

Telecom

January 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

346,033

$

92,774

$

16,233

$

$

455,040

Cost of revenues

 

277,402

 

78,034

 

13,243

 

 

368,679

Gross profit

 

68,631

 

14,740

 

2,990

 

 

86,361

Selling, general and administrative expenses

 

22,635

7,900

3,353

10,804

44,692

Income (loss) from operations

45,996

6,840

(363)

(10,804)

41,669

Other income, net

 

3,829

 

 

3

 

499

 

4,331

Income (loss) before income taxes

$

49,825

$

6,840

$

(360)

$

(10,305)

 

46,000

Income tax expense

 

11,296

Net income

$

34,704

Amortization of intangibles

$

$

618

$

114

$

$

732

Depreciation

567

1,978

434

4

2,983

Property, plant and equipment additions

1,450

1,717

189

16

3,372

Current assets

$

307,742

$

42,488

$

3,900

$

84,572

$

438,702

Current liabilities

170,164

29,550

1,317

1,472

202,503

Goodwill

18,476

9,467

90

28,033

Total assets

334,593

60,038

7,153

87,703

489,487

- 84 -

Year Ended

Power

Industrial

Telecom

January 31, 2022

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

398,089

$

97,890

$

13,391

$

$

509,370

Cost of revenues

 

317,130

 

81,391

 

11,117

 

 

409,638

Gross profit

 

80,959

 

16,499

 

2,274

 

 

99,732

Selling, general and administrative expenses

 

28,323

8,167

2,146

8,685

 

47,321

Impairment losses

7,901

7,901

Income (loss) from operations

 

44,735

8,332

128

(8,685)

44,510

Other income, net

 

2,545

 

 

 

7

 

2,552

Income (loss) before income taxes

$

47,280

$

8,332

$

128

$

(8,678)

 

47,062

Income tax expense

 

11,356

Net income

$

35,706

Amortization of intangibles

$

208

$

662

$

$

$

870

Depreciation

605

2,325

433

4

3,367

Property, plant and equipment additions

713

107

597

5

1,422

Current assets

$

322,448

$

25,681

$

2,957

$

156,198

$

507,284

Current liabilities

209,829

9,534

1,916

1,748

223,027

Goodwill

18,476

9,467

90

28,033

Total assets

345,956

44,002

6,741

156,886

553,585

NOTE 18 – SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

Balance Sheet

Other current assets consisted of the following at January 31, 2024 and 2023:

2024

    

2023

Income tax refunds receivable and prepaid income taxes

$

18,267

$

15,327

Raw materials inventory

9,985

11,903

Prepaid expenses

 

6,035

 

4,541

Other

4,972

6,563

Total other current assets

$

39,259

$

38,334

Inventories consist of raw materials held for use in the ordinary course of business and is valued at the lower of cost or net realizable value.

Accrued expenses consisted of the following at January 31, 2024 and 2023:

2024

    

2023

Accrued project costs

$

49,135

$

17,448

Accrued compensation

21,206

18,286

Lease liabilities

2,726

1,567

Other

8,654

12,566

Total accrued expenses

$

81,721

$

49,867

Other Loss

On March 7, 2023, the Company determined that it had been a victim of a complex criminal scheme, which resulted in fraudulently-induced outbound wire transfers to a third-party account. The Company retained specialized legal counsel and a cybersecurity services firm to assist in an independent forensic investigation of the incident and the efforts to recover the funds. The total amount of the fraud loss and the professional fees, net with funds recovered, of approximately $2.7 million is reflected in other income as a loss in the consolidated statement of earnings for Fiscal 2024.

- 85 -

NOTE 19 – SUBSEQUENT EVENTS

Subsequent to January 31, 2024, the Company continued to repurchase shares of its common stock pursuant to the Share Repurchase Plan. As of April 11, 2024, the date of the last subsequent transaction, the Company had repurchased 5,600 shares since year-end, all on the open market, for an aggregate price of approximately $0.3 million, or $44.87 per share, exclusive of share repurchase excise tax.

On April 10, 2024, the Company’s Board of Directors declared a regular quarterly cash dividend in the amount of $0.30 per share of common stock, payable on April 30, 2024 to stockholders of record at the close of business on April 22, 2024.

- 86 -

EX-23.1 2 agx-20240131xex23d1.htm EX-23.1

EXHIBIT 23.1

CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

We have issued our reports dated April 11, 2024, with respect to the consolidated financial statements and internal control over financial reporting included in the Annual Report of Argan, Inc. on Form 10-K for the year ended January 31, 2024. We consent to the incorporation by reference of said reports in the Registration Statements of Argan, Inc. on Forms S-3 (No. 333-208913, No. 333-109528, No. 333-122991, No. 333-135192, No. 333-140755, No. 333-140782, No. 333-152366, and No. 333-179492) and on Forms S-8 (No. 333-239461, No. 333-225923, No. 333-208914, No. 333-143788, No. 333-192103, No. 333-175598, and No. 333-273210).

/s/ GRANT THORNTON LLP

Arlington, Virginia

April 11, 2024


EX-31.1 3 agx-20240131xex31d1.htm EX-31.1

Exhibit 31.1

CERTIFICATION

I, David H. Watson, certify that:

1.    I have reviewed this Annual Report on Form 10-K of Argan, Inc. (the “Registrant”), for the fiscal year ended January 31, 2024;

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 most recent fiscal quarter (the Registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the Registrant’s internal control over financial reporting;

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 the audit committee of the Registrant’s board of directors (or persons performing the equivalent functions):

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

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

Date:

April 11, 2024

 

 

/s/ David H. Watson

 

David H. Watson

 

President and Chief Executive Officer

 

(Principal Executive Officer)


EX-31.2 4 agx-20240131xex31d2.htm EX-31.2

Exhibit 31.2

CERTIFICATION

I, Richard H. Deily, certify that:

1.    I have reviewed this Annual Report on Form 10-K of Argan, Inc. (the “Registrant”), for the fiscal year ended January 31, 2024;

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 most recent fiscal quarter (the Registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the Registrant’s internal control over financial reporting;

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 the audit committee of the Registrant’s board of directors (or persons performing the equivalent functions):

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

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

Date:

April 11, 2024

 

 

/s/ Richard H. Deily

 

Richard H. Deily

 

Senior Vice President, Chief Financial Officer, Treasurer and Corporate Secretary

 

(Principal Financial Officer)


EX-32.1 5 agx-20240131xex32d1.htm EX-32.1

Exhibit 32.1

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350, AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Annual Report on Form 10-K for the fiscal year ended January 31, 2024 of Argan, Inc., a Delaware corporation (the “Company”), as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, David H. Watson, President and Chief Executive Officer of the Company, hereby certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that to the best of my knowledge:

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

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

/s/ David H. Watson

 

David H. Watson

President and Chief Executive Officer

(Principal Executive Officer)

 

Date: April 11, 2024


EX-32.2 6 agx-20240131xex32d2.htm EX-32.2

Exhibit 32.2

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350, AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Annual Report on Form 10-K for the fiscal year ended January 31, 2024 of Argan, Inc., a Delaware corporation (the “Company”), as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Richard H. Deily, Senior Vice President and Chief Financial Officer, hereby certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that to the best of my knowledge:

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

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

/s/ Richard H. Deily

 

Richard H. Deily

 

Senior Vice President, Chief Financial Officer, Treasurer and Corporate Secretary

 

(Principal Financial Officer)

 

 

 

Date: April 11, 2024

 


EX-97.1 7 agx-20240131xex97d1.htm EX-97.1

Exhibit 97.1

Argan, Inc.

Policy Regarding Repayment or Forfeiture of Certain Compensation

(“Clawback Policy”)

Effective Date: October 2, 2023

(the superseded policy was effective for the period April 13, 2016

through October 1, 2023)

I.  Purpose

The Clawback Policy is designed to help deter actions that could potentially harm the financial position of Argan, Inc., a Delaware corporation (the “Corporation”), and its shareholders and to support the Corporation’s pay-for-performance philosophy for executive compensation.

II.  Definitions

For purposes of this Clawback Policy, the following terms shall have the following meanings:

“Board” means the independent members of the Board of Directors of the Corporation.

“Covered Persons” means an officer (as defined in the Securities Exchange Act of 1934 (the “Exchange Act”), Rule 16a-1) of the Corporation (i.e., named executive officers) and all employees of the Corporation and its subsidiaries required by the Corporation to sign a quarterly Sarbanes-Oxley Act Section 302(a) certification for inclusion in an Exchange Act report.

“Financial Reporting Measures” are measures that are determined and presented in accordance with the accounting principles used in preparing the Corporation’s publicly issued consolidated financial statements, and any measures that are derived wholly or in part from such measures. Stock price and total shareholder return are also financial reporting measures.

“Financial Restatement” means (1) a subsequent adjustment that corrects an error that is material to the Corporation’s previously issued financial statements and (2) a restatement that corrects an error that is not material to previously issued financial statements of the Corporation, but would result in a material misstatement if (a) the error was left uncorrected in a current report or (b) the error correction was recognized in the current period, or (3) an incorrect calculation of any performance metric pursuant to which a cash payment was made under a cash incentive award or shares of the Corporation’s common stock were awarded or vested under a stock compensation award.

III. Recoupment of Compensation

(a)  In the event of a Financial Restatement on or after the Effective Date, the Board shall reasonably promptly require (i) reimbursement of any incentive-based compensation, including compensation granted, earned or vested under the Corporation’s annual incentive and long-term incentive plans relating to Covered Persons; (ii) cancellation of outstanding incentive equity awards, or portions thereof, made to Covered Persons including options and similar equity awards whose grant or vesting is based upon the attainment of a Financial Reporting Measure; and (iii) proceeds received upon the sale of shares of common stock acquired through an incentive plan that were awarded or vested based wholly or in part on satisfying a Financial Reporting Measure performance goal.

For incentive based compensation based on stock price or total shareholder return, where the amount of erroneously awarded compensation is not subject to mathematical recalculation directly from the information in an accounting restatement, the amount must be based on a reasonable estimate of the effect of the accounting restatement on the stock price or total shareholder return upon which the incentive-based compensation was received, and the


Corporation must maintain documentation of the determination of the reasonable estimate and provide such documentation to the Securities and Exchange Commission.

The total amount of performance-based compensation that the Board may recoup under this section (a) shall not exceed the difference between (i) the amount of incentive compensation calculated based upon the achievement of certain performance metrics or financial results that were subsequently adjusted due to a Financial Restatement less (ii) the lower payment or award that would have occurred based upon the Financial Restatement.

Note that the clawbacks in the following scenarios are described where a Covered Person has received shares of the Corporation’s common stock pursuant to the achievement of a Financial Measure:

1)If the market value of the Corporation’s common stock has decreased from the market value on the date the common stock was issued, the Covered Person may simply transfer the number of shares that the Covered Person would not have received based upon the Financial Restatement.
2)If the market value of the Corporation’s common stock has increased from the market value on the date the common stock was issued, the Covered Person may return shares of common stock with a current market value no greater than the amount of the market value of the shares on the date of the common stock issuance, or make a cash payment to the Corporation in an amount no greater than the amount of the market value of the shares on the date of the common stock issuance.
3)In neither of the two scenarios described above is a Covered Person obligated to repay any cash dividends received after the date of the issuance of shares of common stock subject to the clawback.  

(b)  In order for compensation to be recouped under this Clawback Policy, the compensation must have been received by the Covered Person during the three (3) fiscal years preceding the earlier to occur of the date that management or the Board determines that a Financial Restatement is required, or the date that a court, regulator, or other legally authorized body directs the Corporation to prepare a restatement. Incentive-based compensation is deemed received in the Corporation’s fiscal period during which the Financial Reporting Measure specified in the incentive-based award is attained, even if the payment of grant of the incentive-based compensation occurs after the end of that period. Notwithstanding the foregoing, this recoupment policy shall only apply to incentive-based compensation received on or after October 2, 2023.

(c) Only the compensation described above under paragraph (a) of this Section III is subject to recoupment. Benefits such as cash bonuses paid to Covered Persons based on the discretion of the Board, options and other stock-based awards where vesting is based solely on the passage of time, time-based retirement benefits and earnings under any deferred compensation arrangement are not subject to recoupment under this Clawback Policy.

(d)  For the avoidance of doubt and in accordance with the rules of the Securities and Exchange Commission and the New York Stock Exchange, the amount of any recoupment determined pursuant to this Clawback Policy shall be computed without regard to any taxes paid by the Covered Person.

IV. Administration

The Board will administer this Clawback Policy and have the full authority and discretion necessary to accomplish its purpose, including, without limitation, the determination of the amount of, and manner in which, compensation is recouped, in accordance with applicable law, including, without limitation, by seeking repayment or by offsetting any salary or other compensation due under any compensation plan, program or arrangement maintained by the Corporation or any of its affiliates.  All determinations and decisions made by the Board pursuant to the provisions of this policy shall be final, conclusive and binding on all persons, including the Corporation, its affiliates, its stockholders and employees.  All determinations by the Board implementing the policy shall be made in its sole discretion and exercised in good faith.

V. Amendment and Termination. 

This Clawback Policy may be amended or terminated by the Board at any time.


VI. Miscellaneous.

(a)  Any applicable award agreement or other document setting forth the terms and conditions of any compensation covered by the Clawback Policy shall be deemed to include the restrictions imposed herein and incorporate the Clawback Policy by reference and, in the event of any inconsistency, the terms of the Clawback Policy will govern.

(b)  If any provision of this Clawback Policy is determined to be unenforceable or invalid under any applicable law, such provision will be applied to the maximum extent permitted by applicable law, and shall automatically be deemed amended in a manner consistent with its objectives to the extent necessary to conform to any limitations required under applicable law.

(c)  Any notice, demand or other communication required or permitted under this Clawback Policy shall be effective only if it is in writing and delivered personally or sent by registered or certified mail, return receipt requested, postage prepaid addressed (i) if to a Covered Person, at the address most recently on file with the Corporation or (ii) if addressed to the Corporation, at its principal executive office located at One Church Street, Suite 201, Rockville, MD 20850, Attn: David H. Watson, Chief Executive Officer.

(d)  This Clawback Policy shall be governed by and construed in accordance with the internal laws of the State of Delaware.

(e)  Any recoupment under this Clawback Policy may be in addition to any other remedies that may be available to the Corporation or to the Board under the Corporation’s policies as well as applicable law, including disciplinary actions, including but not limited to, termination of employment.

(f)  The Corporation is prohibited from indemnifying any executive officer or former executive officer against the loss of erroneously awarded compensation. Further, a Covered Person may be able to purchase a third-party insurance policy to fund potential recovery obligations, the Corporation shall be prohibited from paying or reimbursing the executive officer for premiums for such insurance.

Date:

October 2, 2023

 ARGAN, INC.

 

/s/ Richard H. Deily

 

Richard H. Deily

 

Senior Vice President, Chief Financial Officer


GRAPHIC 8 agx-20240131x10k001.jpg GRAPHIC begin 644 agx-20240131x10k001.jpg M_]C_X 02D9)1@ ! @ 0 ! #_VP!# ," @," @,# P,$ P,$!0@%!00$ M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_ MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04 M%!04%!04%!04%!04%!04%!04%!04%!3_P 1" ! ( # 2( A$! Q$!_\0 M'P 04! 0$! 0$ $" P0%!@<("0H+_\0 M1 @$# P($ P4% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#]3:*** "B MBB@ H)HKP']L3QU-8:QXMBN[6.Y1BK10QPDRD$-O'0 MU\X> OC1::3H2> /B#X>FAGTR);-B(0Z.B<)N3@@@ 89<@\$8KL-'@\."59? M#UQW(!_4UA[*M*:C7A.#C)N,HKGA./2]O(^>^L5*\KMM>FQ M]6_#GXW10Z9*E[X\O+.^BB_=)JEZV2P]?.RK?F:Z;P;^VOHEIKT6C>-+S3[> M"9Q'#KMG,OD!B< 3IN.P?[8)7U"CFO$O!VG:]JVF72Q?"W0-601'-SJ$J08_ MV@"&->"_%[3I-%>;[;IGAG06.^%)(A9S M3<.]C+N\M<'G$;(ZC/\ "4':OLNO'K4I4*CIRZ'HTZBJ14D%%%%8F@4444 % M%%% !1110 5\<_\ !0WP1KNM1> _$GAJ<0:]HLMV+/S?]3,SJA>!^WSHCXS_ M '.W6OL:N3^*7PZL?BGX*O\ P]>SRV1G DM[Z RVDZG,"E M\P,5L?$-E;"?3]04='B9L-&W%M$O9;7PZLFN:@<@WLKF4D]SYAX_[Y&/>O&+]O'?Q M*\1S$FS2SM-.+ 85IFD>0@?[JJ/^^QZU^C]>=? /X+:3\!?AO8>%M*?[0ZLU MQ?7S+M:[N7QOD([#@ #LJJ.U>BUY&+K*O6E46QZ="G[*FHL****Y#<**** M\5\^0_&ES^UM)X6-T?['DL#IB1EOD^V*/.+8Z9/S)^ KW+Q)KD/AKP_J6JW' M,-E;O<,/7:"+ SG4KB*'6IG.3F]23?.G_ (\H MQZ&N>^*7Q\\?7'@O4O#EEI%QX;77&M=>N62-&:V#*9"58Y55C+8*98O MU&,9M58NM[#K:_D:2JQC+EZGUMFBOGG3OBMXL^)"^-]0T/58_#UCH-B]S90B MTCG:X8!ROG%P>"(^0N,;NO'/&? ?]IOQQXY^'GB_QKKZ7KD6H1:H^;G1K_38XXB A$=5T"2&"#6K,7+6US"LA4D1L &^CX_"KEC7AJ'MTVH MZ;>=O\R9U:?+S26UOQ.R\/\ P%\.>'[=X([K5;F%AM>.:Z"AAZ$HJG'XUV^A M>'=,\,V(L])L+?3K8'<8[>,("?4XZGW/-?*WQ0^/OQ+^$/[1'@/0-6OM)O\ MP_XDFMTETRUM-OV=)9C#A92=[.APV[@-_=%?77+ M]8O?#_AO4-3L;:&\ELH7N&@GD,8=44L0& /.!QQ7EOP%^/>L?&[5-;V^'[+2 M-)TETAFE-Z\L\DCJ64*GE@ #DD]^!7IOC__ )$/Q+_V#;G_ -%-7RK^QS>W M.F^!_BU>V4PM[NVEBGBD9 X#+;LPR#U'&*X)5'"JT]N6_P")G.;C42OI8^R* M*^3=8^-'Q0U#X'>*O&&F:KI.FOH4NYIC9"269<)F-5/R*!OSN(8GI@8S6M\/ M?VJ=4\0?LWZ!XMO;.VE\6ZCIZIN,@XKFA2:J2J2UO:WHC.5+FYK]3XU_9J^,.G>-OV/?$/AV?4[9 MM;\,P36$ELTP\TVY8- ^,Y*[6V ^J$5[%^Q[FPR,NTO'9QJ2,YQD#IFK=MI5IIWFO96=M:2R#YFBB M5-V.F[ R>M%2DI8EXA;6M;YW)C2<9J3>RL?,>G2>&;74O'UOHGC73?!VF:HL MFFR0ZT@=P/F#30_.@"_.X4,6]\<5T'A.U\)_L^_ &^'PXU&T\3*+D&YU-)X[ M@/:4=+N-(L9],)R;*2V1H M"@JZN%E5P:PSEKIKZ6_R M-)8=R@XW[?@?#'[;>JV4?[4OP9D>\MTCCFTYG9I5"H#?9!)SP,W)LH-0)4Q-N.QS7IUYX4T346W76C:? MHSC.#7+.DY2< MK[JPYT^>7-?H?'T5[;I^QM\5E:>)6\PC!< Y(AP/QP%8UE(9=#LX&>:)N!)*Q^XL*\L9"P&. M.6(6K7AS]I#1_$?QJN_AQ%I-_#?10SRQWK &)_)($@8#E.O!/7V)%>FZ7X=T MK1'F?3M+LM/>;_6M:VZ1%_\ >*@9_&I8=(L+?4)K^*QMXKZ=0DMTD*K+(HZ! 3F R1]378E) GRAPHIC 9 agx-20240131x10k002.jpg GRAPHIC begin 644 agx-20240131x10k002.jpg M_]C_X 02D9)1@ ! @ 0 ! #_VP!# ," @," @,# P,$ P,$!0@%!00$ M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_ MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04 M%!04%!04%!04%!04%!04%!04%!04%!3_P 1" ,$ \L# 2( A$! Q$!_\0 M'P 04! 0$! 0$ $" P0%!@<("0H+_\0 M1 @$# P($ P4% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#]4Z*** "B MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *** M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *** M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M **** "BBB@ HHHH *^)OVE/VB_B9XO_ &E-(_9[^#%[8>'];DM/M^M>)KZ/ MSOL,)&2$3!^8+M/3EG49 R1]LU^<7QNUF7]D'_@H;#\8_%-C>O\ #;Q=I8TN MXUBVMS*ME/L5<-@9X\I3CJ06P#C% 'H&A:#^UC\ _C#X2L;KQ,/CUX#UF<1: MI3._:,*VY _@'I,7 MQ&AOY]VN:C/;W%O!9V^1F0.RJ5V#<264@_*HY->6_$'Q2?V(O^"B6L_$OQCI MMV/ASX_T\V1UR"%Y4M93Y;'..X:$94<[6R <4 ;'Q)^)?[0?[!7BOPAK'CWQ M[!\8OACK5^NGW]W-IJ65W92MR I;'RAF4[B#L8$#C/$_P#!07]J;XN_#_\ M::T+1_AMXPN]/T"3PS;:VVG0I&8[@!YW<_,C-EDC _#M5C]MO]H_PW^W O@7 MX+?!26Y\8WU]K46I7^H6]I+%#;0QJZ\F158 >869L *.>:M_&'X?6^J_P#! M3CX8>$+O;_>@#T[]M_\ :M\2:+^S;\/-3^&6L2:9 MXH\:I'?6UU JETM8X/.G;Y@0/X5/'>O'H_VI_BLW_!+_ /X60?&E]_PG'_"1 MM9_VSLB\WR?.V[,;-N,<=*\L_9UT'Q%\0/$GC?PGXDC9K#X,^#=>TJS4,S-Y MDTLV">P(4[1C^&(4V,8_X(W$>GBU_P#T>: /;OBWHW[2WP)^ %O\8A^TFWB& M*&TM+]]!U'0X;=9%FV'RU<.V\C>.-HR 3Q7:?'G]LCQIK7['?PGU?P=(V@_$ M_P")-U:V-FMH@+1R>9ME:,-N^5F"@9SP]3_##_@E7\(=?\(>$]:U[7/&_B"& MZT^UO9M)OM:46;L\2L5Q'$CAF6\N -L9!RFY-H!&"G/3% 'T?_ ,$^/CAXR\=6/Q!\ ?$O M5GU?QYX)UF2TN+N951YX"2$?"@#&5...A%>%ZMX[^+GQ9_;(^+W@33_VAF^$ MWA_PXR2V2W5E;3QN&V#RU\QXR,9)SN-<[X0\1_%7]FK_ (*"^&_$WQATWPYI M"_%"(:1>-X8DD-D9"52*0^820XD$8.3C:Y-6/!_[-7@']IK_ (* ?M&Z)X]T MF34[>R@2>RDANYH'MIF*)Y@\MU#$ ]'#+[4 =I\#OCU\4_AS^VOHWP9\0?%. MP^-GAS5[%[A]5M+6..2T?RW<;O++!2I3D;F!5P>#P.L_9D_:*\>ZY\7_ -JF M#6]5N_$VG>"YC)HNDNJ 1!6NOW:[5!.1&@YSTKR?]A^[L?V./VJ?$'P(\;Z! MI5O?ZF[-X=\8FT2*[NXV.8X7FQET< [>>'4KSD8WOV--7UC0/V@_VS-2\/Z0 MFOZU:7R36FEO(8Q=2++=D1[@"1GIT- '&_ _XQ?&O]JW2M6\2Z7^TSH?@CQ> MD\HL_AXVFQ*"$_U:-)(RD;SQE0_7DYR!]9C]H;XC_ O]D'6?'?QM\-6FG^.M M%#VZ6EG<120ZBY*B"3,3L$W%OF&01L8@#(KXJU;QC^Q=\>O#%YXB^(6DWOP5 M^*:R2_VA9: MTLJW"LW**L;0L6X)+(C9)!/>M;X1?#WXI?M)?\$V_'NA7!U; M7XK/5_M7A%]3+&YO;:$Y:-,\LN0P49(W;E'3% 'K?PN\$_M>?M _#BS^*!^- M-CX%N=7A^WZ1X4CT=)+:2$C,(FDSF,.,'A7.T@GG('0_ _\ ;'\8_%+]FOXW MVOB>%?#_ ,6?AYI6I)=36B!5\Z.WE,4^HZ-J-VBQO>0@'S(Q@ $IC<,#D;O[IKUG_@F_\ M&+QE\8O"GQ-NO&6O7&O3Z9XLN+"S>X5 88%12J#:HX!)Z\U\>^&O@!K/B#]@ MSX:_&?X?!K7XC?#^>YOE>W4;[JS69FD7_:*,;#3E@F\,FQG,[7$:;=JO MM*8)'4L..HH SO#'[;GB7XO_ +"'Q1\6QD^%_B=X-B:ROY+11M6<,NR>-6! M# L"ISAE;MBN+^"&@_&CXP?"SPQXNN?VT(?#=YK5JMPVCW&DV/[HZ]*X?X0_";Q-X1_X)Z?M$>._%%C/I,_CH?VC9V5P"D@ME?*RE/X=YD; M''*J#T(KV+]C?]@#X"_$+]G/X;>--?\ ?V_Q-?Z?'>W-]_;%_'OF#G#;$G" M#H. H'M0!]Y>&M/O=)\.:58ZEJ#:OJ-M:10W.H-&(S=2J@#RE03MW$%L9.,U M^?'[>W[46N>#_P!I#PYX"TSXP3_"#P_;Z.][JVKVVE_VBWFL3Y2>2HWL3@#@ MC )/.*_1FOB?XN?M/?#7X*?M:W&D?%3X<:1X>LKS2O,LOB'/8BZFNQQ^Z;9$ MSA"M6UV?X[_ /"\;"\F1;>Z;21ISZ>5!W1M M'N+ G(.& -_'_A/3Y-,^%^N:G'%HZ-"8HYY$9V=XU(& M!\W_ (\!VQ7WGXGTBRU_PYJ>FZC;1WEA=VTD,]O*,K(C*05(]Q0!\+?&7]KK MQ%^T/\2_AE\+/V?/$4FGW>M01ZWK_B.T1)#IUF1GRCN! 8 DMD=3&!U(&5^U MY\0_B?I7[7OPU^%'A?XQW7P[T75/#,4UWJ]S;P3*9Q- 3X53^T2[W"C'VF[V\VY$GWL?=H ^@?A3\*/BE8_$/0 MKK4/VQ+;QQ807 DG\/0Z3:(U\@!S'N2X9A]0#TJ?]OSXQ>/=#UGX:?"_X4ZV M^A^.O&&I$"[A56:&V0?,Q# C;DY/^[7F_P $-4_8"\&?%/P]J/PZO;:T\:&Y M6WTR19M^+7[0W_!0#QMXX^#5CX9U@?#R+^P M;1O%,LHM$(W)(Z"-E);@YQMQUH ^JO^"=/[0&O?'/X'SP>,[J2Z\<^&M1 MFTO5GG4+,[!B59U !P2IP!]ROF'P!XR^,GQW^-7QDTH?M-GX7:9X9\17-E8 MV=Y86LXDB\Z0*J%WC("A0.]6OV7-9^(/[/'[?FN>%_BE8:+H][\4X'U(1>'Y M'-A]L!9\Q[R2"Q63()/+#UQ7*_L]_LA_#[]JCXN_M0VWB_3YFU>S\2WD.EZK M;WV?L=_'[XDI^UCXN^"WBSQ]9?%O1=/TMK^W M\3V5ND9C=6C^5]F5&1(5(RV"!@]:^Y/%_B>R\%>%=7U_47V6.F6LEW.W^PBE MC_*OSR_X)J^+[3X(?%+Q=^SUXS\/:1H'CNQ=WL-8M[5()]:A3+%'? ,A"?O% MZY4-_=K[S^,7@N7XB_"GQ=X7@D\J?5]+N+.-SV9XR!^I% 'P[\'M?_:6_;GT M;5OB'X?^)]I\'/!?VR6VT/3;/2UO)KH1G#&4L5PN>-V220_R@ $^O?!'QY\? M['X1?%6R^+^C1V&L^&;*[_L?Q5:!$34?+BD_>"/.>"J,K[0&#<\CGP;]B3]L M?P/^RQ\(KSX1?&6>\\#^+O"5[ZL)G%W&[F1=AC0\_,1\V 1M()SQ[C^S MQ^T#XZ_;'^'WQ9N)O!T>A>"YX;O3O#&IR!XIM0#HZC*MD':"N74A=Q(QP< & MQ_P3:^*GBOXQ_LP:?XD\9ZU/K^N2:I>0->7"JKE$DPJX4 <#VKPOX'?M'?$G MQ-\)_P!KK5-4\67EY?\ A"XOTT*=TC!L @N-@3"X.-B_>STKE_V OVR?AI^S M)\$-6^''Q2U*[\'^*]!UB\9["[T^=I)@Q#8 5#M8$,I#8['/-9/[+ND:AJ7[ M'W[6_C][">RT'Q=_:EWI;W*%6FC$1_#'7_ !)/;6&E)'%Y,UI$7CSG;NPQ3=G=WKRFXN-<^"/[(GP(^,?A MA%BU.-=;T">0,5REUYRHS$-OC5XVTW_@IOX%^'-MXAN8?!-_H,EUU>16'Q9T']D#_@HW\5]7^)S76@>&O&>G1R:=K36LDL!*M&V/D4DCY7!* M@X( (YJ3X<>/M*_:I_X*AZ1X]^'9N=8\&^%?#SPWVL-;210[FBFC0#> 06:7 M ! )".0,*: /6OV4_C3XV\=?MG?M">$->\0W.I>&_#TRKI6GRJ@2U'G,N%(4 M$\ #DFOLR65(8WDD8(B LS,< =37Y;_ ._:'^'G[/7[>?[2E]\0O$D?ART MU*]\BUDDMIIO-=9V+#$2,1@$=<5[O^T;^WW\,M<_9?\ B1J_PW\7Q:]J5O;) MIH\JVG@,4MUN1"/-1<\!SQG&V@#YID_;>^+P^-EQ\5AX@N/^%#IXX_X1L:7Y M2>3]GV[?-W;=WW=LAY^\V*^Y?VD?A'\5?B'=VVN?#WXW77PVTRRL':;3[;1H M[U;MQE@^]I%V\<=#7P/:?LO_ +37_#%1\ )X6\ 2^!YK=O$1E::X.LL[?Z1N MSNV>:%P@&WH .O-?:7["GQO;XY?L:Z9>WDOFZWHEA+HFH%FRS201;4D/NT>Q MC[EJ /G/]B"S_:(_:B\"VWCZZ_:,U+2+&SU8V\^C/H<%Q]H2,HS#S0Z;=P)' MW3CWJS\._B[\:_BS\"/VF+S2/'FI1^*O!_B&XDT6:.*(LEM S,]LHV8(:-6 MSDYVUWW_ 1R_P"34[[_ +#MS_Z E4O^"75M'>7_ .T1!,H>*7QG=(ZGH06< M$4 >L_L]?M86WBO]B2+XL>(KX2WNBZ7/_:TS 9:YA!!R!W8[> .K5\VV/QR^ M-.G_ /!.3QO\8M6\:ZE%XHU?589]&D:.(?8+/[4D86,;,$,"_)SQMKYL^(VE M>,?AC\0_'O[).@P2MHGC'Q=8W5FRYWI:LQ?8 /X3^X.>PB;/6OO?_@H;X,L/ MAW_P3NUWPQIB".PTFWTRSA &/E2YA&?QQG\: /.? /@7XQ>-?!.A:_/^V]:Z M3-J5E%=O8RZ19,]N74,4)-PN2,XZ#Z5]W?"S1]5T#X=^']/UOQ/_ ,)IJL%H MBW'B#R5B^WMU\W8K,!D$="17Y>_#32O^"=C_ ]\.-XL>V'B8V$)U+-UKP/V MC8/,XC;9][/W>/2OTU^"?B3P7XK^%7AN_P#AW=+>^"A:BVTN5!*!Y,),07]\ M!)P4(RW)QGGK0!YO^TM\'_BK\0+VUU;X?_&JZ^&5C864GVG3[?1H[T7;C+!R M[2+MX&,8-?(G[#UM^T3^U/X*7QS<_M&:EHME8:Q]DGTA]#@N/M*1['8>8'3; MN#%?NG'6OTI\1_\ (O:I_P!>LO\ Z :^&O\ @C6-W[+^M ]#XAN!_P"0HJ , MC1/B_P#'']M_XR>-]*^%GCBW^%?PT\*7;6 UR/3UN[J]F5B 0C$9#;2?O+A2 M.I)QN?"_]H#XM?L^?M3:)\$/C3KEKXWTGQ/%_P 2#Q9!:BWE:3G8)4''S,I0 MCG!*G)&:\H_9-^,.@_\ !/OXH?$WX5_%[[3X7TZ]U-M3T?7)+6::"YAY"G** MS'*[>0#R&!Z5HWWC"']O/]OOXU:O\ P5C_ .3*?%7_ %_Z=_Z51UXS^W7X[U"[_91^ M"?P?\.,LGB7Q_'80+"7VYMXHXR=Q[!I'C'T#4 97[''[3_QFT_X]> ]-^+OB M*YU7PS\3=$EU#1(KJ.-%M9/.<1JI5022L8X/:5:]W_;*^,GC3X=_M(?L[^'O M#FOW&E:-XBU.>#5;2%4*W:*\("ME21@,W0CK7R=^U1\/OVF/!'PT\ ^+_&'A MSP#I^B_"VX@ETZ?PK+S H=B;L =,^U=[^VQ\:O#FK_$?]D#XH M7E\MEX:N3)J\UT59Q#&WV9FR%!)*DD$ 9R* /TZILA(C+M,\+^&?B!;ZKKVI2>3:6::?>1F5\$XW/"%' /4BO>YO\ 5/\ [IH _*+] MEWQ/\;?VD?!VK>(-1_:T'P_DM-0DLTTZ_P!.M)G=0 0X+21G'..AZ=:]O_8< M_:/^(?CGQ!\9O ?B_P 46GCK_A#(RVG^+;"%42X_UB\E1M)^4-WP0PR1@U\O M?L;_ +"W@?\ :G_9@\>:E6R,>"=NX Y M!XKZ&_X)P_%C3A\-O'OP>UGPSI?@_P"(OA.WG%];V=JEM)J,2J4,[A0-[J2J MLW.0R'^*@#S/]E_7/C9^T;\/;GQ1J/[7*^ ITOYK,:5?:;9ROM3&'W-+&<'/ M]WMUK[&^&GPH^)_K7Z:?L9>(/ M@!-X-UGP]^S]>13:!IMVMS?6T9OF\J:9!-4^+-]XP?7]9NUUC4#I\5I]NA\R'RXFCR^ H9AD,,YJ7X@?\IA? M G_8G#_VZI__ 4S^U^!/B9\!/BK/IUW>^&/"NLO_:DUK$7\A':(ACCIPC8S MU.!WH [G_@J!\9/&?P3^!>CZUX'U^X\.ZI-K,5O)#_B7-\-]/\4PO'?:F((I8HFW@"5UDQG [;EZUY;^WY^T MU\/_ -L'PAX'^&7PCU:?QAXIU378'6"VL9XUA&"/G,B+TW9)&0 I).!76_M^ M^ -$^)'[9G[-GA'Q/9?VGH6I^9:7MH)I(O-C+C(WQLK+TZ@@T <=\<_BS\:? MV0KKPCX@MOVD]+^,T.HZFEI<>'FT^WCD,?4D"*20D'E2>_%3X.>&_ M^"?@CL593^M &Y^U]^UYK5W\%_@ M7X[^%WB6?1;/Q7X@AM[W[,$9F0H?,@?<#@JP(.,'BMK]K3]J'XJ_"SXM:+HF M@Z#:W^C:=/#KEW)I5W<&0Z9L,3K?C[*XC0S,"#$S-A.AZU\(?M2?#'Q+^S-\ M9]$^$I=YOAS=^*;?Q/X<:09\H.WE21J?;(##_84_Q'/[E);0RQAGB1V:,(Q9 M025]#[>U &3X$U35-;\&:+J&MQ6,.K75I'-_LIEV2VUU$LD<@]&5@01]:M44 87A;P'X9 M\#02P^&_#ND^'X93NDCTJQBME<^I"*,UHZMH]AK^GS6&IV-MJ-C,-LMM=Q++ M%(/1E8$$?6KE% &%X6\!^&? T,L/AOP[I/A^*8[I(]*L8K97/J0BC/XT^X\% M^'KOQ+!XCGT'3)O$,$?DPZM)9QM=QIS\BRD;POS-P#CD^M;5% &'9>!?#>G7 M.KW%IX>TJUN-8S_:4L-E$CWV;[V>I]:I_\ "K/!?_",_P#"-_\ M"(:#_P (]YGG?V1_9D/V3S,YW^5MV;L\YQFNHHH BMK:&RMHK>WB2"")!''% M$H544# 4 < <8K)TCP1X=\/ZOJ&JZ7H&EZ;JFHMNO+ZSLXXI[DYSF1U4,YR M2?F)ZUMT4 8?B3P-X;\926&]2U'4=(T'3-+U M#4F#WMW96<<,MTP)(,KJ 7.6/+$]3ZULT4 )]6&J:QX.T#5M3&" M+V^TN":88Z?.RD_K7411)#&D<:+'&@"JJC '0 4ZB@#E]8^%G@OQ%K2:QJO MA#0=3U:,@I?WFF0RSJ1TQ(REACZUOWVFVFIZ?/87EK#=V-Q$T$UK/&'BDC88 M9&4C!4@D$'@BK-% &9H?AC1_#.D)I6CZ38Z3I: A;&QMDA@4'KA% 49[\5!X M7\$^'? ]K-:^'- TOP_;32>;+#I=G';)(^,;F"* 3@ 9/I6U10 5RUU\*?!- M]KXUVY\'Z!<:V&#C4Y=,@:Y##H?,*[L_C74U^??[17[0>CGX]ZSXJB^(.BZ, MGPEEMK2S\.W.KP6]QJ]Q*X;4RL#,'D"P^7&N ?G5\@ZOX!TKP+X)_!GA_P ;626?B+0M-U^T1MZV^J6<=S&K>H5P0#[UXOXL M^.OQ'U?X@>)/#OPO\ :;XGMO#)ACU2^UG5S8AYY(Q+Y%N!&^YPC+DL57+ 9Z MUSP_:V\6>-[KP18?#GP#;ZOJ?B71;O4I8-;U(V2Z;-;S"&6*9E1RQALK"U@L;.!0D5O;1B..-1T"J !["K#*&!! (/!![U\O MV/[7'B?Q+X5\+6'A[P#'>?$_6[^_TY]"NM0\JRLC9-MNII+C:3Y0)4+A26+C MBNX_9^^,_C#XD^)/'7AWQMX0M/"6M^%KBU@>.RO_ +7%<":(R!U?:OR\#&1G MU H ]1\.>#M \'0W,6@:'INAQ74IGG33;2.W660]78(!N8X')YK/\4_"OP7X MYOH[WQ)X0T'Q!>Q1B%+C5=,@N9$0$D*&=20N23CIDGUKY$_;2^*^F:Y\4K?P M=%\0M%\$W'@73#XJ(U/5X;$W^J'BRM5$C N!&)G8#(_>1YZBO7?$W[45[)\) M?ACXM\#Z#;>*KSQQ=065I:RWGD1QR21.QW. V K(0>.,'O0!Z78? ;X9Z7>P M7EE\._"=I=P.)(KB#1+9)(W!R&5@F00>XK?\->!O#?@QKP^'_#^E:$;Q_,N3 MIME';^>_/S/L4;CR>3ZFO ]4_:&^*^HZ]K&B>#OAKI'B'4/"=M;CQ1)-K9MX M$O9(%G-K9L8\RLJ,IW.$'S#I6'K_ .VIK6G_ +^'GCJ+0/#6DW7BFT>ZE_X M27Q''86=H5)'E*2K33.<<".,]#DCB@#Z9U7P1X#= \,WFH7>CZ'INDW6H2&:\GL;2.%[F0DDO( MR@%VR3RR_ +XNZ]\3(O%.F>+/#EOX9\5>&M1_L^_M;*[-U;.6 MC61'BD*J2I5AU YH [F\^'_A?4?$MOXBN_#>D77B"VQY&K36,3W<6!@;92NY M<9/0]ZWZ\O\ VHY7@_9O^)TD;M'(GAV^970X(/D/R#7FNK?'3Q[X?\0^!_AY MX$\$V'BK5;[P7'KK7>IZH;.T<1$A",2#N&, G)'8$@ ]X\4?#CPGXWF@F M\1>%]%U^6#_4R:II\-RT?^Z74X_"MVVMH;*WC@MXD@@C4(D42A50#H !P!7S M1:_M9>)?%G@WP''X3\"PWOQ"\4R7\?\ 8VH:CY%I8BQ<)=223A2Q4,5"X4D[ MO:O<_AIKOB7Q'X0M;SQ=X;'A3Q!ODCN=-CNTNHP58@/'(OWD8 ,,@, <$ T M'B/X5>"O&.I)J.O^#]!US4$4*EWJ6F07$J@= '=20!]:V[K0]-O='DTFXT^U MN-*DA^SO8RPJT#18QL*$;2N.,8QBKU?G_P#'[Q]\2KA_VIM.U2"W'A72;#3C M9&VU*62:W!*M%Y46P &5YKC?A9^WTGC#QKX5T_7(_ ]MI7BJZCLM/AT#QE;:GJMI-*I,2W=J MF"F3A"4+;68;L4 ?5?BCP7X?\;V26?B/0M,U^S1_,6WU2SCN8U;^\%<$ ^]2 M>'/"FB>#M.%AH&CV&AV(;<+73;5+>+/KM0 9KS_]IWPMXJ\:?!O6-&\'7MQ9 M:O"&<\12/&'4,>F>V%[;P_I?Q M$^"/B*YN'@GTOQ1)=W>E^)28V+6ZSRSRP-*N-ZLC*W!P#F@#ZIU;X'?#C7]2 MN-1U/X?^%M1U"Y&O M!MG#3;**W25L8RRHH#'''-?'?[*Q^&D_QY@D_9ZG\0R_ M#U-*G'B0W?][(7^'\:V/VP? ]]\2_C/X6TV\^$_B?XG M^&=-T:XN#::1J3Z5;_:GE55+W?G0KN5%8[-Q)STH ^LO#/@_0?!6G&P\/:)I MV@V)KO ML W-[G)KXUM?^$/^)?@WX1?"CPC9^(/!'@?5]=U.S\0Z#+?W":A$UG"\LMC+ M.TC2A6D*[B'Y7H1FJ7C6:]_9BT+XU^!/ NK:G8:%!INCW&CI."1P>A-7?$'AO2?%FE3:9KFEV6LZ;-@R6>H6Z3PO@Y&Y'!!P0#R.HKY9T/X M0Z1^RO\ M"?"JP\$7VLII7C8:CIFNV.I:I/>QW<\-H;F.\Q,[;)=T3*2F 0Y M&!77:SK4VC?MGZY_B1\3OV??%FO:1\/H;7X9WL@M[+6AJV-3*)=+']I:V"X6(LAXW[ ML$'% 'W:Z+*C(ZAT8896&01Z&LGPQX.T#P38-8^'=#TW0+)W,K6VEVD=M&7/ M5BJ #/ Y]J^8?BK^VTW@;XBZCX+T >!TG\/V]LVIS>,_%T&BO*\L0E$5JD@) MD(1ERQPN6 SUK>\2?ML:7X:^'/@?XFSZ'<7/PY\1VGW0K+%*OHR,""/8BN =6TS3M-OO _AN]T[3E9+*TN-)MY(K56.6$2%,(">3M R:["B@#BM&^"7P MZ\.:G;ZEI/@'PQI>HV[;X;NRT:VAFB;&,JZH"#@GH:[0C(I:* ,?PSX.T#P5 M9R6GA[0]-T&TDE=!10!Y\?V>/A4Q)/PS\'$GJ3H%I_\;KH?"?P^\+> MEN5\,^&M'\.KF37044 8TW@SP_<^)8?$)/LFIVJ7$6X=&V.",C)YQ5)?AOX22_TF]7POHHO=(C$6G7(T^'S+ M)!G"PMMS&.3PN.IKHZ* ,+Q+X$\->,Y;*7Q!X=TK79+%B]J^I645P;=CC)C+ MJ=I.U>1CH/2MP# P.E+10 4444 %%%% !1110 4444 %%%% !1110 4444 % M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44 M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !116 M+XR\9Z'\/?#5]X@\2:I;:-HUBGF7%Y=/M1!_4GH .2>!0!M45XSX/_;%^#WC MSPMXD\1:)XSANM*\.Q"?5'ELKJ"6VB/20PR1+(R9XW*I&M 'JE%?+GBW]NGP+ MK'BGPIX=^&_BW2?$&KWGBJQT;48&@F*M;2NRR/;R$*DN,#YXRZC/O7=_M0?M M+Z)^S+X;\.:MK!!35M:M-.(:&:01P-(HN)OW:,28XRS!>K$8&3Q0![117S'I M_P"W'X#\-^,?%&G>._%>G:)8C5(+;0B+6Q MS36<\=M,MO<-&RQRNF\(Q'#%']"\9: MRYFEU'7M1T>$W%[/*[/)(2V]ER7.!O.!@9XKUC0-?TWQ3HMGJ^CWT&I:9>1+ M-;W=LX>.5",AE(ZBOG"3QA\=OB+\7?B5HW@CQ%X*T/0/"FI6^GQ1:UHUQTAG+%TG0=9"/N]J .G^''[,=UX#N_AT\_B\ZO;>"/[2@L8GT_RW>UN>(86 M?S6YA7"[L?, .%Q4FI_LQ?VC\+OBGX._X27R_P#A.-;N]9^V_8,_8O.>-O+V M>9^\V^7C=N7.>@Q2?"[]H2ZBT?Q[9_%D:5X2U[P'-/VNQ\-OV9]-^%WB7PAJ.E:Q<3VGA[0KG1O)O(@\UW)/.LTES) M*& W%U8D!.=W48Q7?#XG^%V\<0>#UUB%O$D^GG58[%58EK4,%\W=C;C)'&<] M\8J]X+\9Z/\ $+POI_B+0+LW^C:A'YMK(M3U*S\6>&_#8U2+34O#NDM[NR$A>:)^%!3^) M 3M'7I?V(-!\3/J7Q,\8>(=3UG7(O$5]:-:ZMKVD_P!E3W8B@VNZ6F28H@6V MJ&.?E.:]9C^)U_'^T%K7@^Z:T@\/V'AF'6?/=2LBR-/(CEG)QL"H#T]>:S?A M]^U_\'OBGXV;PEX7\%=(F\1ZCXNTW1?'GB'7-6GU.XU34]&B+(KX6.!!(9"J1QHBCYL$@G SBL M#P[^R[T^WT_Q,D'AO2O&#>*M*T9--VK8H\3+)9HXEQL,CLZMM&W<1M/6 MM:S_ &TO@K?^,['PG#X^L3KUY#/[&M .GW*:EH<&L1A)G$K*8Y'41S* M< NI.#D_LKRW<2P3KY9=&# X93QT- 'B7PM M_9!N?AS?>&[FZ\=3^(I='\3:CXD>>[TU8YKI[R QNCLLFT$,Q?<%YSC:.M=/ MJOPS\3^!]2\6Z_X2UKS=4\4>)-+O);?^SE<0VJO##9@%>RDXS MG6WQO\0S?L2#XLM'8_\ "4?\(4?$/EB)OLWVD6AEQLW9V;NV[..]&K?79]:\5([6\\KJN;>UA61"[9))^?*@C@T >]_ M%3P/_P +,^&OBCPE]M_LW^V]-GT_[9Y7F^3YB%-^S%_L7V7;YO[Z.3S]^\X_U>-FT]<[N,5-\&M7^(UW!JMA M\0]/TAKBSD06>O:#*!9ZE&RY)6%G:2)E/!#<'(P3S572?BI>3?M!^+O!5]+8 MV^C:7H>G:C;.WR2M+/)<+("Q;! $28 ''/6@#A+C]DG4M.\.>'#X7^($OAOQ MIX>U#4[O3_$"Z2EQ%Y5]*9)K>6U>3$B_< .\'* \9(KTGPE\/_&/AKPII.GW M7Q%N==UF/4/MFJ:MJ&FQG[9&22]O%$K 6Z= N"Q4#^+.:Y7PG\?XY/B1\:;/ MQ+J>E:;X1\$G36@U%FV!(Y[9I)3*Y8@X8 # 'IR:WOA+^T[\,/CD-4_X0OQ; M;:J^F+YEW%-!-:21Q_\ /39.B,8_]L K[T ='X)/B8Z[XR&NW'VC35U4#1LV MRPE;7[/"2O!)<"4RC>V"<'C !/DOQ4_92U+XA^(_B)=V7CK^QM&\;Z7:V5_I M%_%,&M_:=$\3S0P:1/;V MD\CW'+K2UA MP9XKDKO<2AOE("D8VGKG(Q7E'PQ_8>N/ GC+0M0U'QIIFLZ#H,Z7&GZ?;>#- M/L;UV08C^T7J O+@X;*JA)4'->WZ9\&?"/B"RUL7&E>++I++1I5M9] MUU,^["^64WICRWW%U4+M.XBJOQX^++_!WP&-5L]*?7==O[VWTC1]*C<)]KOK MAPD*,Q^ZN269NRJ: +/QG^$>G_&?P::'^S3XWUGQ5X=U/XH?%V?Q_IOAV]34M-TFTT"'2HOM2 B M.6=DD=I2NXD#Y1D\YZ4VWU3]I#P=J6F:KKUIX/\ &>AW-W#!?:+X=MI[:^L8 MI'"M+'++(4F\O.2"$RH)'3%=3\2OVN_A!\(/%L7AGQ;XWL]+UQ]I>U6">X\@ M-]TS-$C+""#G,A7CGI0!Y?XE_8;U?Q#I.J^"A\5+NW^$6I7DMY)X4;0[>6[A M:20RLL5\S%D7S"6'[LD>O>O0/!W[-$GA/3/A18MXKEU*'X?S7'V=YM/1'NH' MB>**)MC *41E!?!WE22!GC6^)7[5_P )OA!GKJMJBP3W!N M;9GV"2+RD;S.?X5R!K#X;:O9:Y;:OH'C'4&MDU" MVAGF$4*@AVVQQL0ZR;4,; ,"3D<''3ZI^V'\(='US7='NO%X74=#$QU*"/3K MN3[+Y4BQR;RL1 P[*!S\W5<@$T 85S^R/'#\.M&TS2?&NIZ=XZTK59=?A\:2 M6\26#(1XW5BICR/E &>,U-H?[*2WW@_QU8?$#Q?>>-_$7C.".WU M+7([1+#RDB_U MX59A'Y;?..6^;GVKUV]\?:!IOBNU\-W6HK!K-S8RZE%;O& MX!MXV57D+XV* 67@D'GI7G/A7]L+X0>/)?$T'ASQK::O<^'K.:_O8H8)P3!$ M/WDL68QYZ#CYHMXY'J,@&;\,OV5]O\)-X6^P?9=VS, M[3>?YF\9^]C9M'3.[M7G/P1_:YTCX[V?P[U#2];L-,;6KG4;6]T>?3KMI9Y( M(3($AF951-B[79FR&!VJ-JN23D8H =;_LZB'P/\*O#K:_O7P+>V]X;C[%C[=Y43Q[=OF?N\ M[\YRV,=#7FGBC]B7Q/J_A75? ^E?&/4-(^&MS*UQ:>'7T6*:2U9I_.,?VD2* M[PAB<1D ],L<5Z-XC_;-^"_A'Q;)X8UCQY96&NQ:BVES6IX-U#3=/U^1 ;.\U2W:YM5.1RR(REAC/1A M0!X!\5/V+'\9?$+4/%OAGQ7I7AV\UB.!-6AUGPE9ZXD[11B)9(3.0T#%%4'! M8?*#C.<[>K_L3/$57< [E M46-0K-NR>,BW\*W%@+V6+P]=!KJ.XB$Q$>;D M["%RN3GGFM37/BU\5O''Q>\8^%O!6N^!?!UOX9N8[;[)XHAEN;_40T22&9(T ME39$=^U6^;.#Z8H ]S^%7A#5_ /@+2?#VM>(I/%=YIT?V==6GM_)FFB4XC\P M;VW.%P"^1N(S@9Q76U\H_&?]I;XG_"'P+X!U34_!^FVFNWFH7J:WIHN1<1R6 MEK;RW$DUK(C<;HH690XSR 0*Z+]IO]I?4_A;;^"XO!UM8ZIZC"Y/0.>U 'T917#?'/QIJ'PY^#OC'Q1I2POJ6D:7/>6Z MW*%HRZ(2-P!!(R/45R7C#]K'X:_"73]%C\?^*K;0-7O]'AU<6OV6>5I8F(5C M&L:,7(J[?L%_"LDY MNB<_+'%&K2,PP%;C3_[.UM"8 MU,,UFDLAE9CRPD++MVJP(VD9% 'T517DOP]_:L^%GQ6T#7M8\*>*?[8M-#A: MYU"*/3[I+J*)1DN+=XA*ZX!P41LG@9/%=#X>^-W@CQ9J?A[3]%U^'5;OQ!II MU?3DM(I)!+:F#S7LU% 'YM6OP4\<^(-3 M^+&H6OP]\_\ &-LW]GV]Y"GVBY4Z>JI%P3RLA*XS@,#CUKR# MQM\$OB%X0\=6_B:*V^*,EIK'AO2K _\ "MKVP2>WE@MPDD%U'=(3MSDAD;') M!4GFOT*HH \E_99^'][\,O@IH>AZA;:G97:--.]KJ]_#>W,7F2L^UY88HD)^ M;HJ8'3+8R?)M.\=>+_@G\;OC!)_PI_QOXPT[Q%K-K?V.I>'X+9[=D6Q@A8$R MSH._B#JWABW3Q9KOB'2M5MO!,MTCYTW3\" M*VEE'R&5P9'/5064=JZ*UT#7OVE_BUI^L:[\+]7\ >%M.T#4-'O7\1^0EWJ' MVI0GDHD4C_NE&6W$CGH!7U?10!^=O_"COC.G@$:\-%G'Q%BD7P+%.'^9=*%G M]C.H [C\ID/VCL<"OL?QCIWB3X3?!&'3_A;HEGK6J>'[.UMK#2+YBJW%O$45 MT#!EQ(8@VTDXW8SFO2Z* /D2'PCXZ_:$UCXK^(;KP=JGPXM]:\&?\(OI=MX@ M>(7E9UM:^.OBU'\)O!4GP:U+P%_PANKV.H:CX@U M&2V%G;QVJGG_8?BSJMAXNU:XO[9_ MVJ:9'I-U%,H CN_M,+20LOW"?W@PN0!TK]&** /ASXU?!S6_#P\!R:=X2^); MZOIOA>VT7_A)_A_KMI-?#R\YM;R*>.*.1 3N$J@;BS?*M?0?[/WA/QC!^SKI M/A[Q_';6/B)[.XM94M(HD\F%WD$.Y8@(Q((RF[;QNS7L%% 'PK;S_%V']F4_ ML]GX.:P?$?\ 89\*+XH%W!_81@,?D"\,N_S!^[._R_+SGC->E_%;0/$G@>31 M-'U#X:?\+H^%T.C6^GKI=E;6LFH:==1)L,JI-M\Q)%"@GS 5QWS7T_10!\W_ M +)?@?7?#FN>,]57PA??#;P)J/V9=%\(:C=++-;2(&\Z?8K,L ?*#RU8CY,] MZK>*OV8/#'Q@_:>\5ZY\0? UIXDT!/#VFV^F7>HQ;XQ.LMR9E3GJ 8\_45], MT4 ? WBG]CO4[#2OC[X:\ ^%Y/#6@WVI:!J.C6FFR);"]6WC+W"0.X=5?=D9 M=2NXC(Q5CX6?"KQ_K7C#4/$L6F_%'^U-,\.ZA864WQ2U+2VMVGEC 2!+>W@) MEC+ $LTB*-OW3FOO&B@#\Z/AE\+O'-S\6?@YJ-U\/_B1:CP[?D:SJ/BG4[9[ M*#-NZ8M+:%@@BWGAPJD# QSQ[7\*/@CXE\._'J;1[_3'A^&?@VZO=7\+W#," MCRWQ#F)1G/[@O+_9,?[\@=A-7LW[2GPUUOXC> K&7PL]NOB[PWJ]IXBT:.\.V M">YMGW>3(>RR(TB9[%@>U=-\+O@[X-^"NA3Z-X*T&WT'3Y[A[J:.%G=I)6ZL MSNS,?0 G ' P*[*@#YHNOC7\9?B-]B\-^&?A%KGP^UF:>)=1\2>)9;62PT^$ M.IF: (SFY8J&5053[P8],5S-V?&WP9\2_%71$^$&K_$6'QIJ,NH6&MZ4UL8) M5EA5/)O3(ZM&(V! (##:3@#'/U[10!\I? KX$>(/ 7Q;\#RZ]I2W-OH_PU71 MI-0"AX8;PWF]X$8\\(<>ZBO--7^"VOZ)\%/AU'<> ?&YUG0[[61#J/@/5(;7 M6-)2>]D= L$P\N6*1-I.6^7"\'/'WQ10!\+^&/!7Q:\.?#?P/K>N^%=7\02: M#XY?5;?2UBM$UM].DA9!)=+$5B:?>[,Q!R1U)-=;JOP/\5:Y^SY^T-H-CHHM M/$7B3Q-JFI:9%C!" 2>]?7=% 'QEKVB?$;]H[QC?7-Q\/=6 M^'=A>_#[5O#\5QK> M#?[ T9M/N?$&ISVRPQ.L:H([$1[VE21ER23& "=QXKZ-HH ^'_AO\,?'.H1 M_!C1;_PCJWA]O"OC'K-Y82V^EZO+I)L+IP-EP M([,))M_W6X->1?%>TUH^+_$.F?$GX#W/QHT2:]:?P]KN@VMG)-;VK8*VLX=H MF0QMD!PS;@03S7UU10!\;>"?@KX\%M\'(/$^CW!L+7Q)K-Y/IDMW]N.BZ9<6 M%Q'!;2S'_68,@7O]X#M7(6/P&^(]U\+?$UOK6AW=WK.E:OH>@:&,AGGTBQU. M*7SP.P*98\_\LZ^^** /./VC_#VH^+/@+X]T;2+22_U2^T:YM[:UB^_+(R$* MH]R:X+PY\-M5'[2WA7Q'?:&S:98_#@:2;Z6-2L-V;F,M$#V8H&S[9KZ$HH ^ M(?"OPT\:_"72/A9XQ3X?7_BA?"UUXAM;KPU8^4+V"*[NR\-S LC!&(5 -N0= MLG!KE=;^ _Q%^*&A_&[4E\#7W@>?6_$VBZ_8:-9W4$-S=0P6Z^:$D*M$)R1N M8,K*),C+?>/Z$44 ?$7P*\(>+=%^(>H?$34M ^,6J-HVAW%M%!X[U'37N+MV M*LMO;V]M#EP2.':50I_A-;G[(GP7\9_ KX@ZE<>(/#=FMKXYM7U:5M*C_=>' M+CS7D_LP-GF$"7@@ ;P_J*^P:* "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BN.^+_Q. MTWX-?#3Q!XTU:"XNK#1K5KF2"U4&23' 5E>(_ W]K?QA\2_!7B_7 M-=^$&M:=)I7VB73(M%F74(]46.=XO(21>!.K+AAT(RXP"!0!]/T5\W?"#]L; M_A-+7XAKXX\$77P_U+P/9C4=2MEU&+4XQ;F(R8\V-5 F !#1$;E/!YR!@_#/ M]OFS\3&\N/&G@/4OA_IOVPI_C1XT@\-Z[X O_ =WJNCCQ%H#W6H178U+3BP7S3L \I_F0[# MG@]:^D* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH * M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB M@ HHHH **** "BBB@#BOC1I&O:]\+?$FG^&=/T;5M;N+-TM[#Q#"9K&Y)',< MJAE)5AD=:^&?V/\ X9?&+P@OQ(\2^"/#%GX*A,=_96_A;6-3:ZTZ?5H[^7F. M-)#Y21QXAW;ADIGH-?"[:2VA+ M>PS)>:JZN9;]U@+(-S/C3:A%<)J-W)"L*SH(F8K%A 3O /S=*_12B@#XL_9C^#OQ*D^+W@?Q)XZ\ M'_\ "'V7@/P4/"WNHQ$+NZDN&0&"-B TC,V M,DG&>]=/7.^'?^1D\5_]?F:5=W\G8?=!_+)_2OE\5Q7D>#?+5Q<+ M]HOF?W1NSTJ668RJKQI.WGHOO=CT6BO,CXD\>:V<66DQZ?&>C2+S^;'^E \" M^+M9.=3\0_9D/5(26(_ 8'ZUYG^M53$Z9=@*U7LW%4X_?-K\CH_LR-/^/7A' MY\S^Y'H%]K6GZ8FZ[O;>V'_364+G\S7G_C?XLVT-D(-!NA-=.3W5_*>I=]H/Y<_K6EJ/PQT&]TUK2*T6T8\K-%]\'ZGK7G9DN+ M\SPE2GAX4\/=:>^Y3]%))1BWM?6W?J=&'>58>K&524JEGV2C]V[/-O!7Q'UB MVURV@O+J2^MKB18V68[BI)P"#VKW6N!\+?".S\/:BM[<7;7\L9S$ICV*I]2, MG)KOJWX&RW.LMP$Z>=3;DY7BG+F<5UUN]WJE=V^9&PR>3V%?/\ M\%_VK/BEXM^%WC7Q=K7PXM/$<6G&Y;1CX)OUO1?2)3+N&T,) A1EY MR#\M?1'Q@\/^(_%/PT\0Z7X2U&TTKQ'BO-MK?W_ -NE87C*55$BC1@D M>,[U13G:0 >_P#PE_:<\67_ ,1_%?@7XF^%M+\.Z[HNA1>(S+H=\]U;K;.# MF.4NBE)5VG(QCTR.:XWX&?MN:_\ $/P#K_Q!\10> X/"NDZ%<:W/I?A_Q UW MKELL:ETCGMR@6,LJGJW4BJ_[,_P1^)_AWP9X[T;QEX(L-)\8^*+"=]2\>ZAX MABUB34KUU*HLEL(5V0*#@1AF 48Y)S7#^%OV)?B!X\N3;>+O#OA3XHKSJY^,,5S(8='TFZU&7L2-H M^N "?Y57-W\0M?\ ]7!!I,3>P4X_$DU\C/C++IODP$9XB7_3N#DO_ G:/XGJ M+*<1%7KN--?WFE^&YZ6[K&,LP4>I.*Q=2\;Z%I.?M.J6ZL.J(V]OR7)KCX_A M3J>J-OUKQ!-,#UCAR<_B3C]*W=/^%/ARPP3:-=,/XKARV?P&!^E0LQXEQO\ MNV"A17>K.[_\!A?\9(?L,OH_Q*SG_A7ZO_(S+WXT:6C%+*TNKU^QVA ?YG]* MJ+XW\8ZV<:9X?\A#TDF4@?FV!7H-EH]CIP M;."#'39& :N4O[%SW%_[[F3B MNU*$8_=*7,Q_6\%2_@X>[[R;?X*R/-#X9\=:U_Q_:VEA&?X+=L$?]\@?SJ2U M^"]H[^9J&I75VY^]@XS^)R:]'HK2/!>4SDIXM3KR[U)RE^%[?@2\WQ25J5H+ M^ZDO^"=OX^\2>*24\/:08(#P+J<9_$$_*/UI8 M/A=JFN2";Q%K4L@/)AA.?U/ _*OBY\4UL>G#(L+.M?:;7)3]>:5F[>2UZ'KQ MRV-!WQM50\EK+[EM]YREU\8->EU S1/%% &XM]@(Q[GK72V_C[Q7XHC4:+HZ MQH>#<-RN>_S' JK<_ V8W_[C4HQ9%O\ EHI\P#\.#7I^BZ1!H.EV]C; B&%< M GJ3W)^IKX7AW)>+\3B*T,WQ52E2[J46Y._V7KRJW56Z:'M8_&953IP>%I1E M+T=EZ[79P/\ PK?7O$!#>(->=D//V> DJ/PX'Z5N:7\*O#VFX9[4WCCO<-N' MY=*["BOTK#<(9-AY^VG1]K4_FJ-SD_\ P*_X)'SU3-,747(I\L>T?=7X$-K9 MP6,0BMH([>(=$B0*!^ J:BBOL(QC"*C%62/*;;=V%%%%4(**** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** .=\._\C)XK_Z^X?\ MTFBKHJYWP[_R,GBO_K[A_P#2:*NBH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **H:OKVGZ#!YU_=1VRGH'/+?0=37"7GQ1OM;G:T\,:9)=2]#<2 MKPOOCH/Q-?-YGQ#EV4R5+$5+U'M"*YIOTBM?OLO,]##X#$8IB7S9Z M+C;7>#[?,/X[GYA_WSTKL**[L'PEEU"HL3BD M\16_GJOF?R3]U>5D8UZ/8O=16() D(]<<[1U..< U\V?LU_M, M_&#XH?"OQUXD2T\'_$N]LY+@Z-!X9O1;R^=Y[JEM/&[?+'L"NCL0S)C.YLL0 M#[0HKY%\(_M7^/O"/BWXH>&OBAI?AO4+_P &>%U\3RW/A 3I#%F,O]CF$KN5 MEP 000"&!Q@US'@K]N;QWH%G%JGQ.T'PZFF:WX%N?'>AQ^'C,DJ0Q1B3[+.9 M78-(59/G4*.O% 'W#17R=^SE^U#\0O&OQ*\.^%_B+I/ARR7Q=X7'BO0I= \Y M6A@++F"?S7;>X5U.Y=HX/%?6- '.^'?^1D\5_P#7W#_Z315T5<[X=_Y&3Q7_ M -?,_'@ M(?[$TU_^6ARK,/KU/X8KXS&\5X##U7A<)?$ M5OY*:YFO\3^&*[W>G8]>CEE>,M(\.(QO;M1(.D,?S. M?P']:XI_&WB7QC(8?#VG-9VQ./M4V,@>N3P/H,UL^'_A1I6E.)[XMJEWU+3_ M ' ?9>_XYKM8XTA0)&H1!P%48 K@^I9_G6N.K?5:3^Q3=ZC7]ZH]%_VZOF;> MVP.$_@P]I+O+2/RCU^9Y_I7PEADN/M>O7LNJW;3^E=U96%MIMNL% MK!';PKT2-0!5BBOI"-9&MI/X M6VMP1V(]#7Q7\!OV4?C5X,3XB^-(+SPEX=^(VHP7VBZ2.E??M% 'QK^SO^R=\2/"'PW\<> _B&G@=['Q9I]U'J7B;0 M+N^NM8O[N<,IFN&N(T4@!B0!P/3DUE> _P!A;QQK-L-,^*7B3P_%/#\7A])\R6P91$>;*\C--/\ ",,;7;,\LGW( M8QEF]_85AV_QCT&6S::0SPRKQY!3+'Z$<5\WBN),GP.(>%Q.*A"HE=INUO\ M@^6_D>A2R_%UH*K3IMQ?D=W4%Y?6^GPF:YGC@B'5I& %>)-5FNY.IAB;CZ9/0?05X;XHK9A[N1X65 M:_VY>Y3_ / I:R_[=7S.S^S8T-<;54/)>]+[EM\V6M9^+EG'*;;1K675KH\ MJI"?XG\OQK.7PYXO\;G=J]Y_9-@W_+!.&8>FT?\ LQ_"O0-(\/:=H4(CL+.* MW4=2H^8_4GDUHTO]7<=FCYL\Q;E'_GW3O"GZ-_')>K0_K]'#:8*E9_S2UE\N MB.9\/_#O1?#VUXK87%PO_+:?YFSZCL*Z:BBOLL%@,)EU)4,'24(]DK?\/ZL\ MFM7JXB7/5DY/S"BBBN\P"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH MHH **** "BBB@ HHJKJ>JV6BV\G7[1)/P,#&Y54#GH,G/7BNJEAA>(+KSM569[VT=SRT3'+1C_<)X]C[5]*5\V_#_\ M8UC^'7B_3?$&G^,[IKBSD#^6;)0)%Z,A^?H1Q7TE7-FLL)/$.I@W[KZ6:L_F M;8)5XTN6NM4%%%%>,=X4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110!SOAW_ )&3Q7_U]P_^DT5= M%7.^'?\ D9/%?_7W#_Z315T5 !1110 4444 %%%% !1110 4444 %%%% !11 M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 44UY%C4L[!5')+' %KB'RTHN3\D=12$X%>77GQ< MO[Y7_LC2=L:CFYNFPBCU)X _$UYMXI^+^B1.5\2_$*S7ULM)8W1'L?)!0'ZF MOF:?$[S)\F18.KBGWC%QA\YRLON3/0GEZPRYL=6C27F[O[D>_:OXWT31 ?M6 MH1!Q_P LXSO;\A7(W7Q6OM7E,'AW1IKD]!-,O_LH_J:\#'[2'PUT:0?V;X>U MGQ-<@X#W06-"?99Y/AW:DG5EYW2^Y;_-G7>,_#?BJ[C_M? M5X1( N&$1!\I1SR!T%3_ H\'2:QJ<&JW,"R:6BED,@#),2,#'J.+H_21BH/(Y X)K)^ GCOXO>++/_A$ M?!?B6PL8]-A\V.&^BA+"/=SM+1N2 2/ID5Q4?!?"PQD3;\_P#DM0!^T[I_S&31-2[[-L _#HO7ZU^FK*UM'$4__ G_ M )'@?7'UI2^[_@GT]17S$WQ+_:*T$9U'X?:?J48_BLL,S?@DK']*@;]K[Q5X M<.?%7POU73(QU<)+&/J-Z ?K3_L?$R_A.,O22?ZB^O4E\:=&_; M?\ WI5+^#5-*<]3);B11^*G/Z5Z#H'[1'PW\2E5L_%^FH[=$O)#;-GTQ*%S7 M+5R[&4?CI27R-X8NA4^&:^\]%HJ"TO[:_B66VN(KB)AE7B<,I'L14]>>U;1G M5N%%%%( HHHH **** "BBB@ HHHH **** "BBB@ HHKG/%?Q&\+^![%K:8VOAK2 MM1\273':A2(Q(Q[8!&X_E6-_PD_[0OQ93&EZ1!X#TJ7_ );W*".;'_ \O^(5 M?K7KQRC$IU-=Y.WX;_@<+QU*]J=Y/R5_QV/I?6_$6E^&[4W.JZC;:= !G M?;%U=DH+SU?\ D> ?\+.^/'Q;./#'AB/P MGILG"W-R,,!ZEY ,_P# 5_"M#2_V.=1\47$=_P#$?QM?:Y=?>-K:.WEJ>X#O MSCZ*M?3_ $I:3S:I37+A81IKR6OWN[&L%&6M:3GZ[?14JU*TN:I)M^;N=T(1IJT%9!1116184444 M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 M4444 %%%% !1110 4444 %%%% '.^'?^1D\5_P#7W#_Z315T5<[X=_Y&3Q7_ M -?TMF079O)1_#;+O'_?73]:P' M^*.KZN2NB:#(Z_\ /:;)4?4\ ?B:^0Q7%V2X:?L5752?\M-.;]+1OKZGJ4\K MQ=2/.X-[2RE' M!TW27\^2IKUY5>5C&I_9N%=L3B5*7\L%S/[]$?56I?&'1K5C' M9QSZC-T"Q+M4GZG^@-><^+_VB)-)#BXO=/T-1_RS>0/-],=<_@*X6Q_9^^+O MC]!_PDGB&U\):>X^;3]-(#;?[K>5PW_ G:O0/!_[&'@'P\Z3ZI'=>)+I>2;V M4K%G_<7&?H2172^&L;B-$_[>JN__ )*C MQG5OVA)/$UTUOI5AK7BVZ)QLB!CB]B.&/X%1]:T-*\&?&_QJ5-EHMAX2M7Z2 MW6%=1Z_-O?\ (5]@Z-X>TOP[:):Z5IMIIMLGW8K2!8E'X*!6A7H8+(N'LLG[ M7"X&,ZG\]5NK-^?O:)^B1C6Q688E9)_'7C MK4M9DZ_9K3*QH?0,Y/'T5:]%\._LJ_#3PYM*>'DOI%_Y:7TC2G/K@G'Z5ZW1 M7TM3-,947+[1I=EHON5CSXX.A!WY;ON]?S,G1O">B>'5"Z7I%CIX'>VMTC/Y M@5K445YLI.3O)W.Q)+1'(^+/A)X/\'M,O"W5I+5"Q_'&:X#7?V3?A MEK@;_B0"P<]&LIGCP?IG%>PT5UTL7B*/\.HUZ-F$Z%*I\<4_D?,E[^Q+;Z7* MT_A'QSK'A^;J%<>8,^F49#CZYJ@?AY^T5X'R=)\66?B.!/NQS2AFQ[B51_,U M]545Z"SC$O2MRS7]Z*?X[_BEL MD>-F]]R[U_\ ':W-%_;B\&W$GD:YI.KZ!=#[ZRPB5%_$$-_XZ*^C:R=9\(Z' MXCA,.JZ-I^IQ'C9=VJ2C_P >!I_7,%5_BX>WG&37X.Z#V&(A\%6_JK_CH<5H MO[2'PWU[:+?Q591.W1+DF)O_ !X"NYTOQ+I&N*&T[5+._!&1]FG63^1KS37? MV4?A?KI9F\-)8RG^.QGDAQ]%#;?TKA=4_86\+LQ?1_$&KZ6P.5WLLN#^ 6CV M65U/AJ3AZQ3_ "8<^,AO",O1V_,^EZ*^6D_9@^)GA[!T#XL:@D:?=@FFG"?B M-Y7]*L+X*_:5TA=EMXTTC4(EX G2(L?Q:'/YM2>7T)?P\3!^MU^@?6JB^.C+ MY6?ZGT[17S*;C]IRS0C[+H-\0<;LP@GW^\M13:U^TW!$\DFDZ%'&BEF]S$E]/&\L5N6&]T4@,P'H-P M_.K5?F%X@^.OCC4OB!;>*)M;5==T]#;6]S;1IY:)R"%7!4@Y/4'.:^C="^&_ MQO\ B+HEEJLGQ4CM[&^A6:.2P=D^4C(_U:ISR>GI7H8G(7A(PG6K1BGWOOY6 M78Y:69*NY1ITV[>FWWGU=)(D*,\CJB*,EF. *Y/7/BYX+\-ACJ/B?2[?/XNQKJ=#_8J^'&F%7O8-0UB0?>^U M7;(I_"/:?UKA^KY=3^.NY?X8_JV=/M<7+X::7J_\AWB+]M+XKW[PU\*O M!W@]5&C^&=+L77I+';*9?Q<@L?Q-=4JA H"@=@*/K6 H_PJ',^\W^BL@]CB M:GQU+?X5^K/E=/A)\>/B*0?$WC:+PW9R?>@LWRX!]%BP/_'Q73>&/V*O!>F3 M"ZUV[U#Q/>D[GDNY?+1C_NKS^;&OH.BHGF^*:Y:;4%VBDO\ @_B5' T4[S7, M_-W_ . 8/AGP'X=\&PB/1-%LM, &-UO"JL1[MU/YUO445Y,IRF^:3NSM45%6 MBK!1114%!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111 M0 4444 %%%% !1110 4444 %%%% !1110 4444 <'\=?B5/\'OA#XJ\9VNE/ MK=QHUD]TEBC%?-(Z9(!(4=2<= :\$_9+_:;^(7Q(\$^+_$OC>T\/>(=&T^2X MELKSP/*9YB5G=/LK6Q.\G"JT;X&Y"-Q)R:^COBAH'B#Q/X UO3/"NO#PSXAN M+=DLM4:WCG6"3L6C=65E[$$=#7RK^Q'^S3XU\ ?$CQ5\0/&5GHWAV]NC?:4^ MG:';R0IJ#_;Y93>.K(@VG.V/:.8PASC !Z/^S?^T_K?Q>TKXL:MXJ\.1>$K M?P=JTUG%I[,3&GO%UV#RU+I'+YS&+D#!*YP6'3I7L?PN_9Y\2>$T^/4.H M7^F0_P#">:[>:CIDT48NU@BECV+Y\4J!&(/5/F4CC->1:/\ L1^/O']W%'\2 MKSPEI-KI/@V]\':?-X/MFA-XL\?EBXFB$<<<6T $11@J"3C H [7]FW]J;X@ M>/?B-HOA?XC^'_#VD_\ "6>&QXK\/2Z!-,Q2U++F"X\TG=*%=3N3 Z\5]85\ ME_LX_LR_$3PA\3/#7BCXBWWAZ5/!_A8>$]$CT)Y9&N(@RYN)O,1=CE44;5W# MD\U]67^G6NJVVT-Y:R##P7$8='YSRIX/(% &+X=_Y&3Q7_U]P_\ I-%7 M15R7@K2;'1=9\4VNGV=O86JWD16"VB6- 3;1$D*H KK: "BBB@ HHHH **** M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M**** "BJ.H:YI^DH7O+V"V4?\]) #^55_P"^8B,'VO[W_@*NW]QVT,%B<3_"IM_E]^QWA( ))P!7.-\1/#ZW M_P!C.HQ^;NV[L'9G_>Z5Q>I^*O%WB33[A+;2ETVRD0AI9CL)7'."Q&?P%>1R M7$44;2/(BQKG;;]HKP3H\*6VF>%;_Q9K*DJTAX@+9.-HY+#IU%=!9^//CWX^B$ M7AGP;:>#M/;A;BZA6(H/4"3K^"&OTS#9)QAFM&&(Q=:G@J)UMM+!EY]-W(_457B_9&\3^-[A+OXA_$"]U1\[ MOLULS.B^H4M@ ?117IW@[]F#X<>"RDD'AZ'4KI>1<:H?M!SZ[6^4?@M=4.!^ M'X/GS7$5<9/M*3Y?NTC;_MUF3SK,9*V%IQHKTU_5_B>'6_QKUSQ9)]G^%WPQ M>1"<#5-4C,_X@<(I'NS?2MF']GOXM?$XK)XZ\;_V18-UT^Q.\X_N[4VH/S/T MKZKA@CMXUCBC6*-1@*@ 'TI]?7X6MA,KA[/*L+"BO**;^^WZ'E5*-7%/FQ= M64WZV1XSX,_9*^'7@XQR-IL-.M=+MDM[*VAM+ M=.%B@C"*/H!Q5BBL*^)KXE\U:;EZLVIT:=)6IQ2"BBBN8V"BBB@ HHHH *** M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *KW]C;ZI8W%G=1+ M/;3QM%+&W1U(P0?J*L44TVG=!N><_P##.WPU_P"A,TO_ +]?_7KM= \/:=X6 MTJ#3-)LX["P@R([>(85,G)Q^)K1HK:IB*U56J3;7FVS.-*$'>,4OD%%%%8&@ M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1 M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%% M% !1110!SOAW_D9/%?\ U]P_^DT5=%7.^'?^1D\5_P#7W#_Z315T5 !1110 M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 45%/=P6J[IIH MX1ZR,%_G7-:Q\5?!OA_=_:/BG2+,KU66\C#?EG)K2%.=1VA%OT)E.,?B=CJJ M*\:UG]KOX7Z02D>O2:E*/^6=C:2OGZ,5"G\ZYX_M@6VK,1X>\#Z[J2GI+=>7 M;)_WUEA^M:5Z$\)3]MBK4X=YM07WR:1E"M"K+DI/F?:-V_PN?0U%?/L/QN\= M:RP6#0]+TP-T4R274H]L#"_J:Z'3V^)FO;2\QLT;(+M$D"@?0Y;\17PE;BW+ M%-TL%*6)GVI1<_\ R;2'SYCW(99B6N:JE37>32_#?\#UV:>.WC,DLBQ1CJSL M !^)KFM4^)?A_2\AKY;AQ_#;C?\ KTKA;GX/^)M:*MJ/B&$,/[_F7!'T+%?Y M5"/V9;&_&-6\3ZS=(?O16CK:J?;Y1G'U-1#$<1Y@_P!U1IX:/>I)SE\HPTOY M.0Y0P%#XI2J/^ZE%??+7\!GBS]I?2]#1E06UHW9[V8;O^^%Y_6O'/$7[6PU" M;R8;R_O6<[1#I\.P'Z=,U[QI'[+?PRTA@_\ PC,-]-U,E]*\Q/U#';^E>@Z' MX3T3PQ%Y6CZ/8:5'C&VRMDB!'_ 0*[UPUA\1KFV-KXC^[%JA3^Z%Y/YRNH \O_P!"-=-I MWP\_: \0C'VS2_"4#=/LXCB9?Q16?\S7UU17T>7X+)LG_P"1;E]*F_YG'GE_ MX%)ML\^O/%XO_><1.7E>R^Y:'R5J_P"QYXJU;1[VZUOQY?:_J?E$PV$9*1O) MV!DD8C&>ORBO+5_8_P#BRL'D"WMO(_YY?VDNS\LXK]!Z*^FAGV+BK249:W5X MK3TM;_,\V66T&[IM>CW^\Y+X:^&$T#PII8N=!T_1=8%NJW<5C&@7S ,,0R]B M1D#/&<5UM%%>#4FZDG.74].,5"*B@HHHK,H**** "BBB@ HHHH **** "BBB M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHJ&XO(+3;Y\\<.[IYCA<_ MG2;MN!-151=6L78*MY;LQ. !*I)_6K=":>PKW"BBBF,**** "BBB@ HHHH * M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH MHH YWP[_ ,C)XK_Z^X?_ $FBKHJYWP[_ ,C)XK_Z^X?_ $FBKHJ "BBB@ HH MHH **** "BBB@ HJM>:E::>NZZNH;9<9S-(%'ZUQNM_'7X?>'=PO_%VEQ.O6 M..<2O_WRF3^E;4Z-2J[4XM^BN9RJ0A\32.[HKP#7OVV_AUI;%-/.J:Z_\)L[ M38I/_;4H?TKF)/VP_$WB!S'X5^&>H7C'A6G+R9]/E1/ZUZ<,GQTE=T[+SLOS ML\#^&';PUJ^GZWK MKRI''!!()45M?+9KQ1PKPW3^L8W$NJT MU[D$N9OM9RV[MV7G=I'H8?+LVS%^SHTE"_5MV7X?YGK-U^W)X#MK&&1+?4[N MY:-6DAB@"A6QRN6(!P:RO^&P?$/B(8\*?"_5M3#?=GE+E1[D(A'_ (\*A^#> MCP_#J;48-%T&WU9KB19X3+;AYK=L88"0#<5.%XSP0?6O6EN?B)K9_=V\&E1' M^)]H(_F?TKQZ?B#P[B8J65X*MB+]HRT\GM%6V?O->9V/(I\QV_P#016'J/A'XQ:L3_P )#\5+ M+2@?OP6EP2?IMA4"O=S\+=7U@YUOQ%-.IZQ1%BH^F<#]*U].^$GAZQP9()+M MAWF2)U6;4[I MMWX[=BG_ +YKZUT_1K#24VV5G!:CH?*C"D_4]ZN5G.GQ1F"MF&;2A%_9H1C3 M7_@6LOR+C'*\.[T,(I/O-N7X;'@OAS]F&QT]@[Q:?89QD6\ =OS.*]&TKX2> M'M-"F2"2]<=[A\C\A@5VE%G(%M;6&W4?\\T JU117UE.G"E%0IQ22Z+1'F2DY.\G=A1 M116A(4444 %%%% !163XK\2VO@_P[?:S>I+):V:>9(L"@N1D#@$@=_6O)?\ MAKSP=_T#=<_[\0__ !VN.OC,/AI*-::39A4K4Z3M.5CW"BL7P=XKL_&_AJRU MNP2:*TNU9D2X4*XPQ4Y )'53WK:KJC)3BI1=TS9-22:"BBBJ&%%%% !1110 M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1 M110 4444 %%%% !1110 4444 %%%13W<%J,S31Q#U=@O\Z-@):*YS4OB/X6T M?/VSQ!IUN1V:X7/Y9KDM6_:3\ Z6"$U:2_D'\%I;.WZD!?UKDJ8O#TOCJ)?- M&,JU./Q27WGJ%%>"W/[6%C'E/4; MDR!_P /_ #IS?L]^+M='_%0?$*]N$/WH8#(4_#+ ?^.T?7:T_P"%0D_6T?S8 M>WG+X*;^>A[5J?B72-%!_M#5+.QQVN+A$/ZFN3U/X[^!=+R)/$%O,P_AMPTA M_,#%<=IO[)?A2V(-Y>ZA?'OF14S^0KK-,^ '@/3,%= BN''\5R[2?H3C]*7/ MF,]H1CZMO\D+FQ,MHI?.YS&I?M8>#[0D6L&H7Q[;(@F?^^C7BWQW^*KZ^TKPIHFA8_L[2+&P([VULD9_,"L M3X@_"O0OB9]@_MI;AOL7F>5Y$NS[^W=GCG[@KDQF"QV)H2IRJIWMHE9;]]68 MUJ%>K3<7->EOU/A_P0<>-- _["%O_P"C%K]$*\GTW]F7P7I6HVM[!'?^?;2K M-'NNL563X"K@83C5MJUL/!8>>'4E/J%%%%?0GI!1110 4444 M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !17 ?'S MQOKGPW^#OBSQ-X:TG^V]>ULMI8.X[E5Y('7 Y.*^ M-];UKQ+H7Q3BL)+F2TTK0(C::S%,MQ(JPM;N HB= C([L&4'!!QD@'V917R3 M\%?VJO&VM?#KX]^*O'NB66G7_@*_NT@T.S<.(%AM_,$#S#_6-N&"X&,YP,8K MS[P=^V=\2O MA:ZQ\1WT37K+Q%\/KKQYI-MI=HUHUF8HQ*+1VW-Y@*NOSX!& M#Q0!][T5\?\ [-7[0_Q+USXI>%?#'Q&O=%U.#QMX2'BW2GTJR-LUB,H3;-EV M\SY) =_'W3Q7T+\8/$NL^%_#UC<:))#%6RWMTZRR&2W!5F5%0<=N%%=/<_'S44M(A;Z%;^=L >6[O2@WXY.Q4 M/&?]JOA\#Q_P_CHRE[?V=OY]&_1:W^1Z];)L?1ERNFWYK5'M5%?-6K?&[QA< M[O+U;1-)4]!%;&0C\7?^E<;J?CG7=8++>?$J^C4]8[-XK<#Z%1G]:[7QMP__ M ,NZ[G_AIU'_ .V)?B>.VB:6:1(HU&6=V ^I- M<7KGQO\ /APLM_XNTF-U^]'%Q!N/&< M\[#_ *82#_V2M_\ 6VI_S#Y3?SJ8FG'\(*7YF/U?#/\ B9A%?X8-_BVCE[SX MR_'7Q*"MEHFA^%H6^[)#[[6[A?^6E]=.^?JJD+_X[7I4/QK^$=DNZ M"XMMPZ;=,EW?F8ZM1_M,?#V%=L=_.B^BV4@'\JPJ9MQ5BE:MG%*FNU."_62_ M(J,N'Z.L*/-_BG_P#+T:WM]+4#0/AA8V(Z!S:8_]E'\ZZ%;SXA7B!+?3[/2T MZ *BC'YEJHR_M0^ HU!6]NY3Z):/_7%0O^U3X%521)J#$#[HM>3^9KRZF J8 MG7&YU5E_A<(?^DQO^)U1S? TM*-"FO6[_-FI_P (CXXU'_C[\0"W!ZK&Q'_H M(%.C^#TMR=VH:_=3YZJ@_J2?Y5STW[6W@N( K::Q+GLEO'Q^<@JNW[7'AECF M'1=:D3^\8HA_)S7/_J[PW)WQ5259_P!^I.7ZV_ ;XBG'2G.,?\,4OT._L?A% MX3]T_2LLSRKAF6$^K4\ M)!IO[*Y&K=>9*_XG%+B7$T)JK3JN3\WI]S5C[D\"^!(?!MO*3+]HO)L"27& M /X1[5U5?#?P1\:ZQX)UZ_N-&T2379Y[;RF@CW?(-P.[@'N,?C7LO_"X?BI> M_P#'K\/FC4CAGAE_F2!7TN38G 8'!0PV%I.$8[12OOCCX%T_/F>)+1R.T.Z3_P!!!KD[']E+P9;8 M,[7]T1_>GV_R%=!8_L]^ K''_$B2_M0>!;3(2ZNKD_],K"*W3^[$@4?I1[+'R^*K&/I&_YL?)B'O-+ MT1X8/VA_%6I?\@KX;ZE<*>DC^9C](\?K2'XE?&/4.+/P):6P/&ZX5LCWYD7^ M5>]44_J>(E\>(E\DE^@>QJ/XJC_!'@37/QYU3[D>FZ9GT2+C_OK=33X1^.-W MGSO%%I#GGY/+'/\ P&.O?Z*7]G)_%5F_^WO\@^K)[SE]YX"?A3\7+O/G>/Q# MSGY)I!_Z"M-/P,^(KDEOB).6/)_>R_XU] 44?V70>[D_^WG_ )A]4I]6_O9\ MO?$/X.^,-$\$:KJ.J>-I]3MK:/>]H6D*R#(&.3[U\ZU^E=%>9BL@IUY*5.;C MZWE^;.2KE\:C3C*WX_J?+/PS^&WQ$U?P/I>HZ'XS.FZ=*CF&R,L@$>)&!& , MU5LG\I& M_E7O-%:?4)Q^"O->K3_-%_5VMJDOS/!&_:9U31_^0]X#U/3@.K?,!_X^B_SK M1T[]K#P?=8%S#J%F3_>B#_R->U5DZEX2T/6,_;]'L+PGJ9[9'/YD4?5\;'X: MZ?K%?HT'LZZVJ7]5_DUM<)(?R!KD]3^ G@35,E] @@8_Q6[-'^@./TKD]2_9.\(W1)M+K4+!N MHVRA\?F*.?,8;PC+T;7YIBYL3'=)_.Q[917@@_9V\4:(/^)!\0K^V4?=AFWA M?T?'_CM1OX>^.?AWFVUC3]=1>BEUR?\ OM4_G1]=K0_B8>7RM+\F/V\X_%3? MRLSW^BOG[_A:7Q=T'C4_!"WJK]YX8F/ZH2*DA_:DN;%MFL^"=1M".KQ.3^C* M/YT?VKAE\=X^L6OT%];I+XKKU3/?:*\=TW]JKP/>X%PVHZ<>XN+;=C_O@M71 MV7QZ\!7^/+\1VR9_Y[H\7_H2BNB&/PL_AJQ^]&L<11EM-?>=_17.V?Q$\+Z@ M ;;Q!ITV?[MRG^-:::]IDOW-1M'_ -V=3_6NM582^&2?S-E*+V9?HKQOXG_M M&VWPY\3?V0NBG5?W*3>?'>!!\V>,;&]/6J_PY_:7B^(/C+3] 'A][%KOS,3F M[$@79&S_ '=@Z[<=>]<#S+"*K[#G]Z]K6>_W6.?ZU1Y_9\VNW4]LHHI"0H)) M [FO3.H6BHOM,/_ #U3_OH5&VI6B9W74 QUS(./UI72%:._\ )36,L5AX_%42^:(=6FMY+[ST"BO) MKS]J'P%:Y\N^N[O'_/&T<9_[ZVUCS_M:^&V)6RT76;MAQS%&H/Y.3^E1OY"/^M-_P"%V?$K4>+# MX>2 'HTDTW2@>HWCC_OF-J/[1YO@HS?\ V[;\[!]9O\,) M/Y'OE97BO7/^$9\,:MJXA^T&QM9;GRMVW?L4MC/.,XKQL?!/XC:E_P A'XDW M$&>HM#(?Y,E9GB7]F*Y7P]J5W+XFU77+^&VDD@MMN?-D"DJN"2>2!45,7BW! MN%!K3JU^6I,JU9Q?+3_%%#_ALF?_ *%2/_P//_QNO1?"O[1GA75O#5MJ.L7] MOHU[(7#V.]I63#$#D+W ST[U\L_\*@\;?]"MJO\ X"M_A7T-\'/@/H,W@FQN M?$_AUO[:9Y/-CNRZ, '(7Y#E^+S2O5<9=OM*RZ=DM3S\/6Q=EY3;M@_GBL"X_:TT:63RM-T'4K^4] HS^ R?TKT^Q M^%_A'32#;^&],4CHS6J.1^)!KHK:S@LH_+MX(X(_[L2!1^0KZ'V6/G\56,?2 M-_S9Z7)B'O-+T7^9X7_PO7Q]J_\ R"/AO=*I^[)="3:?_'5'ZU')JGQV\0_Z MFQT[05;T2/('_ R]>_44?4:L_P")7D_2R_)![";^*H_EH?/_ /PJ7XK:]SJO MCK[*A^]'!(W\E %2P?LJ1WAW:UXOU.^+?>6)0OZL6_E7O=%"RK#/6:FX\ZRNM18?Q7=TW\DVC]*ZS3/A1X/T?!M/#FGQL.C MM"&;\SDUUE%==/!X:E\%-+Y(VC0I1^&*^XKVVGVMD,6]M% /2) O\JL445UI M);&VP4444P"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B MBB@ HHHH **** "BBB@ HHHH **** "BBB@#E/BIX-OOB#\/M;\/Z7X@O_"N MI7UNT=MK&F2M'/:R=5=2I!Z]1GD9KYP_8^_98\9_#/Q[K_CSX@ZII\VORK>Z M5!#I5KY*W4+7TMP;N8[CN9RY*KQM0J",@U]=44 ?/O@?]EV32M-^.VE:]JD- MUIOQ*U6\O%^QJ1):PSQ&/!W#!<9SQQ7F?@']A'Q%<6YT[XE^,--US2M+\&7' M@;0QHMD\$L=E*FPSS>8S S!50#;\O'Y_9U% 'RW^SK^REXP^''Q!T?Q/X[\5 MZ5XA?PQX<'A7P_%I-E)!MM RGS)][-F4A%7Y<#&:]E^,_AS7O$WAS3[?P]#; MW%W%?I-+'4IBV2*V#@\Y9<5W]%(=TMET]?4\^7X ^ %<-_PCMFA_I7644?5J"^PON0>RI_RK[CE%^%/@Q&#+X6T@$= M"+./_"I_^%;>%/\ H7-+_P# 1/\ "NDHJE0HK:"^Y#]G#^5'/1?#SPO"24\/ M:8A/<6J?X5,O@?P\C!ET/3PPY!%LG^%;=%5[&FOLK[A\D>QFQ>&])A),>EV: M$]U@4?TJ==(L4&%LK=1Z")?\*MT52A%;(JR[$"V5NI!6"(8]$%>4>(_V8O"O MB?7K_5KJ]U:*XO)FFD2":((&)R< QDX_&O7J*QK8:CB$HU8II&OF6R'^E M<_>_ WP'J&?-\,V2Y_YX!HO_ $ BNZHKGGAZ,_C@GZI&;IPEO%,\DOOV7? = MV%H/["/BCXI_!'6?#'BC[%HFG:UKUCY"/]K6T>7YCG*[D7'&!^=4?A]\&_$V MO^+K"PO=-UGP_:R^9OU&2PE40XC8CDA1R0%Z_P 5?2^'Z#J^TYG:][?I MW.-Y=3Y^:^G8^?\ _AE.?_H>=0_[\'_XY2C]E.0D!_&^HLO<>2>?_(E>_P!% M>E_9."_D_%_YG3]3H?R_B_\ ,\#_ .&4(/\ H;]3_P"^!_\ %5*O[)FDG'F> M)-6')^R/X48'SM5UJ0]L31#'YQ MFKT/[*?@>(Y;^TIN.CW0_HHKV.BK668-?\ND4L+07V$>9VW[-_P]MCDZ$9F' M>6[F/Z;\5J6WP1\"6F-GABQ;&/\ 6*9/_0B:[BBMXX/#1^&E'[D:*A26T5]Q MS]I\/?#%AC[/X?TV''39:H/Z5J0Z186X BLK>,#IMB4?TJY171&G"/PQ2-%& M*V0BJ$&% 4>@%+116A04444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 <[X=_P"1D\5_ M]?-=? MT2'4+BTTC5])^S:OIER;B5(6:,J T1S&1& 5C.8^ NT=/\%OVI?$&C?#+XHZ MOXI\;>*O$?CCPOX8;6F\*^,_"=OH3Q,L+.)8A$BM)"SC;EL' S@9K?\ @[^P M3JFF:!XZE\=^/=8N_%6O"]TRVUC21'936UJU]+<)< QLQ:65W,C!C\H>!/V-WBF\::C\3O'5U\2]?\3Z'_ ,(U/J']G1Z:L.G;67RUC1W^<[V)D)Y/ M:@#@OV9?C7\3F^+G@GPUX_\ %L/B^S\>>"QXLM0NF0VATR7*,;=#$HWQ[9.K MY;*]>:^R;Z_MM,M9+J\N(K2VC&7FG<(B\XY)X')KYU_9[_8_N_@UXUM?$GB# MQ_=^.[K2-&'AS0(Y]-CLQIVGA@WEL49O-?Y4&\[>!TKZ1H Y/P9J=GK&M>*; MFPNX+VV:\B FMY%D0D6T6>02*ZRN=\._\C)XK_Z^X?\ TFBKHJ "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** .=\._\C)XK_Z^X?\ TFBKHJYWP[_R,GBO_K[A_P#2:*NBH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH YWP[_R,GBO_K[A_P#2:*NBKG?#O_(R>*_^ON'_ -)H MJZ*@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **\T_:2_X3S_A2'BW_ (5F2/&QM,:<4"&3=N&[9O\ EW[- MVW/&<5^?7A#]H;Q'\)/V:?C;>:1\1O%=YXRT^XD6+0_&]D&O]*>747@-TDQP MLF03N4+M656/3B@#]4**^3OV8=6\6> _V@O'OPFUWQIKGCW3+#1M/UJSU+Q# M*L]U%)-N66/S J_)E054CBOJJ^O8]/M9+B82&-!DB&)I6ZXX502?P% &)X=_ MY&3Q7_U]P_\ I-%715PFB>*[.UUSQ#/+;:HD5S>I_^"F[_ /C5'_" M>I_^"F[_ /C5'_"Q1:1 MC;Y:G2+HY^89ZQ^F: .PHKG_ /A.=,_YYZG_ ."F[_\ C5'_ G.F?\ //4_ M_!3=_P#QJ@#H**Y__A.=,_YYZG_X*;O_ .-4?\)SIG_//4__ 4W?_QJ@#H* M*Y__ (3G3/\ GGJ?_@IN_P#XU1_PG.F?\\]3_P#!3=__ !J@#H**Y_\ X3G3 M/^>>I_\ @IN__C5'_">I_\ @IN__C5'_"/8O^$@1!!J?]F_969G_ +(NO];O7 _U M>?NYH ["BN?_ .$YTS_GGJ?_ (*;O_XU1_PG.F?\\]3_ /!3=_\ QJ@#H**Y M_P#X3G3/^>>I_P#@IN__ (U1_P )SIG_ #SU/_P4W?\ \:H Z"BN?_X3G3/^ M>>I_^"F[_P#C5'_">I_P#@IN__ (U1_P )SIG_ #SU/_P4 MW?\ \:H Z"BN?_X3G3/^>>I_^"F[_P#C5'_"?QSINQML6 MIYQQ_P 2B[_^-51\/^/89=!TU]2@U--1:VC-RHTBZ&)=HWCB/'WL]* .OHKG M_P#A.=,_YYZG_P""F[_^-4?\)SIG_//4_P#P4W?_ ,:H Z"BN?\ ^$YTS_GG MJ?\ X*;O_P"-4?\ ">I_^"F[_ /C5'_" M>I_^"F[_ /C5'_">I_^"F[_ /C5 '045S__ G. MF?\ //4__!3=_P#QJC_A.=,_YYZG_P""F[_^-4 =!17/_P#">I_P#@IN__ (U0!T%%8_A/4KG5]'-U=1R1.]U;1 M]4B\N7RFVR(005=3V8$ BOGOX=_\$^O#UAX*\._ K]FS3_@IJVNZY-XEUGQEXFU MF."WN=9UQHS-Y$*XBB C55"KD]LG/->Q5R'Q5U_Q1X;\&W5WX.\/Q>)/$!98 M[>TN;H6\"9SF61SD[%ZD*"3T KYE\"_M(^.=0_83E\>ZKJL5S\0]0N7TK3[F M&VA11>37@MH D>W80A<'# Y"?-GF@#[)HKY+^)_QI^+/@[]H_P""_@QH+;2_ M!NLZE)87NI2>3-=:VT=MN=M@3$$>X@_+AB?[H&#XS\1?VW_''@[XL>*=1G\= M:%IEAX>\9P>&$^&-Q90_:]0LGV!K\2D^?D%R?E^3Y.1V(!^C5%1P3+<01RK] MUU##Z$9J2@ HHHH **** "BBB@ HHHH **** "BBB@ HKY7^+WQO^*'AK]J? MX3>$;:PM?#_@'7=6N;.6Y9H[BZU81P;SP5/DQJ6&""'8]P!@V_&'CKXO>.?B MI\4]#^%^IZ=;6GARRTO2;?\ M**)H(M0G9YKJYSL+L\4#0J(RVPD\B@#Z=HK M\Z++]KCXL^'?"7Q0T.+Q;IWCVXTKQ7IGA70_B%_94-O$UQ=%5G!ABQ%(8"1@ M@8.1G<"*^A?V5?B?XWU'X@?%/X8?$#Q!!XOUSP3>6OD>(8K".R>\M[F$2J)( MH@$5DSM^4#(ZY/) /I*BBB@ HHHH **** "BBB@ HHHH **** "BBLSQ+J%] MI.@7]YIFFMK&HPPL]O8)*L9G?'";FX7)[F@#3HKY(_9V_:.\18Q1VPD,*R!0TOS#[[DDDG&!@#A?BI\0?V@_!7P T?Q_ MJGQ.TCP9I^G>%XM6NKNXTJTN;O6-5FS(M@T1C"1H R1AHQN."2>IH ^\:*^+ M/V@?VD?C5X3^#GPP\0:?XN6?E0<# MYN1]IT %%%% !1110 4444 %%%% !1110 4444 %%%?+7[;OQL^)WPBT?09? M!-A:Z=I$^JV%M?\ B*Y:.5U$MP$,$,#*P)*YR[#@'CGD 'U+17AGQ6^('C;_ M (71HW@_P'/:M=V_A[4-9N[.\">1=2X$5G%*Y4NB>:2Q*%20N,XXKQ;X6?%7 MX\Z=\:O%'PXU#Q9H?Q.U^#PDVKW""PBLK7P_JK$"&S:6$ R1MN/WLOA<\'/#VG>'H-1T_1(6CFDCW3[?-EF"Y+LO M5 VT<=3S0!]145\#Y=*=>N]/O=; MOK4_;)M,(\HRJ[(V0/N/\OS)_"VX=J]7H **** "BBB@ HHHH **** "BBB@ M HHHH **\2_:Z^)/C[X7_![6=8^'VC6U[JD%G<3S:G?3*L&FQQIN\TQD$RL? MX4Q@D:'XK\8Z+K=SXRU&[%S\/=,TZ'9I&F)O\N\ M6Z $K<*,^8<$E@,[>+6G_M:>*?'W[;7A?PAX:F$/PHF@U&U%X((G76;NVVB: M2-V4N(XI#Y8*, S*_4 4 ?9]%%% !1110 4444 %%%% !1110 4444 %%%% M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 1W$7VBWEBSMWJ5SZ9 M%?.?@7]C]O"/@3X9>$[GQ9_:.F>#_$DGB.=5T_RO[1D E,$9'FGRQ')*KY^; M)0<#J/I"B@#RCXL_ L_%#XF_"OQ<-:&FCP/J-Q?FS-KYOVWS8A'LW[U\O&,Y MPV?05YK\2/V*[CXI_%N7Q'KOC:*Z\+S7UM?R:.^@6_V\>00R6ZZ@")!;[U5C M&5/3K7U#10 BJ$4*!@ 8 %+110 4444 %%%% !1110 4444 %%%% !1110!Y M3\5O@8?B;\4/A9XP&M#3AX(O[F]-F;7S?MOG1*FW?O7R\;\>^$=!^(C^'=>\9:WGR6MWX>GT7PQ'I[:9=02>8)G'GOYY9L% MLE2>>_P!GZ]^#VH^,O$/B+Q4WC3QIXMO(KK5-7%BME$5BC\N&..$. M^Q508^\+=)^)MCH&E^&8E.F>']1\-#4K:.Y&J44 >4:E\&-7?Q9\1?%.E>*ETWQ#XETJ'2 MM,NVL/-&D+&CX?;Y@\T[W+X^7H!S7D'P-_8]^)GP.\,>)-$T_P",FFW:ZS;W M3OJ!\(A+TW\H^6[EG-TS2E,DA3C/'(Q7UM10!\T_LI?LM>-?V;);BSOOB3IW MBO0+IIKF[MT\,K9WMW=N0?/FNC<2,Y'(P1W'(Q7TM110 4444 %%%% !1110 M 4444 %%%% !1110 5XW=_ "Z;XU>-?B)9^)%M;GQ#X:30(;0V.[[(ZDD3[_ M #!OY/W,+T^]7LE% 'RC\9/V*=?^(WPA^'WPXT'XDIX9\.>&D1M0MI]$^V1Z MS*FTJ9E^T)\FX,QC)8$MR>!71:Y^SE\3=7\*^%!;_&=M%\7^'GN$CU#2] 6# M3+FVD4((9=/$^QBBCY6W\$YQ7T910!YU^S_\&+'X _"S2O!EA?SZJMH\T\]_ MXGEE:65]HX4%G. .@P.:]%HHH **** "BBB@ HHHH **** "BBB@ HHH MH Y'XN> C\4OACXG\(B^_LPZUI\UC]L,7F^3O4KNV;EW8STR/K7$>&OV>YM! MU_X::A-XA6]A\#>'I](L[8V6P2W,JQ(UT3YAQA(BH3!^^?FKV6B@#Y#^%_[% MWQ#^'_Q2\2^,;[XQ6/B";Q/<$ZRUSX4"WLML1M%M#&_%OB33])\++,4T.YU&XN%=G8,!'(90(H\Y+1A"'S MS7US10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4 M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11 M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4 M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11 M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4 M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11 M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4 M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11 M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M%%%% !1110 4444 %%%% !1110 4444 %%%% !116'XL\:Z)X&T]+W7+]+"V M=MBLR,Y9O0*H)/Y5$IQA%RF[)";45=O0W**\T_X:0^'7_0Q?^25S_P#&Z\I^ M(O[4>HVOB5X_"-U9WFC"-"LL]HX8OCYA\VT_I7F5\TPE"'.YJ7HTW^9R5,71 MIJ_-?TU/J&BO OA?^TWI=YHURWC75(+'41.1"EO9RD-%M7!^16&<[N_:NR_X M:0^'7_0Q?^25S_\ &ZTIYEA*L%/VB5^C:3^ZY4<51E%2YDOFCTNBN'UKXP^& M]-^&.N^.;?4([O1=)M)KF64 IS&F[80P!!/ P1W%?$'[$'QC\>Z-\9]&L?B) MXSO?$UG\5=$D\0Z7:WFHO<)I-PL\C"UC1F81 PM&=B@#D#'RUZ$91FE*+NF= M*:DKH_1>BOEKQM^T?\4KC]IW7?A%\/O"'AO4VTW1[;5FU37;^:W2-9"=RL(U M8L>R@ <]2*\^US]NWXF77PV^(GQ2\*?#O0]4^&OAB[FTZ"[N=2E2^NGB<(UR M(@FWR,D$C<& .><&J&?O;_9'2/=S(JGY%^8L=I)"G R10!]@45X+^R[^T+K_ ,9-1^(/AKQ? MH%CH'B[P3JB:=J":5M=+^U5K.H>'?VE7U MSIFI6NBW$MO>6JT5\0>'OVI/B/X>T[]GKP)X;T*P\ M9^(/&OA :A-J7B'4IHV6:.-U3:3_P4'UJ/P'XA@UCP/;?\ M+.TKQ>O@J/1K&\8V5Q>NQ5)!*R[EC&ULY&<#/&> #[9HKQ[X)>/?BMK_ (C\ M1Z#\3? 5CX>DTT1/::YH=ZUQIU^'&2D?F!9-R]"2H&0?;/L- !1110 4444 M%%%% !1110 44C,$4LQ 4#))[5Y+>?M7_"JPNYK:7Q8GFQ,4;R[&Y=MB+^Q@Y6[)O\C*=6G2^.27J['K=%>/?\-=?";_H;/\ RG7?_P : MKD]-_;3\'S_$+5+&[O/L_A2.W3['JGV:9FEF'W\H$+ '.!D?P^_'9'*\=--J MC+17V:^[N_(PEC,/&W[Q:^:/HVBO'O\ AKKX3?\ 0V?^4Z[_ /C5;?@_]H?X M>^/=;AT?0_$:7FI3 F.![6>$O@9(!D103CMFL98#%PBY2HR27]U_Y%K$T).T M9IOU1Z-17YT?MF>+?&-I^TC+IGC+XC_$3X3?"G^S8GT?6_ ]K.\$MSSYHN7M M\R9'I@\ <#J?1? 'Q6\3Z5^PWXVU[4?C3X8\0ZG:07<&@^.H[ANZXMAH:CXW\1?\(Q!I,.G:MI_C M[Q +RYFUQV#*UG'(V^*(HK\< YP <<>,^,?BQHL_Q7^+\7CK]J;XF?#?5M-\ M0W4&C>']$NM2GMI(%4%,"(%$&\LNW*].W6@#]A**^?OV$/''C/XB?LR>%=<\ M=RW-SKDWG(MW>0^5/ZA'RW!DZG?G&?3BNZA M^(/B;]K#XP?#SP<_C#Q'X$T*[^'EGXNO#X3OVL+F>[N5& 94.[8G)VYP<\T M?=]%?-W[ WQ7\1?%?X%RR^*M1DUG6M"UF]T.74YE"R7:P. DCXXW%2 3WQ7T MC0 4444 %%%% !1110 4444 %%3W/QO*:J5@L5?3PV-S$B1E]?;Z5U:_%;PN5!.IE21T-O+Q_P".UY6#XTX? MQLIQABX1Y7;WFH7\US6NO0ZJN48ZBDW2;OV5_OML=;17-6/Q'\.:E=Q6UOJ2 MO-*P5%:*1:)HOA[3[Z&U\,Z MQ-!$TDA96S&'"C.,Y R:^GPF/P>81<\'6C42T;C)22?R;/.JT*M!VJP<7YIK M\S[VHKX5^$GQX\2?LQ:S\;/!GQ3\87WQ TGX?Z7;ZWIVL78+7]Q!+E5@D<_> M6SG'3?C_;(^)_A%/ >J?$'X>Z'HGAOX@D6V@7.FZG)]?1OP,^/&I?&CXD?%+3[?3K.+P?X4U&'2;#5 M(9&:6^N/+WSY!^4*F8\8Z[_:@#VNBO!/V[/$FK^$/V3_ (B:OH6JWNBZM:Z? MOM[_ $ZX>WGA;>O*2(0RGW!K@;3]IGQ[K/B/PY\,?AAX>TOQ7XNL/"MGK>OZ MIXGU&6WMX!+&I2/I !]FQZ1X8\&W.C7>K/83^'_ /A)DMO$MA K%3<2VUQY:, !G8C, MQS@#O0!]R45\M?\ !0_QAX@\%?"7P?>>'=;U+0;N;QEIEK-<:7=R6TDD+F3? M&S(02C8&5/!P*K_M2^,_$'A[]J#]F'2M*UW4]-TO6-4U*/4K*SO)(H+U52W* MK,BD+(!N; 8'&3ZT ?5M%?F/^T_XS\;0?M,>,=/^(_Q7^(WP:\$6\43^$M1\ M)V=PVEW*[,N;A[?+,=Q&00V/F!VX&?M+]D7Q#XB\3? /P_>^*/&&A>/M5_>Q M_P#"1>'IVE@O(E+I-2U=+#7[9#>16BL"L"BXDG#QB-AG"CY>HKV[P=^V'?_ :_8K^" M.K:M>1>(O&OB]190:CXKU9HK9'\Q]]S>73DML1<9/)(Z= " ?=]%?$_A?_@H M)J.N>#/'T<>E>#]:\9>%7MBUSI'BB!= GMYVP+G[9.4PJ88,GWR0 %YS2_"; M]NCQ9\39OB?X:M-%\*ZUXR\+:$=H*" T6^6*-\\@!E!4YX)Q M0!]KT5\?:S^W%J_B31?@]:?#G0=.UOQAX[T^XU2YL;Z201:?;V\1,I;;SDR* MRKG^Z<]JMR_MN7^J_!?X3^(/#_A^SOO&WCK6DT3^PY)'V6LJ,PO"2/FQ%MQ] M67/6@#ZVHKPO]LWXS:W\"OV?]9\1^'TA/B*66#3K&29?2 MO'-%_9$^//AB_P!!\7:)^TCXAUOQ"\\4^J:5XDDDET>6)B#*D=N"0G' ]B MM 'VO17RAXG_ &J?B/XB\=?$32?A1X&T7Q+H_P /#Y.MWNL:D]K)>7*H7DM[ M1%4@LNUAER%)'7IG(UK]N_5_$=E\#;KX;>$;/77^)9N(1::M>-;-931*0ZM( MJD;496+':2OI6+E2R7#RLF](U"G/RY)(&!FNO\ #/[3WQ,\:?"'XH:O:Z=X$NM0T'2& MOM)\1>%_$2:CI5RX4LZ.G^OC=%&1OC"L>,^H!]=T5^?G@[]L#XQ^!OVKZ%H/C+Q%X\UA-,LG:^F22:%XRRR3,4"QR[PP(4,H4#'I7M/PA_:,^(6M_M M+ZQ\(?'OA_PYIM_IOAM=>DN]!NIYHRS3*BQ@R*N1M<$G:.: /IJBOCO2?V\- M0G_9Y7QU<>%;>Z\2ZAXLF\*:1H]I.RPSSB;RXW=VR5&,LV/3BN'_ &H/VD?V MD/A[\$_';:GX,TCP9J6F/:K%XKT>^>XLYHI\ K;>8H?SE)P2R@#!P<[<@'WY M17R+\/\ XD>-IOVNO"WA;QJ5MM7F\%27]Y:Z)K5U+I.\7!",L$BJ&'5;V*%@LUQ!%L*! M%SG#D,1T!Y /M.BOC9?VROB+\1OB9XJ\-?"KP;X>UO3=+T"R\0V^J:YJ$UJ M&AGC\SRV1$8F1APH& "#N->Z_LQ?'%/VB_@MH'CH::=(FOU=)[+?O$4J,5._A>VE^+-&_:%^)\"^)O%MKI9TJ'79XK:RBN6-OCI\8;+X1RV9O;3QQI1GO+HWSD!X+B M:)C*$4)D(,XR"%^8F@#]4J*_-3Q5\5?'FF_\$]OB%K%K\9X/'5QIVJ1Q:)XO M\.7]Q;ZFEH63;'>'9')%.,G(.3AADFJ7A/X_?$*S_90\4_"V_P#%>JS?%NTU M^'0K37Y;Z5K\VUTHNH[GS682$K#Y@SG.T+@]* /TXHKY'_X)=>-O$?C_ /93 ML=6\4Z_JGB75FU:\B:_U>\DNIRJE=JEY&+8'89XKZXH **** "BBB@ HHHH M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "LS7?#6 ME>)[5;;5M/M]1@5MZQW$8< ^HS6G14RBI*TE=":35F\$?]"MI?_@, MM(=3:\7[;I(*A?LVFM%'$,=P#&>3WYKURBN2>"PU1\$?\ M0K:7_P" RUV%%5'"8>"48TU;T0U1IQ5E%'@_[3?[.U]\7O@O)\._!UQIOA?3 M=1OX'U,LK('M0X:5$"*?G8*!S@>]>/>*?^"8_@?P?>^%/$OP5LX?!WC;0M6M M[[[;J.I7D\-S"A_>1,&:3;N&1D+WK[9HKJ2459*R-4DE9'AWAOX#:OH_[67B MKXKSZA8OI.L>'[728[&/?YZ21-EF.5V[3VYS7YR_$WQ0? GP[^,WP4\)>/8K M;1=1U6XET_P3?>&+Q?$ZSILME%<7.?+1G7 +8!./H*[JB@#Y: M\(_LF>(?#WQ)^!'B.;6=,EM?A]X7ET*^B3S-]S*R*H>+*XV\?Q8/M7%7_P"P M%K^IR_$W45\66&F:_K'CE?&OAR]@A>5+21'=ECN$8+D'< =I/XU]M44 ?-VC M?#3]HZ72/'.J:Q\4/#UKXLU.RBMM#T_1M-;^R-,E0C,Y$ZR2,S#.1R,GZ8][ M\(VNKV/A71K?Q!>1:CKL-G#'?WD"!(Y[@(!(ZJ S9(&!C/05K44 %%%% ! M1110 4444 %%%% ", P((R#P0:X6?X$?#RYF>67P9HSR.Q9F-HN23U/2N[HK M6G5J4OX6MCX7T73KR:)DBN_L"R>2Q& VW( MSCZBO$[3]@*&UNX9_P#A-O.\MP_ERZ0"C8.<$>=R*^N**]&AFN-PZ<:=1Z][ M/\[G+4P6'JM.4-OE^1Y]'\ /ATL:A_!FBNX !86:C)]<5IZ#\(O!7A?4XM1T MGPOI>G7T6=EQ;VRJZY&#@UUU%<4L57DFI5&T_-FZHTT[J*^X^2OCA^S!\8[S MXK:OXY^#/Q8@\)MKT$<.JZ)K]J+VR9D4*)(E=)%4D 9&P=SGFN1T[_@F_>GX M ZYX7U+QVMSX]U3Q%#XJ;68[%18)>Q?=C^S< Q$%@>!U!VX&T_<=%+;;P_XENO$WB.36;6860=H(FC1=A\Q25.Y6. M2.>IKZ#HH 8D*11+%&HCC4;55!@*/08Z5\?>/OV4_C7\0+7Q#X U;XK:;JOP MEUS4_MD\VHVDLFOP6I8,;..3/E;,C 8@GG(QTK[$HH ^*?&'[#7CBPU+XAZ# M\.?&NBZ%\./B))%+KMEJEC)-?63A0LIM&5@A\P#)WCC..V:[3QY^RKXL\->- M/"'C/X+:_HN@Z]H7AU/"KVGB:VEGM+BRC4")CY1#"1#R.QSSZ'ZBHH \G_9A M^ \7[.GPFL_"AU1M;U)[B;4-2U-HQ&+FZF;=(X0?=7H /05ZQ110 4444 %% M%% !1110 4444 8]SX/T2[G>:;2K665SEG:($DU%_P (-X?_ .@/9_\ ?H5N MT5Y4LIRZ;#;_ +D?\CI6*KI651_>SA+CX.Z)/JOVI6FB@+;C:H1L^@XR M![5O#P+X? Q_8]G_ -^A6[17!A^&\FPKG*CA8)R=W[J>OSO;T5D;U,PQ=1)2 MJO3S,>W\':':3I-#I5K%*AW*ZQ $'UKY.^,W[,/QZO/VC-?^)GP@^(WAWP:F ML:9:Z=<1:G9?:966+)Z/!(H&3G(YK[)HKVJ&%P^%3CAZ:@GV27Y''.K.J[SD MWZNY\C?#W]A":X\ _$VW^*_C&;QKXW^(EJMKJVMV\0B2U1.85@7 X1\,. . M-H%5/#G[(7Q.\5:S\,]/^*_CCP]KG@GXG307>I30KMMWNW=RJ[ M !D1C#8(/7=7V)1749GPU8_\$X&C\>_'#5[G6K&32?&>E7-AH%HHDW:4]Q*) MI'8$8'[U$8;2>]>\_L?_ +/]S^S9\%-.\(ZG?V^K:X;B:\U'4;;<5N)Y&R6R MX#'"A1DCM7ME% 'PC\4?V#_BYXM\1>,O#VA?&./3_@_XPU+^T=3T2^MC<7D. MX@O%"[*V%^4 8=1TRIQSZ3XO_9;\;^#/BO#\1/@KXDT'1=8NM"@\/ZMI_BFS MEN+2ZBA 6&=3$RLLJJJC'W3M&>X/U+10!\7R_L!ZEIWPA\+^&K#Q1:ZAXDB\ M;P^-?$&LWT31)>S^:'E6)$#;> %4'@X).,X&_P#'G]B.;X]?%[Q=K^J:U;67 MAW7?!R^'4CB5FNK>Z2?SHY\$;2@8+D;@3@CC.:^L:* /EWX$?L[_ !4\%^)- M(G\9>)?! T?1+!K*U3PKX:BAO+Z39L2XN9YD9D=1R1%M#'KQD'S3QG^P7\0O MBGXOTG_A,?$/@&XTO3]6CU%O%VD^'FLO$]Q&C[Q$S1E8%)X!95[ \]*^[:* M/(?VI?@ G[2'P=OO!J:Q+H%_]H@OK#4XTWFWN87W(Q7C(/(."#SD5X?\*OV0 M/C#J/QI\'^/?CC\4]/\ &R>#(Y1H=AI=B(0))%"EY&$<>3\JG.&)*CD5]G44 M ?&OQ3_9,^-UI\2?%7B#X._&"UT#0_%4OVC4M \360OH(9<88P^9'* &))P% M7&<9(QCUW]D;]FY?V8/A/)X7EUQ_$6K7VH3ZMJ6H&+RHWN)=H(CCR=B!44>Y M!/&<#VVB@#YK_9__ &7M=^$7[/?CWX?ZCJVG7NH^(;W5;F"ZM?,\F);I-J!] MR@Y7O@'VKC=1_8:URY_9S^$/A6UU_2(/'_PXG%U8WUU:M/_ -B3XD_%?X;7EOXA\7>#=-\5Q:U::QI=AH'AU+;1 MH#;[L0RG;Y\RN6R?,9L8P!S7;? C]F?XA>"_VA/$7Q-\=Z]X7U8Z[X>32)=. M\/6,MI#9LDB%$B5]VZ/:IR2P.2.*^I:* /DK]G#]BRU_9P^,GQ%^(FIZQ;W^ MDW,4D7A^V!D8Z39/*\]PC!A@9;;C;G@-ZUXM^Q7\+=*^(O[7WQ!^(_AR_N]6 M^%/AV[N9/#$LD+1VIO[T*;HPAAR$"$$C'+(:_1ZB@#@?CI\&]%^/OPNUOP1K MSRPV.I1 +*/V6/BAX2\>?$74OA!XU\/:% MH/Q"/G:S:^(+":XGL;DH4DN+1D8 LVYFQ(" 2?;$NA?L0'P)K?[/B>&M8MVT M3X:-=/>M>JRW%^\T;!Y$"@JI+N6P3P,#)Q7UA10!\EZQ^R7\08_'_P 8_%'A MOQGHFD3^,KVQN[2VO]+34+>6."/:]O=QRIPCG'S1G<,<'M67\%_V&]7\+^)? MB)XE\4W7A/1=1\5:!+X?71_ 6GS6FF1I)@M<.LK%GER!CH -WKQ]D44 ?$WA M[]B[XEKX ^"WAC7O$GA6>+X:^)HM2MY]/AN8VN;!$("/NSF;<2D^*)/%.EZ[9V[O;K<>9O021M M@X/(8#IGC-7?B+^RG\;/CS\.O'NC_$;XEZ#]JUFUMH=+T;0;"5-*M)87#>0 !]D44 ?-'P]_9[^(4/[0/AWXH^-]8\-7-]9>%GT&]MM!BN M(XY)?.+(\:RY(79M!RWWLX & /.]1_8B^)ND^%/&/PK\'^/] TGX-^*;^:[G MCO-,EFUBPAF8--;0,'$;(<8RXSCN.2?MNB@#YM^$/[)\_P (_B[XYU_3[^S_ M .$9U?P[8:#IEEEVN(!;1LFZ4E<'((Y!/>NL_9$^"&J?L[_ W1_!&LW]GJ=_ M933R//"WA32])U"STZ71_$MCK M#=2U2RCLM5T?6[ M?[983!!@2(CK(JL0%!&SL3GDU]6T4 ?!]K_P3I\3Q?L]?$_PS?>-[#5_B#X_ MU"WU#4-2:U-KI\'E'(2..-?]ISN"J.5&T;S MT*.RNM-._P V:]C@:W2?IM(\LJ,\'BOKFB@#P7]BG]GK5OV8O@A!X(UK4K'5 M+V/4+F[^T:?O\K9(05'S@'(QSQ7O5%% !1110 4444 %%%% !1110 4444 % M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44 M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111 M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 % M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44 M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111 M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 % M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44 M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111 M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 % M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44 M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111 M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 % M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44 M44 %%%% !17GGQS\>>)?AWX'?5?"OAZ+Q+JK3) EG))(&R_"E4C1BYW%KV6E^9+' M'(9)0PWD;SL5>6([ &K7C7XB^,]3^)E]X)\!_P!AVM_I.B)K5]=:]:S7,1(+9%BEC*%C$Y:0EMHQA&SP >Q45\U^$/VCO%GQUM[$_#>UT32)X_#D.NWR M^(8)KM3/*TB)9(8I8MF'AD!F.[ P1&>E>H>!/C!9?$+X$Z=\2+=/['M+[1CJ MC)<(;C[(1&6=652IDV,K# *EMO&,\ 'HE%>/_P##3?A#3]-B:YN=0U6Y@T6V MUR]ETO1[@QQVDL9<7#(-YC0A6.TLQ7H2>M;B?'WP3+X2\1>)$U5FTG0)%COI M1 ^Y2ZHT>Q<9<.)$VE<[MPQ0!Z)17FFG_M#>#=2UFVL8KF]2"ZO#IUOJDMC* MEA+=#.85G(V%\JPQGD@CK6;J'[2?A]M U;4=)T[6]06VT^[OK.X_LFX%K>^0 M/F$"O#.IZK9ZG'K.IZ0NL7.EV&F3S2VD M'1IG0 LD18':S?> R,UI^.OVC/#'AK0IKC2YKC7;Q]%;6[<:;92W<26Y4F*: M8QCY(V(ZDC(!]* /5Z*Y3X3>+;KQ]\+?!_B:^BA@O=9T>TU">*W!$:/+"KL% M!)(4%CC))QWK!\2_M!^#/">M:CI]_=W>S2Y(HM3OX+*62STYI,;!<3*-L?#* M3D\ @G H ])HKRS7/VE/!'A_5=6LKNYORFD7<-EJ5[#I\TEK922E!'YLH7:J MGS$^;..>:]%UO5#HVCWE^MG-_"CXZ MZAXR^#_B#QKXCT6/P[<:9>ZA;MIOFAVC6WE9$5W!(+G:,[3C)XKG?B#\8_B/ MX#T=?$.H6WA72M*AALU@TR\\R2^\074H#2PVI68?9RF0JADF9R&)"J 2 ?0U M%>/_ !0^-FM>"?&GP^T*P\*7%Q:^(M1@M;[5KHA;:S217/EK\P9YLIT PHY) MY /6:QXZN++QT^BVEI]MM[+29-4OU@C,EQRVV&.-01\SE9,9!SL[4 =I17S; M9_M3Z_\ \*H^(/BS4?!JZ9JNB>)1X>T[0[JZ"OND-ND#74J;U4[K@,^S(4?* M-Q&X]W\/?B/XB_X69J_P]\8RZ/?ZY::;#JT&HZ);2VD,L,C,A1H9)965E9?O M>80P(X7&* /5Z*\T\7_&_P /?#[5_%!U_6(X-/T*SLKJY@BTZ5I8!<2F)',@ M8B0,V!M5 5P22<\;G@CXI:)X^U+5].T\7MKJ6E>4;NRU&SDMID20$QN%<#*L M%;!'H: .OHK@-6^-WAW2?%%WH1AU:^N;*>&VO;C3],FN+>TEE *)+(BD*=K* MQ] P)QFN(\$?M4:7K-KXHFUW3-0TI]/\3W'A[3K6.PF>:_9.%6-<9>3Y79E4 M?*,9]2 >[45YK_PT-X+;0$U-+RZDE?46TC^RDLY#J O0,FW-OC>'"_-C'W2# MT.:P[_\ :+TRXUGP++I%S:'PYK,^HP:GS45@^"/&=A\0/#5IKVEQW::?=@O U[:O;O(G9PC@-M/4$CD5R:?M"^"W\ M0KI7VRZ$;:C_ &.-4:SD&GF]SM^S_:,;-^X;<9^]QUXH ]*HKA_!7QAT#X@Z M[JFEZ)'J5R=,N)K2ZO&L)4M4GB8*\?FL I8$]!6)J7Q\\.>%[K5UUC53<"#7 MX_#\%O9:7-YJ74D(E2 _,_FL1DAU"CD#&>2 >IT5YHG[0O@^3P^VIB:_$HU0 MZ+_99L)?MYO0-Q@$&-Y;;\W3&WGI7*^ OVG]/US3?%FH:Y!+9Q67BJ7P]I-C M;6,WVZ[VP0R!3 6\GTZ5K MZV>$V=S"ADDAN P'E/M&X!L9!&,Y%=OX7\1VOB_P[IVMV*7"65_ MQ +J%H9 M-C#*ED8 KD8.".] &I17+>*_&,'ASQ+X3TR74(;236KN6VC@DLWF:X*0O(55 MU=1$0%SN8,"!C )R.8\&?M(>"?'FH:+;:97;K/"TJ^7G)8 M81N 21CF@#UVBO$?BO\ M0:'X+\(^(;O0H[K6=6TS2X]081:?//:VQE3? +E MT \O<.<$@@$$XR*O?\-#Z#H+ZS+XAU>*--/@TDS6=IIDWF6\MZA\L&3>PE#L M. JKLQ@ELY ![!17FDFO1=:$@EU6Z^QR?9+!#$90\T^-BC8"13?M->#]+M76YN=0U*XLM+M=5U";3=(G:."VFC+I.RC=Y:$!C@L2,8).*VX M_CUX+E\)Z[XC35&;2]%NA97CB!]ZRMLV!4QEMPDC*D#D,,4 >A45YKI?[0O@ MW5]7M;."YO5M[RZ>QM=4ELI4L;BX7.Z*.M: M/IFMZBMII=UJ5C,VE7"6M^L*DGRY=NTJ3@Y[KDC.* /8Z*\'T?\ :^\(IX7L M+W7H-6L-2&AVNNZG!%I%PR65O+N7SG.T[8MR/R3]W!Z&NHM?VD? LMMK%Q=7 M]UI4.EV2:E(^I64MOYUJ[;8YH=R@R*S8 VY)) QR* /4**\MN_VD_!.E:!KN MK:M/J.AQ:)%#<7UMJ>G307$4,KA(Y1$5W,A8XR >A]*Y3XJ_M8Z7X,\$:WJ6 MC:1J=[KFEWFG6TNF7VG3PND=W<)$DQ7 )0AFVD?>8!<@F@#WVBH;*Z%[9P7 MCEA$J!Q',A1UR,X93R#ZBN!\6_'KPGX,US4-*O9KZYN-,BCGU.2PL9;B+3HW MY1KAT!$8(!;GL,]* /1**\0TCXXZOXO_ &D;SP'HT$4'AO2M%M-4N;^?2YIV MO32P&-M/^.O[2VF?"_P]XO72(9]7\1:!:)-.L=A- M<6=I*XW1)<21X"%EPV-P."#P"* /;**\OT[XXZ&GQ&?PEJ.K1C5)S:Q6]I'I MTJ"*62V,^QYR[(Y959E "XP0=QYIK_'[PJWC:_TD>(+>UM])COO[1%S8RA5: MV6-IF%SN"*L8D 8;6RI45X9IW[3VG:O\3M/TF*";2_"[^'+K7KG4 M=:L)K-Q'$\>V1&DPIC*.Q)QG@=*Z33OVC/!FH66I74DVHZ='8Z5)K974=.FM MWGL4&6GA5E!D49'W>?F7U% 'I]%>9:-^T7X)U@WVZ]N],2TTH:YOU.REMEFL M00:ZB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *** M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *^7&G0S^&M4MQBVG2[#-<;Q$Y:-T(5U;A1&&'?/7_M.?%G5_A! MX.\/ZCH][HFESZIXAL='FU'Q# \UI9PSLP>9E6:$G;C/,BCKFJFF?%+4M+\# MZMXCU3XF>"/%6GQ7=M:0W_A?09C#;R/(JLDJKJ,^]F$D>,,FS.2'!P "IJ7P M)U[_ (9JT#X>0ZE;W^KZ<;'?=7#LD16&X21E!PQP%4JN?0=*T_%G@+QAH'Q6 MU/QOX,M-*U6;6-"BTB[M-3NVM1#)"\CPS*RQOO'[Y@RG'08-='I'QN\/Z[XD M_LBQM=7N8_MLNG#5(]-E:Q-Q%D21^MM,T^ MYNBEY+<06.HRVKI97TD!(E6"8C:Y4JW3KM.,XH \K^'O[/?B_P#9^ALSX(CT M?Q#--X:M]&O1J-RUDJW<+2.+E=L;[E9YGRAP>G->C>$_@S)X%_9I@^&6GW45 MW=VWAV725NW7RXY9WA96D(&=H9V)[XSWJ72_VA_"FNWEC!8F_P#(U-IHM+U2 M>R=+&_DC5B5AE/#Y",1ZA21FJ_PR^-;:Y^S3H7Q2\46ZP&;05UK48=)MY) @ M\O?)Y4>6<@ ' R30!QGA']G[Q+H>A>*+.XFT\S:GX#L/#4)CF8@74-K)$Y;Y M.$W.,'DXSP*QF_98\1S>,_ 3-J5C'X/BLM-?Q7IJNQ:[O-/A9;7RQMPR&1HV M;=C_ (]X^.:]MU7XS>$M>=+K5%2+5-,GUF&Y"DPI90HKO/(_1$PZX)ZDX% M9>B_M#>#M72]>>>]T1;736UG.L6J6W[1?A%H]4:]75-&DL-)?7&AU/3Y())[%" \T2D9=5)4''(WKQS72^$/ MB1I7C+PO)XB@AOM-T=8_.%SJMLUJ'BV!_-4-SLP>OL: /FN#]ESQC97^F:X; M;[5J+>%K3P[=Z=I_C75-'CBEM6E\J<2VAC\Y'67F-U^4YP>23T?A_P#9]\8? M"6*]C\&6>@ZE%K'A:TT*ZAO+V>!+*>!9566(NLTDD9\YLHS[OE'S<\>FZ/\ MM%>#]88$-J5E#-93ZC97%]820QW]O"NZ1[=F'[S"_-CJ0<@4WP]^TAX*\1/: MLMS>Z;:7FF2:Q9WVIV$[#1K66YFU'6;I- MO$%Y+I. MCS;$M)8RXN#'ES&A"L=A9F7ID]: .4\2_LZ>(K[X>?%SP]8W%@9O$][9RZ:\ MTS ".%+=3YI"?*?W+=,]J^CD&U%!Z@8KS'Q)^T=X+\-I-,T]_J=I;:?'JMW= MZ58R7,5I:R*6265E'RAE!8=\#.*]!T'6K7Q)H>GZM8NTEE?V\=U S*5)C=0R MD@].".* /(/"WP9U[3/ EYX:O9;(P:EXKN=4O#'*Q!L9+EI]@RHR[ (A'0!F MY..;7QC\&^//'FD^*O"L&G^'M4\.:W;"WL[RZF>"?3-R;9&:/8XF(;YU(9,= M#TS6AXY^+=[X0^.7@7PBR6,>@ZUI&KZE?7=PK>;";06Y3:VX*%Q,^[*GH,$< MYFTO]H?PGJ=Q;QLNJ6,-Y:3WMA=7UA)##?Q0IOD,#$?.0GS8ZD]TSQ#XJUS M5#"U[JUXJP"%BPBLXD"0H20.2?,D([&4C)QFN8T+]I3P9KZVTD3ZG;6UYIDV MKV-S>:?)%%>VT2!Y&A8CYBJL#CKZ5LO\;/",-OX?N)]1-K;:YI4FMVD\\;(@ MM(XUE>1R?N81P<&@#C+3X.:M:^$/C!IUYI>A^(AXKURYU*TTS4I7^RSP20P( M(YF"Y1B8VY4':=I%1_!'X$2>!_'FL>+[_38M*O+JPBTR"W;6;K6;CRD8N6EO M+G]X_)PJ=% XZUTNE?M">%=2:02Q:MI8.F2ZQ;G4M/D@%W:QJ&>2'^&X+&+5K:/Q)"]QH]U?Z=)!!>HL8D)C=AS\AW '&0#CI M0!PWQF^ /B7Q_JWQ#N=-FT](]?T_1K6T%Q,RD/:WGG2[\(< KTQG)].M>B^& MO .I:1\;/&WBR=[#SM^X8P!^\7&">_2M_P -^/--\8KK MO]B^;>-I%Y)I\VY#&CSH 61&/# $@$C@'/I7EG@SXO>-5^,&D^#/% \-W]UJ MMA1E5B$3_1UVK][&2?O +Z[0!\QVG[/ MWC>T\5W'Q%+Z1-XMN?%1U]]"^TNMHEO]A2R6 7'EY+A(PY?R\$DC'>KOQ,_9 MU\0?'F#PI#X[?3H;6WNM2EO[;1;B6$V\4\3) B/C]\\9*L78*"R@[> *^CZ* M ./^$MCXNTKP'ING^.+FSO\ Q%9*;:;4+%CLO40[4G92HV.Z@,R#(#$X)%>) MW'[/OC:Y\+1_#LOI$?A!?%B>(6UU;AS=M;KJ OOL_P!G\O&\N F_?C;SC-?3 ME% 'GGP6\ ZE\/M&\06NIO;O+?Z]?:G$;=RP$4TFY <@?-CJ/UKSO4_@%XDO M/&,NJ)-I_P!F?XAV?BD!IFW?9(K3R6&-O^LW=%Z8[U]#T4 ?-]_\ ?%EAXTN M_&.F'3+O5;/QI/XAL+"YN&CBN;6:P2UD1W\MC'(,,P(##@>O'.:M^S-XU\4R M7'B'5A:6VN+XRN/$46E:/X@O;!9+:6QAMC%]LMQ'*D@\LG?LFZ[XF\!ZUX7NGLM M?$VMMJVJW/]IW>M7D*PQ(EJIGOC(9WS$A9B$4* M-@4]3[MX.\2^((+K0/#GB/3+4:R=)^TW]WIT[/;I*C*A"@H,*^=PR)O"FG:+-=7%])$+&XMH)8F8*(CYJ-Y@(.5(P>*^M** M /EVZ^!/Q#\+^&O'WA_PW;Z#JEIXRL[=I+K4+V2!["Z6SCMI1M6)O-C(A5EY M4@DU/KG[.'BK4=>\1WD4^F^3J$WAB2$-.^0-/W?:-WR<9R-OKWQ7TW10!\J? M&SX=7'A3Q[X@^(^HZKIFFVCZWHE[IC7QE%NSV\$D,B74BQL+=6\P[96^4'&< M5U/[,^KZGXT\?_%;Q?=0Z>-,U2\L8+&ZTFE7U]#8V/CZU2UL[F!F:2#%IY)9UP.C9M<\'Z;H-J5F8@7$%K)$Y?Y.$W.,$9.,\"L MV7]F#Q#-\0_"M^')?#NBWD/]HZ3HVK?;AJ=YXPUB>"6)7:2,+I?G"WCD!*C/ M*C!(7G%7(OV;O%JZAJ%MH-K9_#[1+ZQU.WU'3M,\0W=YI=_).+&]CTBRU'6O %GX4MHX[UY8Q)?%/ACQEML8-+U?5+"SL+0:KXNU7 M79,1W:3REI[MV$:83A$CSGJ>:ZWXU_ #Q-X^UCQY?:5+IP_M:TT,6,=S.R;I M;&_%RZN0AV!@H4,-W)Z<5]%T4 0V4D\MG ]S"MO_TSQ['&SW.H73P2Z9,+9;9SL$;B92JJP&4(((S MSQ[]10!XS\*/@KJ?PY^*6K:Q)=6]UHTOA31=!MW#'SFEM'NS(S+C 4B=,8)[ M\#'/'>//@AX]MHOC!I/A*#1-2TOXASC4/M>J7CV\NGSFVBMY$*+$WFH1 K*= MRX+$8/?Z7HH ^W#R^$]4TO6]6!+33ZG?%));D+M^=3 M+O8Y(.,#Z?5]% 'S!XR^!GQ"^-"W%AXL@T/PY8R>#K_PXUQI-_+<2-<3^5B8 M+Y4>V/\ =_^L[.UC\ -X::4,S,MZ+BVE M1MNWF+]P&/",^G+X0N/#XT:6_DN8;R:2>"1C M(3"NR,B,@ E2 ><\?1M% 'A/P5^&GC?X9ZAXFN,/%X=N(+2+2?"5YXFNM62 MSD3(FE2[N$,D:,I0"$94%"1C=Q[J,D#(P>XI:* "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@#S+X[?#74_B;8>"X-,DM$.C^*M.UJY%V[*&@@=FD5<* < ^H MJU\AT4 ?.-U\! MO$\?Q0_MOP[8Z?X(AN-:^WZKJ.AZ_=I%JT&TJRSZ68_L[3.N TI);(W9[5T' MP@^'OQ$^'.@:#X+>;04\-:&+B)-8CDDEN[R$ES"OD% L+KN&YM[@[3@#=Q[= M10!\<>&?V4/','BCP!K&N6^B:GK_ (?OI)=3\6:AKEYJ-_J,1BGC40K-'BT3 M,H8PQMLSP.@->]?!/P5)\'OV?/"WACQ5%/"FI1[L1:2K.T3K@C* M[Y-N1C'4+M;N/P[X@M_#5UI&F:LWBW5]:F6ZFV!IH_M3[ M;5,1CY45FR1AAM&?JNB@#XVL/V1_%?\ PE6L:U%H_AW0GU'P5J/AZYE.MW>I MWU[?7$MM(MQ<7<\7F2)^Z=0&)*#&,@X7Z5O_ VN?!^7P9>7 @DN=%_LN6> M DA&,/EEEZ$@'GM7:44 ?*'AO]EOQ-%;:7::G#;AM&TB[LX+ZZ\7:QJHN+B2 MW,$;QVUP_E6JX8EL"0@':..:W/%?[+^K^-?!O@3PY>ZA9VEOI7@^[\.ZA/"[ M,PFEM8HE>(%1N4,A)SM.,<5])T4 ?.=W\+/B;XQU+39-?M/#.FPZ=X8U#1 ^ MGZA-,;FXGA6-9=I@41I\N2N6(SU.*/!G[/7B7P]H.LV5SI^'[W7];\*6-A/ MIVH2W$-S]K2R^S#[%']G/VY7P J(00W!QFOK/P+H6I:=\(?#^C&5M+U>#1+> MU,NT.;>80*N<'@E6'0^E=C10!\[6_P '_B5XM\9>'_$/BG4M*TS5?#?AO4=' ML]2TVX:>2^N[OR@;IT,,:PA1 #L7?DN>0%YX'1/V3O&*^)O"^M7FF>'X=7T^ MQO[;5M?NM+='$K;3Y )0;V*X(PWV/10!\^-^SWKUWHO MPQTZ:\L(5\/>&;[1-0D1W;][/:)"K1#:-RAE).=IQBN?@^!7Q2U&P\(VCWNA M^&)_#7A*\\.VVI:?>RW,S7$EO'%%=*K0H$ ,>=N21GACBOJ.B@#X^T']E+Q9 M'XIM]4"G$>2%!RH[5TG MQH\,3^!?V9_ FCI>V:_$KPO%IC^'+>%M[7^IVRQQFWA! 9DE!>-C@820DX . M/IVB@#B_A9X"E^'7PUTO0%N5FU.*!I+N]8%O.O)"7FE.3DYD9CUZ<5P#?#'Q MSXU^(_P\U_Q7'H6F/X-GNKEM3T>XDDGU1I8&@,9C:)?(B(;>R[Y,E$';->YT M4 ><^'/A]JFC_'/QUXREDMGTS6](TJQM8D=O-$ELUV9-XVX"GSTP03T;(&!G MN]*FO9["*34+:&SO"/WD$$YF13GLY52>/]D5;HH **** "BBB@ HHHH **** M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **\] M^-7Q1E^%^@:0UC8IJ>O:]JUOH>DVDSE(GNIMQ!D8 D(J([G SA<#DU4T;5?B M1X5U]1XTG\,ZSX6:QEN;C6]'M)M,;39(\$I)%+<3^$+V%9YHM5TRTN+"XU+3[J_LC%'J4$*;Y&MR3EB$^8*0I(Y ZU#IG M[3WA+4M+&H_8]B[2,>I(%<_H'[0VC^,G\$7>F M+?Z9I'B:5OL,^JZ4RC4(OLS3AHG\T>4-J[MSJV1P ,A@ >NT5Y)I/[3'A37] M8T33;&WU96\0"Y_L6_N+!DM-0$,3R.\G M_M9>+O'?@KPS)X4\-6UKXCU06L,[:G"TL4=U.CS)!# )HS)F&-Y"[31A4P?F M)V5Z9\-_B9XUCUK2] ^(^A6FF:AJGVA+#4+!/)BGEARSQ- 99O+)CRRL)I X M1S\A&V@#V"BO ?C7\6/B7X!7QEXAT[3O#^D^#?"\$,B-KL4LMQK\C!6=+9XY MD$ &[RU+I(6?^$ !/#^@:5#J M5[K6M:=::K)=9V:=:7$PBW$*P_>L20HS@;22"!@@'N%%9GB?5I]!\-ZKJ5M8 MRZG<6=K+<1V4'^LN&1"PC7W8C ^M>$?!_P"./B[XDMH^JV&O>!?&.G3KNUKP M[H*26NJ^'PRL5\PR7,GFLK(8F1H8"2=PQM*D ^BJ*\$^&7[4]OXM\(Z9>ZMX M?U.#Q!J=]?6]CH=A:^9<7$-M)AY5!?&Q 4#,2!N; '(KIF_:2\)R6WAIK.'5 MM2O/$)O(['3[.R+W!EM2!<1.I(",A.""<<'F@#U6BO+H_P!HOPI>Z+X>O]+B MU76I]=2>2TTW3[)GNPL#;)R\9(V>6XVMD_>P!G-[EA$C1R/E %5-VYOO,< = >]45Y./VE_"-W%X8_ MLN#5M;]P^R=9 2 C1OE6#$8((KG/B!^U##I=]X?M/#&F7 M=^E[XLLO#=SJEU82-8@O.(KA$E5A^\3) )RNY2/FQB@#WNBL;QEK5SX<\(ZW MJUE:+J%W8V4US#:-((Q,Z(65"QX7)&,]LUXQ^R9\?M?^/NF:QJE\FFZAH,4= ML]CK>DZ?/902S.A-Q:[)I9#(86 4RJ0K;N%�!] 45X_P#&KXB>+_#GQ#^& M7A+PE/_ M S\0KK2M1;PS'ILL.K^'+":!+E[S>L=F;9YIF6X#1Y $AW+*APO< ]_HKRT M_M'>$+;3M7FU#^T=)U+2[B"UN-$O;0K?F2?_ (]PD0)WB3D*5)&58$@J<0ZA M^TOX0T;1=3OM3BU73;O3;VVL+O2+BR/VZ.6X(%O^Z4G&;[3O#]V]I:>'K-;3.J7UTXE,T902E<*L>X'Y<+DDFO M2/"'BJ'QCHXU"&PU'3,2O"]KJMHUM/&RM@Y5NH[AE)!'0F@#;HKFO'?Q!TGX M>:=9W.IF>6:^NDL;&QLX_-N+RX8$K'$G<[59CD@ *22 *C\!_$72_B%;ZD;& M*[L[O3+HV=]8:A#Y5Q;2[0P5UR1RK*P()!!H ZFBO"/B]^TY!X/TG5#X9TR[ MU:ZT_5;?29]1DL9)-.BG>6-9(FD5E.Y5?&1\H; )R"*Z?PK\<]$UCX@:AX1G MOS-JG]I7EC:[-.>WB5K:&"22%I&D<22!9PX8! PSA?D)(!ZA17BT'[4/A*XO M[VZ34I6TBVL99T@&F2>=JQV M\NMMX<&J2V++9KJ 9E$!?.BL'QQXWT?X=>&+S7]=NOLF MFVNP,RH7=W=PB(BCEF9V50!R217DWQ*_:AMO#/PS\9ZQH^B:B?%/A^"*230] M4M/+FB$V?)FD0.-T)(/*MU4C@] #W>BN!_X2_P 1:#\&IO$VHZ=_;WB*VTU[ MU]/L+)[(SR!2PC6(RSLAZ#[[G^5<%\&?B_XH^)-[I-[8^*_ 'CG1;B)6U6R\ M-QR6M]HA==T9EWW4QDY5D*M'"V1G'!6@#WNBOF+0?VG/%7B']IK5OAS:V&ES M0:5JSV5]I4-I,]Y:V/V=9(]1DO!+Y*J[L%$'E;AD?-FNI3QU\2/&/QF^(/A; MP]K?A3P_H_A=+ I)JN@7-_/,9X3(Q9TOH%4 KQ\O3O0![I17FWP ^*=W\6OA M'I?BO5+6VLKJ4W$,[63EK68PRO$9X&;DQ/LWKDGAAR>IXSPQ\1_BK\3O!;>/ MO",/A>+P]<;KC2O#VHV5P][J5LCD;C>+<*D#RA25!@D"Y7<3DX /?**\.@_: M/31/%OBO3?$]H+-+*ZTVQTK3K&%IKZ[NKFV\TP !B'<$/R H"J23@9JKX]_: MDM=$M/"=UHMATDLI5B?< 'O=% M>9I^T%X6DT-;U$U%M0.IMHO]ABU_XF O0F\P&+/WA&0^<[=I!S@UAO\ M"Q: MWXL\%Z9H-N$34==NM$UFTU2!DN[":&V,VS:&PK$&-LG<"K@CK0![1117@'[1 MG[0FO_"K7+.Q\+Z39:RNF6#^(?$BW22,\&E1R(LABV,,2E3(R[@P_=G@YH ] M_HKYQ^-G[2^L^ _$5C;^'(=(U'2KRPTJ^AN;F.1S(MUJ<%J2"LBC;Y4I9>/O M8)R.#[5\1OB#H_PK\%:KXKU^26+1]-C62X>"(R.%+JHPHY/+"@#I**\I/QZT MFU\0^7JSW7ARQCT&YUN:SU;36CG$,4T:&;S1*0%^<#RRA8Y!W#&T\WXR_:LT MO3O#OB=-*TS4K#Q3IGAR;Q);66OZ=)%'+;(RJLAVL,@LX&T$-P_1Y[;1TT\&\>W0#,YCW_ "Q_,!EB#DXQF@#T^BO*I/VDO"MS96%Q MHMKK/B@W5@VIF#1;!IYH(%&KZXM?LVK MZF]E9)J.HG3K!Y/[.MW&5><'#(2 3LP6P#\M 'I5%>2^(_VF_"'A_4M1LXH- M7UO^S=,@UF\N-(L3/#!9S*S1S%LC*D*QP,G@\5H>+?VAO!7@N]T^UO\ 4)7E MO]+_ +7MQ;0F7? 9(XH\8_CD>9%1>K$-Z&@#TJBO+U_:*\)Q:;K,U\FI:5J. MDS6]OVA6_P!]Q_Q[A(@3O$A#!2I(RK D;3BK\)?C-?\ Q*^)?Q"T*;29 M=(L/#HT\6\-]:/!>;IXG>3S);F$MA9 .=C*[H< M<@-D=*YO7? _Q+^*32V'BB^T7P?X=;3KFUGT_P /7LFHOJ$LT9C#2R36T/EQ MQYW!%!+$\L ,'I/C5\49OAAH.C&PL4U+7M?U>WT+2K69RD37,VXAI& )"*B. MYQR0N!R:K:7JOQ%\+:\I\87'AG5_"IL9;FZUG2K2;37TZ2, [7BEGG\U&!.' M5D*[#E3D8 /(O'/P=\?:GX"TV+Q,^A0Z;X(T'41;-HUS/<7&JS&QDMXV>-X4 M$ "L255Y220,@#)UOACX*\6>)-.^&/BOQTFA:+HWA30S+''874TTMVTML$9Y MTDBC$"JF24!EY/WL#GN;#]ICPE=PQW%Q;:OI5G=6%QJ>FW6H6?E1ZG!"GF2& M#YB2=GS!6"L1R!P<0Z;^T_X5U'2UU Z;K]G:W.ERZSIS76G%&U.VB3>[6Z[B M68*0VU@K$'(% 'EG[/WP=N[SP_\ $-[6^2\\/+!?^&O!$\ZLD::=(SR%AP?W M8EE\E6 Y2V4C((SW,WP$U:?P;\&='O;NR,7@VP-IJY@>1C,#IK6K?9_W>6^9 MLC<%X]^*[K5OCAX6TFT\/W/GSWD.N:;-J]FUI%YF;6.$3-*W/ VE<>I(%8'A M_P#:'TCQBW@B\T^#4=+TCQ/(QL)]5TW OXOLS3AXV$P,2[5W;G0Y' '.Z@#P M7X6'6_$7B[X)^$],NM$UK0?!5M?12ZAI_P!J6Z$(L);:![N&6WC^R.2R*8MS MLS;CP%KTS2/VE=?I'[3/A?Q!K&A:=96>L)_PD0N3HFHW-@5L]06&)Y7>-\YV;8R06"E@ M01D'-62061CL]1FME9Y(K=FD)R%&[# MD9"M@G% &-H'[,WB_P .^"-$M[>;1QK-E#:I<6L&I3PI)<6H,<%[!>"W+02> M4Q5T:"5&&%]6/H?P\^%/B6#7],UOQEJ<=S)I7GR6.GQW\NH%+B8;))Y+F2.+ M>?+RJHD,:H'<88G=7F6F?M8^,/'?@WPQ)X6\,VEIXBU06L,YU.(R1)=SQO,D M,4*S(7'DQ/*7:5 JX/S$[:]-^'7Q+\;0Z[I>@?$?0K+3+[5?M"6%_IX,4HZ/X5\3^#]+>&3P_HM M]XAN;-(IE7+7-S$MA,LDH+/QJ^*_Q*^'\7C/Q%8Z?X>TG MP=X8@@>$ZY%)-<:](RJSI TVFENM0F-HEW+%'(DR+!LB=5#,DF6/0 <@$^*_ GA_0-*AU&\UG6M.M-7DN]VW3;2YG$0)"L/WK$D*,X& MTD@@8(!ZYXETJ]U?PQJ>G:=JLVCZC<6LD%OJ<:*\EM(5(64*PVL5.#@C!Q7A MNL_!CQQ\1_$7@?4?%NF>#=+UGPS?P79\9:+Z>)]5N-"\-ZKJ5I8RZI=6=K+<16,/W[AU0LL:^[$ #ZUX9\&/C M?XI^*EQH=_IGB3P%XKLY\'7?#^CK+:ZIX?#AMIE+W$AD9'4QLC0PDG+#&W:0 M#DW_ &9_B&FF:#I$\NB:WX9TZZU87GAR3Q#?:?:ZK%=2++#-.T-N26C.]#;L M'C8.3NSQ6W\$_P!F?Q'\-;WX=27LGAZ"V\-W?B&:>VT;S(X0E_*'@2",Q@ ( M 0P. ,#&:B?]IOQ1>?M+7/PUTRRTN\EL=5AM[O18[*:2[32W@WMJ;WBR^5$J MN57R6B+'( ;+#'4?\+#^(7BSX^^/_ _A_5?#&A:1X8TW2KQ)]4T2XOYYVNQ< M%@62]@50OD#'RG[W7B@#G?!7[/WCCX8WGACQ!HC^'M7U_3H=7L+NQO[V>WMI M;:[OWNXW29;>1E="5!!CPKR>'_%FGVG]J/JWAJ? M6[[3]+NIKF_>ZBF81PO]H50VTPS)M.3R>I]K_9\^)NH?%OX9VNOZI:VMO?"\ MO+&26PW?9;HV]Q)#Y\&XD^6_E[@"3C.,G&3Y9X!^+_Q<\;?!G4OB5!<^#IK> MRN=4QX=&C744LT-G=SPE1=F]95=D@SN,) )QC'- $_P!_9I\2?"B;P#_ &E= M:$\/AVWUJWF321)'&WVN],\/DQE $54."N?E(P"PYJ&+X _$#2=)T3P;ILGA MI_!^E^,H?$D>I7%Y<+?O;+??:VMS ("F\%F D\W!"@%5R2.YA_:B\*7NAZ3J M6GV.M:RM[H=OXBGATNR,[V-E,F]))AD8R,_*NYCM. :76OVK/AYHGA[5-;?4 MI[O2["6Q1[BS@,JRI=J&AECP?FCVDL6_A"L3TH W/V@/A?=?&/X5ZMX5L[^/ M3[BZDMY@9PQ@G$4Z2F"8+R8I A1P/X6/!Z5XQX/_ &:O'>C_ +2&G?$UE\+^ M'M$4RQW7A#2-1NYK[^PW,C)A#+L5B$.?FP&&?>N6^/_P 2-3^%7P_CUW28+2XNVU;3K I> MHS1^7<7<4+G"LIW!9"1SC.,@CB@#&^-GP&M_C+\0OAEJ.KZ;HFM^&?#EU?3Z MEI>MP"X6X$UL8XMD3(R,5?#'<1C&1D\5)X]^ >F2> K#1?A]I.@^$)=+UBWU MRTLK2R2TLI;B)PQ$BPJ,;P-I<*2.#@XQ5S5/VB_"FDZOJ-M)'J4NF:9?)INH M:]#:[M/L[EB!Y'P(3IVE:3KMW8_;;G M3DUR/3RVGM<6[LDR>8"2H5T=-S*%+(0">,@#_C9X ?XC^$H=,7P]H7B41W<5 MP;+7;F:T52AR)(;F%'D@E4X*NJD]1QG-F/B&;7/$$BP MVIU>YOSI%HR,X5;F:(27 3823($P&P"< -O_ !>^)&I^ -:^'=GI\%I-%XB\ M1Q:1=FY1F9(6AE&SJLMD5L MUU ,4$!?.?F88#;=N6 )&: )OC_\/?%/Q#T30(/"^J"U^PZK'=ZCILFJW.EQ MZI:A'1[=KJV5I8AEU?Y5()C"D8)(POV9/@?J/P47QLEWIOAW1K+6]52_LM,\ M-O(T-K&+>.(HS/'&7?,9)?&6SDX)JEX\_:@CT_4O#-KX7TF[OK74O%MIX=FU MB[L7-@X:8QSK%(K@^8N" S#82I'S=*W[?]HC0K;3[,2276O:OJ.J7VG6&EZ1 MIQ2YN#;$^=MC:5@5C4?-(64'(P 6"T <-KOP&^(-KX;\1^#/#[^&9O#.K>(# MK<>IZA>W$5Y CW"SRP&!(&5SN#!9/-'!&5XYC\9?LS^,-4\.^-I= UO3-)\6 MWGB^7Q)H.H-)*4MXY+6*W=92(\ABJR\*&'*\]<>G3_M!^%3I'AN\TT7^NW?B M$2MIVDZ;;A[R01?Z\M&S*$$9P&+$ $@=2 :S_M'>&+FPT>;1['6?$5WJ<%S< MQZ;I5EONH8[=Q'<&1&9=I21A&5SNW' !H XS4/V9I[2X6VL--\-ZUX?A\%1> M&5TC7?,,-S(MQYC&0*AVJPS\XRP8YVG%9-G^SEXYFLYK>;4K/3=*77-&U&Q\ M/2>(+W6(+&*TD5IC'2,9."%ECRCJ>>5)!!I/C=\1M2^&OP0\1^,=,@M9]3T[3Q=117: M,T+/E>&"LK$?,^7S?-^[_!FK\W[//B.3PI9:8+W2_M$/Q'C\7LQEDVFS6\\\H#Y> M?-V\8QMS_%CFO3_C'\4K/X-_"O7_ !K?VTM[#I=L)5M(/OSRLRI%$#VW.ZKG MMG-8FEW7Q@L=2T&ZU:'PKJVF7TXCU'3=-MI[6XTN-@2)%N))W6YV$!6'E1%L MY&,;: -+XX_#B\^*/@)M)TV]AL-5MK^RU6RFNE+0^?:W,S7-I;10S/*TDD[01NS.T MAX$6%"CDYS7TC7F.M_M">&M"U#44EM=4N-*TR\2PU#7+>V#6-G.S*NQWW!OE M+J&*J0,\G@X .O\ %&AZIJW@R\TO1]8;0=7DMO+M]3CB67R) !AMC<,,CH>W MI7CVH?!WQG\0O&O@SQ!XJTCPAX?UKP](KR^)_#][/<:E>1JK@VR[[:(PPN9& M9D,D@YQ@D[J]?\<^.M*^'GAV36=7DD%LLD<,<5O&9)9Y78+''&H^\S,0 *\7 MM/VGKRX\5_$"SO\ 3Y?#FF^'I]%M[>/4=*D>\,EX7#K(@G"L"578Z' W9.[& M* /*/%G[$GCO5O!&@^%M'NO"NCW.A75U<+XNCO+M;_68I93,\%W"D2[?-;:) M)!-(?EW*N<*/8])_9;T+Q#\6/&OC#XA^$?!_BD:U;Z;'91WU@FH26C0P%)E! MGA^52^,8/(&2 >*ZJY_:*\)O\/\ 1_%-MJFD_M&Z->Z=HYMM/UOQ+-<:78:G>7.AZ0[);172@Q2/#O9U MW?,VQ?,90#DG&2 >JV^FVEGIL6GVUM%;6,40@CMH4"1QQ@;0BJ. H' X KY MJU+]FSQ$/A='\,&\.> O&7A>Q$EOHVL>*6DDNM+AD)&X6OV:19)(U8A66:+= MM7.WK7IFK_'G0?#&L>)+34KR2ZFT_4+33+;3;+3W^TS7-Q'OCAC/F$3,W)SA M H!W< FH+[]IGPAI6FB>_AU:SOQK$&A2:/)9YO8KR<$PHT:DC#XX8$KSUZX M/*-*_9%\3^$-8T?6=%UC2;W4/#5[I=YI<5\TL4=Z+?39+&>.LS,K*) M,$#(/2MF^^ OQ#GU^/QG'/X;/BJ;QA;^(KC2Y+RX^Q16T.G36:6Z7 @WLY\P M$N8E R?E. &]K^'_ ,2=,^(L&J?8K>]L+S2[LV5]8:C"(I[>4*&PP!((*LI! M!(P:P?%WQ]\.>$->"-&LH(?"6FZ)9ZM-J!5EV_/EI1P,!6YP >S:5)?3:=;OJ=O;VE^R S06EPT\2-W"R,B% MA[E%^E>+:5^S5;^(_&7COQ1X]N;F]U#Q!=?9K:VT;6[ZU@ATN--D,$@B>(.S M9=W# @&0@$@9+?B1\:/&'PI^ -YXQ\16>@6^J65W'!/J-M*\VG?9&F5!?K%O M#E2C!_($A;/R[V^\>=NOVCO&5A^R5XV^*4FF:9)J6E+=3Z+=2V,]M9ZM:*X% MO=_9GE,L:2* ?B'\/-%\0ZGX:\2V7BV[FLC!H^C7&GW=J4M MVF\\;[R<21C9M;Y5QO4Y['I?BY\3-5\+:WX3\)^%[2SN_%GBF>>*SDU$O]EL MX88O,FN)50AG"C: @92S,!N7J #A/VBO@M+XUU36_$-_J46G^'U\%W>C2R10 M37-S'.UU!<)((8T8O&/).0#N]!W'F,.E>+_VB_'_ (D:!O#;V8^'TWA^+4=( MN;B>Q6[FN8G DF>WC(8K&6,2JWEC&22PKV/QW\0?B?\ "KPAXUU/6;;P]KL. MEZ,^I:=K-A9S6D!G4@&WGMGN)'Z?,'67!&1@$& MD$\D@/VH7,V6W6*^Z.BO*4^1E&U=O.WX)_:CM[W4_%EMXDTR[M;'2/%-Q MH":U963?8(E#JL FD9R=[;EW,HVC?M#^&+35;B#[/JDVE6VIC1I]? MBM@=/BO"P0Q&3=N)#L$+!2H;(SD' !H_'?P!J/Q0^#GBGPGI<]M#J6JV1MX9 MKQF2(-D'+%58@<=@:XCXM? K6?$_Q)T;QGHC17TUMI;Z5=:9-XCU#0U=2X=9 M%N+-68D$$%&0@YSD$5U_P)^(^I?$_P ,:[J.J06D$]CXCU;1XELT95,-K>2P M1LVYF.\J@+$$ G. !Q7?ZA?V^E6%S>W$M$M+#0?#-YXAMK.\!UVV\0:GHU]8W-R[/(8KJ))I9X\MDK*1N9=Q M^]@5;K]EKQOI^H:G?1ZQ;^+=1UO2;6TO[V_\2:IHVR[BA\IIS#9Y6X1^"4,;L'CI/@7^TAXB^(UQJR^(M)L-(6_T@^)?#"0I(LEQIC.ZH9@SG,F!&S;=H MQ*!CO6I^S%\=M?\ C3#?OK=IIMJ8-,TR]7^SXI$R]S;^9(#O=N >GMU)H TO MAI\")? WB;Q*UP]C/X?U'P_I>BPP6X=6_P!&CF24LC A5/FC:-['KGW\HL/V M+_$,G@;Q#9:MXBM+WQ$NIZ>VA7<5Q<0K#IM@^^UM9)(PLD98O*7:/."X(SBO M?O%OQDTGPEX[TOP;_9VK:OXBU&RDU&&TTRU$F+=)%C>1F9E50K.O4]QC)XKG M]-_:(T1M,TTXOO$.KZE>W]O::;H^FE+ATM9"LSF-I6 6/Y5+EP&++@ L%H \ MV;]EKQ)?WE_XG=='TSQ5!>Z;=:5:S:YJ.LQE;1I'\NXO+H>9M=II,*D0$?7Y MR37HOP_\'?$'1O'/CWQ?KEEX;^W:^FG0V>EV&J7#Q01VXD5_,G:V4L2)-P(C M')VG&-QP+K]JNWU+Q#\.7\-:1?:UH/B@:O')!'8,-0$MF53"*SJJ#=OW;^P& M,=V7O[7.DCQ9X2^R:;>/X-U71-1UB]UF:WVM9_97"2(REP048.'&TG(4#.<@ M ^@ATYZTMG:KJ6M_98[Z865LK0V]N[E!+)(S* H(.>IP. : .]HKR MWP]^T=X1\1ZA811#4;33M4%PVE:Q=VNRRU(0JSR>1)DEOD1W&0-RJ2N0*G\. M_'[P_KVD7FLSZ?K6AZ#!IIU=-9U:P,5G/:?\]$E!8#C#!6VL000O7 !Z717E M5G^TAX6DM=3EU"TUC0I++2'UY;;5++RI;JP0@//"H8[@I905.&&]<@;A5CP9 M^T%X;\9ZN^FBSU;1+DZ.->M_[8M/(6ZL=VUIHCN.0I*[@<,-ZY'(H ]-HKQB MW_:P\%7U@^H64&LWVFVUK!>ZE>V]CNBTN*8;HS&-/NO$.KZ!:12SW,-DUQI]I+*H>))V5U;)1E8A,[0ZEB M10![M14-G,UQ:02L &>-6('3)&:FH **** "BBB@ HHHH **** "BBB@ HHH MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@#S[XU?#&?XF^'=*33KV+3=>T/5;? M6]*NIT+Q)-GB>%!;@*Q)17ERQQN '.O\ "_P3XO\ $>G_ M T\5>/(]"T71_">AF2&/3[F>>:[:2V",\Z20QB *FUO!=: 8;_PWX)END>-(].D9Y">A.P2R^4K!>4MU(!!&>XF^ M FJS>#O@SH][=631>#; VFKF!Y"9@=-:U;[/\F6^9LC<%X]^*]YHH ^)_A6O MB#Q#XP^"WA33Y='U7P]X)MKZ)]1LENTNO)^PRVT#W<,UO&+5R613&'D+-N/ M7%>F:/\ LX>([+P_\&=/FO\ 2]_@V+4H]1>.20B3[19S0(8 < M9Z5]&44 ?+FA?LS>+_#W@71;>WET7^VK&&UCN+*'4[B"*:>U!CM[V"\6W+V\ MOE,5=#!*C#"?[=>A_#CX4>)+?7-,USQGJ,4TVE^?)8Z9!?S:B(IYALDGDNI8 MXC(WE_*JI#$J!W&&)W5[!10!\^^-_AS\3O$_Q?FUV^T7PGXJ\(Z8\3^'M'U# MQ)=6*02JN6N;B%=/F62;>3L.\A !@;LFHO&/P2\20<#Z'HH ^;)O@]\1;3X@V=XV@^$ MO%'A+PW%;6_A73-0\2W5DED(HE3[1+ NG3*T^0=K;R$&-N#DU?\ BO\ LLS> M,]1M]5T/Q+JFEZC<^)M-UW4XI;_]QMMW4MY/[EFWJJ_(#A<]<9-?0E% &5XE MTF\UCPQJ6FZ?JD^CW]S:R06^IPJKR6TA4A90&&"5.#@\'%>%ZO\ !GQY\2=? M\%7GC#3O!NEZGX9OH+O_ (3+0[J>75;J.)B3!'&]O']F28,WF+YTJX9EVMNW M+]$T4 ?%7CW]BSQOXF\*P>%M)N_#&D2V6JWNHP>.A=77]K3Q7!9I;::W2)01 M+E(W?[0PVH&"9 ],\+_ +*]AJWQ:\4>+_B-X8\'^)K?4M$T;3[*VN;4:@UI M-:I.MQM^T1?*C&2/!!RP7Y@,#/T310!6T[3K32+"WL;"UALK*VC6*&VMXQ'' M$BC"JJC 4 < "OFCP)\'?B_X.^#>I?#*"#P=:6=_>""\NIYBR MV9LD5I%6?: 9P,C.2.*^H** /GNT^!/BWX4W]ROPS.A7>FWGAVQ\/^5X@NYK M=['[)$T4,Z&.&3SOE;F,^7DK]\9XY"Y_8CG$_A'1X]7M+SPGIWA-]"U-;A6C MN;N[6UFMH)U"@J%"W,Q(+9!VXSBOK.B@#S;]GKX]\%S^(K76EU M:>ZE74;6W@ECG%HEJL'EM^\C"B0S#"L3M)&#[[10!\X:]\ _',^A^,/ VFW> M@_\ "&^)]8DU276+BYF74+*.:4230K;"$QRG((60S)@-RIV\VKK]G?Q _@+Q MIH4-[I@GUGQFGB&U=Y9-JVRO;-M<^7D28A;@ CD?-UQ]"T4 ?**?LDZ]8ZIJ MND1'3-1\+ZCXADUO^T;W7M32:WBEN/M$EN=-3_1I2'+!93(O# E"5RW267P& M\5V7Q:M]>TJS\/\ @W3_ .V9-2U'4/#NKWL;:Q"5("7&F&(6XE8%=\WFLQ*E M@/FP/HJB@#S?XO?#?4_'^M?#N\T^>TAB\.^(XM7NQ/$4_A2#2_MNE^S>;)M^QB\$Q0'R\^;MXQC;G^+'-?0U M% 'S+!\ _B)IFE^&O!ME)X8;P;H7BR#Q!'J"]:\/^*M$N-"U'Q!I&I:VYTV^NYK>UNK/4)4?!G6!V MCE0Q1'B-@?F7/(8?2=% 'SM\0O@'XQ\8ZUX'\875]IVM>*]%L[VPO]/75KW1 M;2XBN7C?$=S:JTBF,Q(!NC8.,Y"G!&3<_LS:W9>"=!LH/#?A/6M;MY[^]ENW MUW4M+N;"YN7W;K6_CCFG<8.UPX4R%58X^[7T_10!X[XE^$?BG7?V7[OX>W6O M0:WXMGT46$FKZ@[I%//@?.[!6;'&,[2>^,UF?$;P;\4/BK\'_%7@O4- \(Z' M-J&F?9K2[MO$EU>*905P)%;3XMJ\'Y@6(_NFO=:* /'?&/@/Q?\ &[X>>)/! M'CC1-!\-:9JEEY46HZ#K\^HSQ3JP:-_+EL8 -K*K9W'E<8[TZ+1/C)XBGT+3 MM9U#PYX;TVPNHY]0UCP_>S7%YJJ1L"(A;RVZ);+)CY_WDI RJGGTAD65I!<(H'[SYD7')(P-PXX8U\P?%C]D_P (?$.K7LL^EVY>)S;PV)@:&%OW6SSXW#8.2IY!^OJ* / M.?C3\-M0^(OA'3(-)N+6VUS1]2M=7L?MN[[-)- ^X1R%06"L,C< 2,YP<8KR MW5_@1\1?'&J^--9UYO#&F7FNW>@RVUEI]_<7$=O%8S2/(KRO;QEV8/E2$ R= MIQMW-],44 ?-\/[+^L6WQ2\:ZNFJV,GA*_M;ZZT/2I"^^RU.^B5+J1ALP(R4 M+J5).9I>.F<+Q#^S)XSE\&^&-*T:S\,V'B73?#-CH:^-++6[[3M0L)84578+ M%"5O8@R[ECE:,'D'&XD?5M% 'SCKO[.OBV7QCJ7BS3]6TJXUFVUS3M;TR.^> M1([LP6;6TT=PRH3%Y@D8XUYQVR?I.B@#S_X;_#_ %'P=XN^(.J7 MLUK+;^(=62_M5@=BZ1B".,B0%0 V4/0D8QS7"^+OA'X\M?$'Q%/A&70+G2?' MD-XRI4 @J0<^E44 ?+&E_LI: M]X=TO1[_ $]?#DEY8>)KCQ''X,,DL&@VPFA$?V:!Q$Q0(0T@D\G!=W/EINP. M&M?V)OB#;>"?BUHD6I>&+2S\:Z7+9Z;HD-Y>-:>'OW[2);0NT?[R$[V8L(D* ML<*FWI]P44 <;X*^#O@7X>7/VSPUX*\.>'=0>$0RW6D:5!:R.O!*EXT!(R < M'TK'^+'PRU+Q5KWA/Q;X;O;6S\6>%9;B6RCU -]DO(YHC'+;S%,LBL-I#J&* M%0=K?=/I5% 'R9XM_9.\0>/M?\5^*)-#\#^!M;U'P[>Z'#9^'WDG6]EN9(9# M?'W'VZWM7G63R!;^1LDSW=K9"YBF^R0V;0-#;,JIY?FQ2?,%!*_,)I5[#J/B36-7EN(+R0-##^/WP[UCXM M?#JX\'Z7>P:=9:Q<0VVL7$LCI)_9Q<&YCBVJSV\^ERQF.>!=[2["/D= % W1@$@FW1GTS3+)?[/ED?#VUOYW4"O=J* //+KX>: MC/\ M Z=XY6>U&DVWAFXT9X2[>>9I+J&56"[=NS;&P)W9R1QWKP&^\$ZA^SU MXI\*>)I=3T-O$*'7K;[-J;W<.G3V=W=I_9V^%'BF73_A9XIU=;2S;2G\07%[;.LD4CB^N"\+1QLG VC)#%2 1QG( M$GAC]F_QCX53P@R?\(QJ[:=;>(+*^MM1EF:V>._NVGB8)Y)\T ;5>-M@.YL, M<<_3M% 'A'P,^#/B?X>>+Y;V>'3O"GA9--6RA\+:+K]YJUF90^[SD%S#$+8 M941Q@@@]1@5US?#&]N?C%XB\3W$]O_8VJ>'XM'$43."%"ACBM'^R9XFURQ\0:',VC_#_ ,+:EH-WI&-:O;ZRN;F5U9+E M;6:*)+,(0QV1,V[?@M\N3]944 ?+%G^S!XJU2WUB;58=#T_4!X9N]"T]T\0: MGJYFFN-@>=GNE'V:/$2?NHUD)SDN=H!Z7XT_L[>(/B#X+\#6N@:Q9Z-XBT2 M:7>7-/^$833+O M0?%8@+)J&OZEI_\ 9;);1VSXM;8&*[1HXE(5VB(.5+%2,6?$W[.'CO1/#_Q( M\+>!G\,S:!XV$<[W.LW5Q;SZ=.+:*WD5(XX9!-&RP(1ET*%F^]@5]1T4 9FF M#4H;E[:XM;1-/B@B$-S% EX-101.SCH 10 agx-20240131.xsd EX-101.SCH 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink 00100 - Statement - CONSOLIDATED STATEMENTS OF EARNINGS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 40302 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details) link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - INTANGIBLE ASSETS - Changes in the Balances of Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 40602 - Disclosure - INTANGIBLE ASSETS - Components of Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 40603 - Disclosure - INTANGIBLE ASSETS - Finite Lived Intangible Future Amortization Schedule (Details) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment (Details) link:presentationLink link:calculationLink link:definitionLink 40902 - Disclosure - COMMITMENTS - Future minimum lease payments (Details) link:presentationLink link:calculationLink link:definitionLink 41002 - Disclosure - COMMITMENTS - Future minimum lease payments (Details) Calc2 link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - INCOME TAXES - Components of Company's Income Tax Expense (Details) link:presentationLink link:calculationLink link:definitionLink 41202 - Disclosure - INCOME TAXES - Income Tax Expense Reconciliation (Details) link:presentationLink link:calculationLink link:definitionLink 41206 - Disclosure - INCOME TAXES - Schedule of Tax Effects of Temporary Differences that Gave Rise to Deferred Tax Assets (Details) link:presentationLink link:calculationLink link:definitionLink 41301 - Disclosure - NET INCOME PER SHARE (Details) link:presentationLink link:calculationLink link:definitionLink 41801 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details) link:presentationLink link:calculationLink link:definitionLink 41802 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 00205 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - ACCOUNTS RECEIVABLE link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - INTANGIBLE ASSETS link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - FINANCING ARRANGEMENTS link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - COMMITMENTS link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - LEGAL CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - STOCK-BASED COMPENSATION link:presentationLink link:calculationLink link:definitionLink 11201 - Disclosure - INCOME TAXES link:presentationLink link:calculationLink link:definitionLink 11301 - Disclosure - NET INCOME PER SHARE link:presentationLink link:calculationLink link:definitionLink 11401 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES link:presentationLink link:calculationLink link:definitionLink 11501 - Disclosure - VARIABLE INTEREST ENTITY link:presentationLink link:calculationLink link:definitionLink 11601 - Disclosure - CUSTOMER CONCENTRATIONS link:presentationLink link:calculationLink link:definitionLink 11701 - Disclosure - SEGMENT REPORTING link:presentationLink link:calculationLink link:definitionLink 11901 - Disclosure - SUBSEQUENT EVENTS link:presentationLink link:calculationLink link:definitionLink 20102 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies) link:presentationLink link:calculationLink link:definitionLink 30303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 30603 - Disclosure - INTANGIBLE ASSETS (Tables) link:presentationLink link:calculationLink link:definitionLink 30703 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Tables) link:presentationLink link:calculationLink link:definitionLink 30903 - Disclosure - COMMITMENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 31103 - Disclosure - STOCK-BASED COMPENSATION (Tables) link:presentationLink link:calculationLink link:definitionLink 31203 - Disclosure - INCOME TAXES (Tables) link:presentationLink link:calculationLink link:definitionLink 31303 - Disclosure - NET INCOME PER SHARE (Tables) link:presentationLink link:calculationLink link:definitionLink 31703 - Disclosure - SEGMENT REPORTING (Tables) link:presentationLink link:calculationLink link:definitionLink 40101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Details) link:presentationLink link:calculationLink link:definitionLink 40201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details) link:presentationLink link:calculationLink link:definitionLink 40202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Details) link:presentationLink link:calculationLink link:definitionLink 40203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 40203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations Default (Details) link:presentationLink link:calculationLink link:definitionLink 40301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 40303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details) link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - FAIR VALUE MEASUREMENTS - Financial Instruments on a Recurring Basis (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - ACCOUNTS RECEIVABLE (Details) link:presentationLink link:calculationLink link:definitionLink 40604 - Disclosure - INTANGIBLE ASSETS - Additional Information - (Details) link:presentationLink link:calculationLink link:definitionLink 40702 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 40703 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Depreciation Expense and Cost of Maintenance and Repairs (Details) link:presentationLink link:calculationLink link:definitionLink 40801 - Disclosure - FINANCING ARRANGEMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - COMMITMENTS - Leases (Details) link:presentationLink link:calculationLink link:definitionLink 40903 - Disclosure - COMMITMENTS - Warranties (Details) link:presentationLink link:calculationLink link:definitionLink 40904 - Disclosure - COMMITMENTS - Employee Benefit Plans (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - LEGAL CONTINGENCIES (Details) link:presentationLink link:calculationLink link:definitionLink 41101 - Disclosure - STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details) link:presentationLink link:calculationLink link:definitionLink 41102 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details) link:presentationLink link:calculationLink link:definitionLink 41103 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details) link:presentationLink link:calculationLink link:definitionLink 41104 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 41203 - Disclosure - INCOME TAXES - Net Operating Loss Carryback (Details) link:presentationLink link:calculationLink link:definitionLink 41204 - Disclosure - INCOME TAXES - Research and Development Tax Credits (Details) link:presentationLink link:calculationLink link:definitionLink 41207 - Disclosure - INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details) link:presentationLink link:calculationLink link:definitionLink 41302 - Disclosure - NET INCOME PER SHARE - Additional information (Details) link:presentationLink link:calculationLink link:definitionLink 41401 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details) link:presentationLink link:calculationLink link:definitionLink 41501 - Disclosure - VARIABLE INTEREST ENTITY (Details) link:presentationLink link:calculationLink link:definitionLink 41601 - Disclosure - CUSTOMER CONCENTRATIONS (Details) link:presentationLink link:calculationLink link:definitionLink 41701 - Disclosure - SEGMENT REPORTING (Details) link:presentationLink link:calculationLink link:definitionLink 41803 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 41901 - Disclosure - SUBSEQUENT EVENTS (Details) link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - FAIR VALUE MEASUREMENTS link:presentationLink link:calculationLink link:definitionLink 11801 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION link:presentationLink link:calculationLink link:definitionLink 30203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables) link:presentationLink link:calculationLink link:definitionLink 30403 - Disclosure - FAIR VALUE MEASUREMENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 31803 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables) link:presentationLink link:calculationLink link:definitionLink 40304 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Invested Funds (Details) link:presentationLink link:calculationLink link:definitionLink 41205 - Disclosure - INCOME TAXES - Unrecognized Income Tax Benefits (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 11 agx-20240131_cal.xml EX-101.CAL EX-101.DEF 12 agx-20240131_def.xml EX-101.DEF EX-101.LAB 13 agx-20240131_lab.xml EX-101.LAB Document and entity information. Document And Entity Information Statement [Table] Statement [Table] Statement [Line Items] Statement Document Type Document Type Document Annual Report Document Period End Date Document Period End Date Document Transition Report Entity File Number Entity Registrant Name Entity Registrant Name Entity Incorporation, State or Country Code Entity Tax Identification Number Entity Address, Address Line One Entity Address, City or Town Entity Address, State or Province Entity Address, Postal Zip Code City Area Code Local Phone Number Title of 12(b) Security Trading Symbol Security Exchange Name Entity Well-known Seasoned Issuer Entity Voluntary Filers Entity Current Reporting Status Entity Interactive Data Current Entity Filer Category Entity Filer Category Entity Small Business Entity Emerging Growth Company Icfr Auditor Attestation Flag Document Financial Statement Error Correction [Flag] Entity Shell Company Entity Public Float Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Auditor Name Auditor Firm ID Auditor Location Entity Central Index Key Entity Central Index Key Document Fiscal Year Focus Document Fiscal Year Focus Current Fiscal Year End Date Current Fiscal Year End Date Document Fiscal Period Focus Document Fiscal Period Focus Amendment Flag Amendment Flag CONSOLIDATED STATEMENTS OF EARNINGS Revenue from Contract with Customer, Excluding Assessed Tax Revenues Consolidated Revenues REVENUES Cost of Revenue Cost of revenues Gross Profit Gross profit GROSS PROFIT Selling, General and Administrative Expense Selling, general and administrative expenses Goodwill, Impairment Loss Impairment losses Impairment loss Operating Income (Loss) INCOME FROM OPERATIONS Income (loss) from operations Other Nonoperating Income (Expense) Other income (loss), net Other income, net Income (Loss) from Continuing Operations before Income Taxes, Extraordinary Items, Noncontrolling Interest INCOME BEFORE INCOME TAXES Income (loss) before income taxes Income Tax Expense (Benefit) Income tax expense Income tax expense Net Income (Loss), Including Portion Attributable to Noncontrolling Interest NET INCOME NET INCOME Net income (loss) Net Income (Loss) Attributable to Noncontrolling Interest Net income (loss) attributable to non-controlling interest Net income NET INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC. Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax Foreign currency translation adjustments OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax Net unrealized gains on available-for-sale securities Comprehensive Income (Loss), Net of Tax, Attributable to Parent COMPREHENSIVE INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC. NET INCOME PER SHARE NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC. Earnings Per Share, Basic Basic (in dollars per share) Basic (in dollars per share) Earnings Per Share, Diluted Diluted (in dollars per share) Weighted Average Number of Shares Outstanding, Diluted [Abstract] WEIGHTED AVERAGE NUMBER OF SHARES OUTSTANDING Weighted Average Number of Shares Outstanding, Basic Basic (in shares) Weighted average number of shares outstanding - basic Weighted Average Number of Shares Outstanding, Diluted Weighted average number of shares outstanding - diluted Diluted (in shares) Common Stock, Dividends, Per Share, Declared Regular cash dividend declared per common stock CASH DIVIDENDS PER SHARE CONSOLIDATED BALANCE SHEETS Assets [Abstract] ASSETS Assets, Current [Abstract] CURRENT ASSETS Cash and Cash Equivalents, at Carrying Value Cash and cash equivalents Investments Investments Total investments Accounts Receivable, Net, Current Accounts receivable, net Contract with Customer, Asset, Net, Current Contract assets Other Assets, Current Other current assets Total other current assets Assets, Current Current assets TOTAL CURRENT ASSETS Property, Plant and Equipment, Net Property, plant and equipment, net Property, plant and equipment, net Goodwill Goodwill, Ending Balance Goodwill, Beginning Balance Goodwill Goodwill, net Intangible Assets, Net (Excluding Goodwill) Intangible assets, net Deferred Income Tax Assets, Net Deferred taxes, net The amount of lessee's right to use underlying asset under operating lease, and asset classified as other. Operating Lease Right Of Use Asset, and Other Assets Right-of-use and other assets Assets Total assets TOTAL ASSETS Liabilities and Equity [Abstract] LIABILITIES AND STOCKHOLDERS' EQUITY Liabilities, Current [Abstract] CURRENT LIABILITIES Accounts Payable, Current Accounts payable Accrued Liabilities, Current Accrued expenses Total accrued expenses Contract with Customer, Liability, Current Contract liabilities Liabilities, Current Current liabilities TOTAL CURRENT LIABILITIES Liabilities, Noncurrent Noncurrent liabilities Liabilities TOTAL LIABILITIES Commitments and Contingencies COMMITMENTS AND CONTINGENCIES (see Notes 9 and 10) Stockholders' Equity Attributable to Parent [Abstract] STOCKHOLDERS' EQUITY Preferred Stock, Value, Issued Preferred stock, par value $0.10 per share - 500,000 shares authorized; no shares issued and outstanding Common Stock, Value, Issued Common stock, par value $0.15 per share - 30,000,000 shares authorized; 15,828,289 shares issued; 13,242,520 and 13,441,590 shares outstanding at January 31, 2024 and 2023, respectively Additional Paid in Capital, Common Stock Additional paid-in capital Retained Earnings (Accumulated Deficit) Retained earnings Treasury Stock, Value Less treasury stock, at cost - 2,585,769 and 2,386,699 shares at January 31, 2024 and 2023, respectively Accumulated Other Comprehensive Income (Loss), Net of Tax Accumulated other comprehensive loss Stockholders' Equity Attributable to Parent TOTAL STOCKHOLDERS' EQUITY Liabilities and Equity TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY Preferred Stock, Par or Stated Value Per Share Preferred stock, par value (in dollars per share) Preferred Stock, Shares Authorized Preferred stock, shares authorized Preferred Stock, Shares Issued Preferred stock, shares issued Preferred Stock, Shares Outstanding Preferred stock, shares outstanding Common Stock, Par or Stated Value Per Share Common stock, par value (in dollars per share) Common Stock, Shares Authorized Common stock, shares authorized Common Stock, Shares, Issued Common stock, shares issued Common Stock, Shares, Outstanding Common stock, shares outstanding Treasury Stock, Shares Treasury stock, shares CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Equity Components [Axis] Equity Component [Domain] Common Stock [Member] Common Stock Additional Paid-in Capital Retained Earnings Treasury Stock Accumulated Other Comprehensive Loss Non-controlling Interest Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest Balances Balances Shares, Outstanding Balances (in shares) Balances (in shares) Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Gain (Loss), before Reclassification and Tax Foreign currency translation loss Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition Stock compensation expense Stock Issued During Period, Value, Stock Options Exercised Stock option exercises Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period Shares, Exercised Stock option exercises (in shares) Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture Stock option exercises and restricted stock unit settlements, net of shares withheld for exercise price and withholding taxes Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture Stock option exercises and restricted stock unit settlements, net of shares withheld for exercise price and withholding taxes (in shares) Stock Repurchased During Period, Value Common stock repurchases Common stock repurchased Stock Repurchased During Period, Shares Common stock repurchases (in shares) Common stock repurchases (in shares) Common stock repurchases (in shares) Dividends, Common Stock, Cash Cash dividends Noncontrolling Interest, Decrease from Distributions to Noncontrolling Interest Holders Distribution to non-controlling interest Noncontrolling Interest, Decrease from Deconsolidation Deconsolidation of VIEs CONSOLIDATED STATEMENTS OF CASH FLOWS Net Cash Provided by (Used in) Operating Activities [Abstract] CASH FLOWS FROM OPERATING ACTIVITIES Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Adjustments to reconcile net income to net cash provided by (used in) operating activities Share-based Compensation Stock compensation expense Increase (Decrease) in Accrued Interest Receivable, Net Changes in accrued interest on investments Depreciation Depreciation Operating Lease, Expense Operating lease expense Lease expense Deferred Income Tax Expense (Benefit) Total Deferred income tax expense (benefit) Amortization of Intangible Assets Amortization of intangibles Amortization of intangible assets Income (Loss) from Equity Method Investments Equity in loss (income) of solar energy investments Loss of investment Provision for Loan, Lease, and Other Losses Provisions for credit losses Other Noncash Income (Expense) Other Increase (Decrease) in Operating Capital [Abstract] Changes in operating assets and liabilities Increase (Decrease) in Accounts Receivable Accounts receivable Increase (Decrease) in Contract with Customer, Asset Contract assets Increase (Decrease) in Other Operating Assets Other assets Increase (Decrease) in Accounts Payable and Accrued Liabilities Accounts payable and accrued expenses Increase (Decrease) in Contract with Customer, Liability Contract liabilities Net Cash Provided by (Used in) Operating Activities Net cash provided by (used in) operating activities Net Cash Provided by (Used in) Investing Activities [Abstract] CASH FLOWS FROM INVESTING ACTIVITIES Payments to Acquire Held-to-maturity Securities Purchases of short-term investments Proceeds from Sale of Held-to-maturity Securities Maturities of short-term investments Payments to Acquire Debt Securities, Available-for-Sale Purchases of available-for-sale securities Payments to Acquire Property, Plant, and Equipment Purchases of property, plant and equipment Payments to Acquire Equity Method Investments Investments in solar energy projects Payment for equity method investment Payments to Acquire Businesses, Gross Acquisition of Lee Telecom, Inc. Payment for acquisition Net Cash Provided by (Used in) Investing Activities Net cash used in investing activities Net Cash Provided by (Used in) Financing Activities [Abstract] CASH FLOWS FROM FINANCING ACTIVITIES Payments for Repurchase of Common Stock Common stock repurchases Payments of Ordinary Dividends, Common Stock Payments of cash dividends Payments of Ordinary Dividends, Noncontrolling Interest Distribution to non-controlling interest Payments of distribution to non-controlling interest Proceeds from Stock Options Exercised Proceeds from share-based award settlements Net Cash Provided by (Used in) Financing Activities Net cash used in financing activities Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents EFFECTS OF EXCHANGE RATE CHANGES ON CASH Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents CASH AND CASH EQUIVALENTS, END OF PERIOD CASH AND CASH EQUIVALENTS, BEGINNING OF PERIOD Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract] NON-CASH INVESTING AND FINANCING ACTIVITIES Future cash outflow to pay for investments committed but not paid. Investments Committed But Not Yet Paid Investments in solar energy projects not yet paid Right-of-Use Asset Obtained in Exchange for Operating Lease Liability Right-of-use assets obtained in exchange for lease obligations Supplemental Cash Flow Information [Abstract] SUPPLEMENTAL CASH FLOW INFORMATION Income Taxes Paid, Net Cash paid for income taxes Cash paid for income taxes, net of refunds Cash paid for operating leases. Operating Leases Paid Cash paid for operating leases DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION REVENUES FROM CONTRACTS WITH CUSTOMERS Revenue from Contract with Customer [Text Block] REVENUES FROM CONTRACTS WITH CUSTOMERS CASH, CASH EQUIVALENTS AND INVESTMENTS Cash, Cash Equivalents, and Short-term Investments [Text Block] CASH, CASH EQUIVALENTS AND INVESTMENTS FAIR VALUE MEASUREMENTS Fair Value Disclosures [Text Block] FAIR VALUE MEASUREMENTS ACCOUNTS RECEIVABLE The disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include trade accounts receivables. Includes disclosure for allowance for credit losses. Trade And Other Receivables Disclosure Text Block ACCOUNTS RECEIVABLE INTANGIBLE ASSETS Intangible Assets Disclosure [Text Block] INTANGIBLE ASSETS PROPERTY, PLANT AND EQUIPMENT, NET. Property, Plant and Equipment Disclosure [Text Block] PROPERTY, PLANT AND EQUIPMENT, NET FINANCING ARRANGEMENTS Debt Disclosure [Text Block] FINANCING ARRANGEMENTS No definition available. COMMITMENTS Commitments Disclosure [Text Block] COMMITMENTS LEGAL CONTINGENCIES Legal Matters and Contingencies [Text Block] LEGAL CONTINGENCIES STOCK-BASED COMPENSATION Disclosure of Compensation Related Costs, Share-based Payments [Text Block] STOCK-BASED COMPENSATION INCOME TAXES Income Tax Disclosure [Text Block] INCOME TAXES Earnings Per Share [Text Block] NET INCOME PER SHARE No definition available. CASH DIVIDENDS AND COMMON STOCK REPURCHASES The entire disclosure for cash dividend and treasury stock. Cash Dividend and Treasury Stock [Text Block] CASH DIVIDENDS AND COMMON STOCK REPURCHASES No definition available. VARIABLE INTEREST ENTITY Variable Interest Entity Disclosure [Text Block] VARIABLE INTEREST ENTITY CUSTOMER CONCENTRATIONS Concentration Risk Disclosure [Text Block] CUSTOMER CONCENTRATIONS SEGMENT REPORTING Segment Reporting Disclosure [Text Block] SEGMENT REPORTING Na SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION Additional Financial Information Disclosure [Text Block] SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION SUBSEQUENT EVENTS Subsequent Events [Text Block] SUBSEQUENT EVENTS Consolidation, Policy [Policy Text Block] Description of the Business Basis of Accounting, Policy [Policy Text Block] Basis of Presentation and Significant Accounting Policies Use of Estimates, Policy [Policy Text Block] Use of Estimates Revenue Recognition, Policy [Policy Text Block] Revenue Recognition Cash and Cash Equivalents, Policy [Policy Text Block] Cash Equivalents Disclosure of accounting policy for available-for-sale securities. Available-For-Sale Securities [Policy Text Block] Available-For-Sale Securities Property, Plant and Equipment, Policy [Policy Text Block] Property, Plant and Equipment Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block] Goodwill Impairment or Disposal of Long-Lived Assets, Including Intangible Assets, Policy [Policy Text Block] Long-Lived Assets Lessee, Leases [Policy Text Block] Leases Income Tax, Policy [Policy Text Block] Income Taxes Share-based Compensation, Option and Incentive Plans Policy [Policy Text Block] Share-Based Payments Fair Value of Financial Instruments, Policy [Policy Text Block] Fair Value of Financial Instruments Foreign Currency Transactions and Translations Policy [Policy Text Block] Foreign Currency Translation Disclosure of accounting policy for treasury stock. Treasury Stock [Policy Text Block] Treasury Stock Earnings Per Share, Policy [Policy Text Block] Net Income Per Share New Accounting Pronouncements, Policy [Policy Text Block] RECENTLY ISSUED ACCOUNTING PRONOUNCEMENTS Disaggregation of Revenue [Table Text Block] Schedule of consolidated revenues disaggregated by geographical area Investment [Table Text Block] Investments Schedule of Available-for-Sale Securities Reconciliation [Table Text Block] Schedule of available-for-sale securities Fair Value, Assets Measured on Recurring Basis [Table Text Block] Schedule of financial instruments recorded at fair value on a recurring basis Schedule of Goodwill [Table Text Block] Schedule of changes in the balances of goodwill Tabular disclosure of amortizable finite-lived intangible assets, in total and by major class, including the gross carrying amount and accumulated amortization, and indefinite-lived intangible assets not subject to amortization, excluding goodwill, in total and by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company. Schedule Of Finite-Lived and Indefinite-Lived Intangible Assets by Major Class [Table Text Block] Schedule of company's purchased intangible assets, other than goodwill Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Schedule of expected amortization expense Property, Plant and Equipment [Table Text Block] Summary of property, plant and equipment Long-Lived Assets by Geographic Areas [Table Text Block] Schedule of property, plant and equipment, net, disaggregated by geographic area Lessee, Operating Lease, Liability, Maturity [Table Text Block] Schedule of future minimum lease payments for the operating leases Tabular disclosure of lease term and discount rates of operating leases of lessee. Schedule of Lease Term and Discount Rates of Operating Leases of Lessee [Table Text Block] Schedule of Lease Term and Discount Rates of Operating Leases of Lessee Schedule of Share-based Compensation, Stock Options, Activity [Table Text Block] Schedule of stock option activity under the Company's stock plans Schedule of Nonvested Share Activity [Table Text Block] Schedule of changes in the number of non-vested options to purchase shares of common stock Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block] Schedule of changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units Schedule of Components of Income Tax Expense (Benefit) [Table Text Block] Schedule of components of company's income tax (expense) benefit Schedule of Effective Income Tax Rate Reconciliation [Table Text Block] Schedule of actual income tax expense amounts Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block] Schedule of unrecognized tax benefits Schedule of Deferred Tax Assets and Liabilities [Table Text Block] Schedule of tax effects of temporary differences that gave rise to deferred tax assets and liabilities Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Schedule of computations of basic and diluted net income per share Schedule of Segment Reporting Information, by Segment [Table Text Block] Schedule of operating results and financial position data of the Company's reportable business segments Schedule of Other Current Assets [Table Text Block] Schedule of other current assets Schedule of Accrued Liabilities [Table Text Block] Schedule of accrued expenses Schedule Of Description Of Business [Table] Schedule Of Description Of Business [Table] Schedule Of Description Of Business [Table] Range [Axis] Range [Domain] Minimum Minimum Maximum Maximum Title of Individual [Axis] Title of Individual [Domain] Senior executives StockPlanMember Represents information pertaining to performance-based restricted stock units. Performance-based restricted stock units Performance-based restricted stock units Plan Name [Axis] Plan Name [Domain] n/a Stock Plan [Member] Stock Plan Schedule Of Description Of Business [Line Items] Schedule Of Description Of Business [Line Items] Description of the Business Property, Plant and Equipment, Useful Life Estimated useful lives of the assets Lessee, Operating Lease, Existence of Option to Extend [true false] Operating leases, options to extend Lessee, Operating Lease, Existence of Option to Terminate [true false] Operating leases, options to terminate The period of monthly closing prices used for the estimated measure of the maximum percentage by which a share price is expected to fluctuate during a period. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period. Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Volatility Rate Period For Monthly Closing Prices Period used for calculations Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period Period to become exercisable Represents the percentage reduction in the aggregate fair value of stock option Percentage Reduction In The Aggregate Fair Value Of Stock Option Percentage reduction in the aggregate fair value of stock option Represents the percentage of the maximum shares for the target number of shares awarded. Percentage Of Maximum shares For The Target Number Of Shares Awarded Percentage of the maximum shares for the target number of shares awarded Disaggregation of Revenues [Table] Geographical [Axis] Geographical [Domain] United States Republic of Ireland United Kingdom Represents the information pertaining to other countries. Other Disaggregation of Revenue [Line Items] Disaggregation of Revenues Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Products and Services [Axis] Products and Services [Domain] Represents information pertaining to kilroot project. Kilroot Project [Member] Kilroot Project Legal Entity [Axis] Entity [Domain] Information pertains to Atlantic Projects Company Limited. APC Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] REVENUES FROM CONTRACTS WITH CUSTOMERS The amount of estimated loss. Estimated Loss Estimated loss The amount of estimated loss including reversal of net gross profit recorded in previous years. Estimated Loss, Including Reversal Of Net Gross Profit Recorded In Previous Years Estimated loss, including reversal of net gross profit Contract with Customer, Liability, Revenue Recognized Contract Liabilities The amounts retained by project owners under construction contracts. Retained Amount Under Construction Contracts Retained amounts by project owners Amounts of unpriced change orders included in transaction prices. N Priced Change Orders Included In Transaction Prices Amounts of unpriced change orders included in transaction prices Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation Contract backlog amount Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Performance period Revenue, Remaining Performance Obligation, Percentage Contract backlog (as percent) Schedule of Cash and Cash Equivalents [Table] Schedule of Cash and Cash Equivalents [Table] Debt Security Category [Axis] Other than Temporary Impairment, Credit Losses Recognized in Earnings, Categories of Investments [Domain] Held-to-maturity Securities Cash and Cash Equivalents [Line Items] Cash and Cash Equivalents Represents the maturity period of investments. Investment Maturity Period Maturity period Weighted average interest rate for certificates of deposit liabilities in banking offices. Weighted Average Rate Deposit Certificates Of Deposit Weighted average annual interest rates of CDs (as a percent) Dividends earned but not yet received by the entity on its investments. Accrued Investment Income, Dividend Receivable Accrued dividends Interest Receivable Accrued interest Short-Term Investments Short-term investments Debt Securities, Available-for-Sale Available-for-sale securities Fair Value Financial Instrument [Axis] Financial Instruments [Domain] US Treasury Notes Securities [Member] US Treasury notes Debt Security, Corporate, US [Member] U.S. corporate debt security Debt Securities, Available-for-Sale, Term Available-for-sale securities term Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current Interest receivable Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current, Statement of Financial Position [Extensible Enumeration] OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment and Tax Net unrealized holding losses for the Company's AFS securities Proceeds from Sale of Debt Securities, Available-for-Sale Proceeds from sale of debt securities, available-for-sale Other Comprehensive Income (Loss), Reclassification Adjustment from AOCI for Sale of Securities, Net of Tax Amounts of gains or losses reclassified out of other comprehensive income en-US Debt Securities, Available-for-Sale, Fair Value to Amortized Cost, after Allowance for Credit Loss [Abstract] Available-for-sale securities Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year to 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). Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year One to Two Amortized cost, Due in one to two years Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second fiscal year though 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). Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year Two to Three Amortized Cost, Due in two to three years Debt Securities, Available-for-Sale, Amortized Cost Amortized Cost Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax after Year One Through Two Gross Unrealized Gains, Due in one to two years Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, Before Tax After Year Two Through Three Gross Unrealized Gains, Due in two to three years Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax Gross Unrealized Gains Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) maturing in first and second fiscal year following current fiscal year. Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax after Year One Through Two Gross Unrealized Losses, Due in one to two years Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) maturing in second and third fiscal year following current fiscal year. Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax after Year Two Through Three Gross Unrealized Losses, Due in two to three years Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax Gross Unrealized Losses Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year to 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). Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One to Two Fair Value, Due in one to two years Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second fiscal year through 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). Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year Two to Three Fair Value, Due in two to three years Investment Income, Nonoperating Earnings on invested funds Fair Value, Recurring and Nonrecurring [Table] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Domain] Level 1 Inputs Level 2 Inputs Measurement Frequency [Axis] Measurement Frequency [Domain] Fair value, recurring Money market funds US Treasury Securities [Member] U.S. Treasury notes Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Cash and Cash Equivalents, Fair Value Disclosure Cash and cash equivalents Assets, Fair Value Disclosure Totals Schedule of Accounts, Notes, Loans and Financing Receivable [Table] Schedule of Accounts, Notes, Loans and Financing Receivable [Table] Accounts, Notes, Loans and Financing Receivable [Line Items] ACCOUNTS AND NOTES RECEIVABLE Provision for Loan and Lease Losses Provision for credit losses Financing Receivable, Allowance for Credit Loss, Current Allowance for uncollectible accounts Schedule of Goodwill [Table] Segments [Axis] Segments [Domain] Power industry services. Power Industry Services Power Services Industrial fabrication and field services. Industrial Services Telecommunications infrastructure services. Telecommunications Infrastructure Services Telecom Services Goodwill [Line Items] Goodwill Goodwill [Roll Forward] Change in goodwill Goodwill, Impaired, Accumulated Impairment Loss [Abstract] Components of goodwill Goodwill, Gross Goodwill Goodwill, Impaired, Accumulated Impairment Loss Accumulated impairment losses Schedule of Finite-Lived Intangible Assets [Table] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] Trade name Customer relationships Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets Finite-Lived Intangible Asset, Useful Life Estimated Useful Life (in years) Finite-Lived Intangible Assets, Gross Gross Amounts Finite-Lived Intangible Assets, Accumulated Amortization Accumulated Amortization Finite-Lived Intangible Assets, Net Net Amounts Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months 2025 Finite-Lived Intangible Assets, Amortization Expense, Year Two 2026 Finite-Lived Intangible Assets, Amortization Expense, Year Three 2027 Finite-Lived Intangible Assets, Amortization Expense, Year Four 2028 Finite-Lived Intangible Assets, Amortization Expense, Year Five 2029 Finite-Lived Intangible Assets, Amortization Expense, after Year Five Thereafter Business Acquisition [Axis] Business Acquisition, Acquiree [Domain] Represents information pertaining to Lee Telecom Inc. LTI Intangible Assets, Net (Including Goodwill) [Abstract] Indefinite-Lived Intangible Assets Period of amortization of goodwill for income tax purpose. Period Of Amortization Of Goodwill For Income Tax Purpose Period of amortization of goodwill for income tax purpose Business Acquisition, Goodwill, Expected Tax Deductible Amount Goodwill allocated for income tax reporting purposes Amount of additions to other intangible assets. Additions To Other Intangible Assets Additions to other intangible assets Impairment of Intangible Assets (Excluding Goodwill) Additions to impairment losses Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Property, Plant and Equipment, Type [Axis] Property, Plant and Equipment, Type [Domain] Land and Improvements [Member] Land and improvements Building and Improvements [Member] Building and improvements Furniture machinery and equipment. Furniture, Machinery and Equipment [Member] Furniture, machinery and equipment Trucks and Other Vehicles [Member] Trucks, trailers and other vehicles Property, Plant and Equipment [Line Items] Property, plant and equipment, net Property, Plant and Equipment, Gross Property and equipment, gross Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Less - accumulated depreciation Cost of Property Repairs and Maintenance Costs of maintenance and repairs Line of Credit Facility [Table] Credit Facility [Axis] Credit Facility [Domain] Line of Credit [Member] Revolving Credit Facility Letter of Credit Scenario [Axis] Scenario, Unspecified [Domain] Represents information pertaining to letters of credit expire on May 31, 2024. Expires on May 31, 2024 Variable Rate [Axis] Variable Rate [Domain] Secured Overnight Financing Rate (SOFR) Line of Credit Facility [Line Items] Financing Arrangements Line of Credit Facility, Maximum Borrowing Capacity Borrowing available under financing arrangements Debt Instrument, Basis Spread on Variable Rate Interest rate margin on referred rate Interest rate margin on referred rate The contingent increase above the maximum borrowing capacity under the credit facility, if any one or more of the existing banks or new banks agree to provide such increased commitment amount. Line of Credit Facility Contingent Increase, Additional Borrowing Capacity Additional commitment amount Letters of Credit Outstanding, Amount Letters of credit outstanding amount Income Statement Location [Axis] Income Statement Location [Domain] Costs of Revenues [Member] Gemma power systems. GPS Guarantor Obligations, Nature [Axis] Guarantor Obligations, Nature [Domain] Financial guarantee Operating lease, right-of-use assets Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration] Operating Lease, Weighted Average Remaining Lease Term Weighted average lease term Operating Lease, Weighted Average Discount Rate, Percent Weighted average discount rate The amount short-term rental agreements expenses. Short Term Rental Agreements Expense Short-term rentals expense Represents information pertaining to remaining bonded performance obligations. Remaining Bonded Performance Obligations Unsatisfied bonded performance obligations Guarantor Obligations, Maximum Exposure, Undiscounted Guarantor obligation maximum exposure Operating Lease Liabilities, Payments Due [Abstract] Operating Leases Operating Leases, Future Minimum Payments Due, Next Twelve Months 2025 Lessee, Operating Lease, Liability, Payments, Due Year Two 2026 Lessee, Operating Lease, Liability, Payments, Due Year Three 2027 Lessee, Operating Lease, Liability, Payments, Due Year Four 2028 Lessee, Operating Lease, Liability, Payments, Due Year Five 2029 Lessee, Operating Lease, Liability, Payments, Due after Year Five Thereafter Lessee, Operating Lease, Liability, Payments, Due Total lease payments Lessee, Operating Lease, Liability, Undiscounted Excess Amount Less imputed interest Operating Lease, Liability Present value of lease payments Operating Lease, Liability, Current Less current portion (included in accrued expenses) Operating Lease, Liability, Current, Statement of Financial Position [Extensible List] Less current portion (included in accrued expenses) Operating Lease, Liability, Noncurrent Non-current portion (included in noncurrent liabilities) Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List] Non-current portion (included in noncurrent liabilities) Represents the information pertaining to warranty provisions covering defects in equipment, materials etc.. after the completion of construction. Warranty Period for Construction Contracts Warranty period Defined Contribution Plan [Table] Defined Contribution Plan Disclosure [Line Items] Employee Benefit Plans Defined Contribution Plan, Cost Recognized Company's expense for defined contribution savings plans Period of define contribution plan deferred period, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Define Contribution Plan, Deferred Period Deferred period Loss Contingencies [Table] Loss Contingencies [Table] Consolidated Entities [Axis] Consolidated Entities [Domain] Loss Contingencies [Line Items] Loss Contingencies Payments for Legal Settlements Payments for legal settlements Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number Shares, Outstanding, Ending balance Shares, Outstanding, Beginning balance Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross Shares, Granted Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period Shares, Forfeited Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number Shares, Exercisable Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number Shares, Vested or expected to vest Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price Weighted Average Exercise Price Per Share, Outstanding, Ending balance Weighted Average Exercise Price Per Share, Outstanding, Beginning balance Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price Weighted Average Exercise Price Per Share, Granted Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Weighted Average Exercise Price Per Share, Exercised Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price Weighted Average Exercise Price Per Share, Forfeited Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price Weighted Average Exercise Price Per Share, Exercisable Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price Weighted Average Exercise Price Per Share, Vested or expected to vest Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term Weighted Average Remaining Contractual Term (Years), Outstanding Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term Weighted Average Remaining Contractual Term (Years), Exercisable Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term Weighted Average Remaining Contractual Term (Years), Vested or expected to vest Share based compensation arrangement by share based payment award equity instruments stock option outstanding weighted average grant date fair value. Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Stock Option Outstanding Weighted Average Grant Date Fair Value Weighted Average Grant Date Fair Value Per Share, Outstanding Share based compensation arrangement by share based payment award equity instruments stock option exercisable weighted average grant date fair value. Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Stock Option Exercisable Weighted Average Grant Date Fair Value Weighted Average Grant Date Fair Value Per Share, Exercisable Weighted average grant-date fair value of options vested and expected to vest. Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Grant Date Fair Value Weighted Average Grant Date Fair Value Per Share, Vested or expected to vest Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares Shares, Non-vested, Ending balance Shares, Non-vested, Beginning balance Shares, Non-vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Number of Shares Shares, Vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Number of Shares Shares, Forfeitures Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value Weighted Average Grant Date Fair Value Per Share, Non-vested, Ending balance Weighted Average Grant Date Fair Value Per Share, Non-vested, Beginning balance Weighted Average Grant Date Fair Value Per Share, Non-vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value Weighted Average Grant Date Fair Value Per Share, Granted Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value Weighted Average Grant Date Fair Value Per Share, Vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value Weighted Average Grant Date Fair Value Per Share, Forfeitures Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Restricted Stock Units Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-based Compensation Arrangement by Share-based Payment Award Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward] Shares Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number Outstanding, Ending balance (in shares) Outstanding, Beginning balance (in shares) Outstanding (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period Awarded (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period Issued (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period Forfeited (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract] Weighted Average Grant Date Fair Value Per Share Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value Outstanding, Ending balance Fair value (Per share) Outstanding, Beginning balance Fair value (Per share) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value Awarded, Fair value (Per share) The weighted average fair value at grant date of equity instruments other than options issued during the period. Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Issued in Period, Weighted Average Grant Date Fair Value Issued, Fair value (Per share) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value Forfeited, Fair value (Per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value Total fair values Represents information pertaining to earnings per share performance-based restricted stock units. Earnings Per Share Performance Based Restricted Stock Units [Member] Earnings per share performance-based restricted stock units Represents Incentive Stock Options. ISOs/NSOs Represents the information pertaining to Renewable Performance Based Restricted Stock Units. Renewable Performance-Based Restricted Stock Units Represents the information pertaining to Time based Restricted Stock Units. Time Based Restricted Stock Units Represents information pertaining to the 2020 plan. 2020 Plan Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period Incentive stock option award maximum expiration period Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage Initial vesting percentage Common stock allocated for issuance Number of shares of common stock reserved for issuance Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant Number of shares of common stock available for award Represents the number of shares issuable under restricted stock units awarded during the period. The Number Of Shares Issuable Under Restricted Stock Units Awarded During The Period The number of shares issuable under restricted stock units awarded during the period Common Stock Dividends, Shares Cash dividends deemed paid on shares Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized Unrecognized compensation cost Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition Compensation expense recognize, period Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value Intrinsic value of the stock options exercised Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value Intrinsic value of outstanding stock options Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value Intrinsic value of exercisable stock options Current Income Tax Expense (Benefit), Continuing Operations [Abstract] Current: Current Federal Tax Expense (Benefit) Federal Current State and Local Tax Expense (Benefit) State Current Foreign Tax Expense (Benefit) Foreign Current Income Tax Expense (Benefit) Total Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract] Deferred: Deferred Federal Income Tax Expense (Benefit) Federal Deferred State and Local Income Tax Expense (Benefit) State Deferred Foreign Income Tax Expense (Benefit) Foreign Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent Federal corporate income tax rate (as percent) Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount Computed expected income tax expense The amount of unrecognized tax loss benefit. Unrecognized tax loss benefit Unrecognized tax loss benefit Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount Foreign tax rate differential Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount State income taxes, net of federal tax effect Amount of reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for excess executive compensation. Effective Income Tax Rate Reconciliation, Nondeductible Expense, Excess Executive Compensation, Amount Excess executive compensation Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to adjustments to valuations for foreign NOLs. Effective Income Tax Rate Reconciliation, Adjustments to Valuations for Foreign NOLs, Amount Adjustment to valuation for foreign NOLs Effective Income Tax Rate Reconciliation, Tax Credit, Investment, Amount Net benefit related to Solar Tax Credit investments Effective Income Tax Rate Reconciliation, Nondeductible Expense, Meals and Entertainment, Amount Meals and entertainment expense Effective Income Tax Rate Reconciliation, Nondeductible Expense, Research and Development, Amount Research and development credits adjustment Represents income tax expense (benefits) associated with research and development activities. Income Tax Expense Benefits Associated with Research and Development Income tax expense (benefits) associated with research and development activities Recognition of research and development credit benefits (see discussion below) Effective Income Tax Rate Reconciliation, Nondeductible Expense, Other, Amount Other permanent differences and adjustments, net Operating Loss Carryforwards [Table] Operating Loss Carryforwards [Line Items] Operating loss carryforwards Represents the increase in loss carryback period for certain losses. Increase In Loss Carryback Period For Certain Losses Increase in loss carryback period for certain losses Amount of domestic net operating loss carryback. Domestic Net Operating Loss Carryback Domestic net operating loss carryback Deferred Income Taxes and Other Tax Receivable, Current Income tax receivable Represents period for identify and quantify the amounts of research and development credits. Period for Identify and Quantify Research and Development Tax Credits Prior period for identify and quantify the amounts of research and development credits The amount of income tax benefit recognized related to research and development credits. Income Tax Benefit Recognized Related To Research And Development Credits Research and development tax credit benefit Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount Federal research and development tax credits Amount of reduction in contra assets balances of unrecognized tax benefits Unrecognized Tax Benefits Contract Assets, Reduction Contract Assets Deferred Tax Assets, Operating Loss Carryforwards, Foreign Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount Represents unrecognized income tax benefits related to research and development credits. Unrecognized Income Tax Benefits Related to Research and Development Credits Unrecognized income tax benefits related to research and development credits Total amount of research and development tax credits that the IRS allowed to claim pursuant to a final settlement. Total Amount Of Research And Development Tax Credits That The IRS Allowed To Claim Pursuant To A Final Settlement Settlement offer from the IRS The amount of unfavorable tax expense impact from the IRS tax settlement. Unfavorable Tax Expense Impact From The IRS Tax settlement. Unfavorable tax expense adjustment Amount of decrease in unrecognized tax benefits resulting from research and development tax credit. Unrecognized Tax Benefits, Decrease Resulting from Research And Development Tax Credit Development tax credit Amount of income tax refunds and prepaid income taxes . Income Tax Refunds And Prepaid Income Taxes Income tax refunds and prepaid income taxes Income tax refunds receivable and prepaid income taxes Unrecognized Tax Benefits Unrecognized Tax Benefits, end of fiscal year Unrecognized Tax Benefits, beginning of fiscal year Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions Increases related to prior period income tax positions Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions Increases related to current period income tax positions Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations Expirations of statutes of limitations Unrecognized Tax Benefits, Decrease Resulting from Settlements with Taxing Authorities Settlements Adjustment to its liability for uncertain income tax positions Amount of contra assets recorded for unrecognized tax benefits. Unrecognized Tax Benefits Contract Assets Gross unrecognized income tax benefits Components of Deferred Tax Assets [Abstract] Assets: Deferred Tax Assets, Operating Loss Carryforwards Net operating loss carryforwards Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-based Compensation Cost Stock awards Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities Accrued expenses Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from lease liabilities. Deferred Tax Assets, Lease Liabilities Lease liabilities Amount, before allocation of valuation allowances, of deferred tax asset attributable to deductible differences from deferred research and development cost. Deferred Tax Assets, Deferred Research and Development Cost Research and development costs deferral Deferred Tax Assets, in Process Research and Development Research and development credit carryforwards Deferred Tax Assets, Other Other Deferred Tax Assets, Gross Total Assets Components of Deferred Tax Liabilities [Abstract] Liabilities: Deferred Tax Liabilities, Intangible Assets Purchased intangibles Deferred tax liabilities construction contracts. Deferred Tax Liabilities Construction Contracts Construction contracts Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment and other temporary differences not separately disclosed. Deferred Tax Liabilities, Property, Plant and Equipment and Other Property and equipment Amount of deferred tax consequences attributable to taxable temporary differences derived from right of use assets. Deferred Tax Liabilities, Right of Use Assets Right-of-use assets Deferred Tax Liabilities, Other Other Deferred Tax Liabilities, Gross Total Liabilities Deferred Tax Assets, Valuation Allowance Valuation allowances Deferred Tax Assets, Net Deferred tax assets, net Net operating loss carry forward Net operating losses Investment Income [Table] Other income (expense) Net Investment Income [Line Items] Equity Method Investments Investment account balances Investment Tax Credit Investment tax credits Amount of cash investment commitments. Cash Investment Commitments Remaining cash investment commitments Income Tax Credits and Adjustments Income tax credits Amount of amortization of equity investments in solar energy projects. Amortization of Equity Investments in Solar Energy Projects Amortization related to STC investment Income Taxes Paid 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] NET INCOME PER SHARE Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements Effects of stock awards Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Anti-dilutive common stock equivalents Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Antidilutive common stock Subsequent Event Type [Axis] Subsequent Event Type [Domain] Subsequent Event [Member] Subsequent Events Related Party, Type [Axis] Related Party, Type [Domain] Director [Member] The percentage increase in common stock dividend per share. Percentage Increase In Common Stock Dividend Per Share Percentage increase in common stock dividend Share Price Share price Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation Shares paid for tax withholding for share based compensation Average price of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement. Share-Based Payment Arrangement, Average Price Per Share Of Shares Withheld for Tax Withholding Obligation Share-based payment Common Stock, Dividends, Per Share, Cash Paid Regular cash dividend paid per common stock Number of treasury stock used to settle stock option exercises and other stock share based awards. Treasury Stock, Settlement of Stock Option Exercises and Other Share Based Awards Treasury stock to settle stock option exercises and other share-based awards Schedule of Variable Interest Entities [Table] Schedule of Variable Interest Entities [Table] Balance Sheet Location [Axis] Balance Sheet Location [Domain] Variable Interest Entity [Line Items] Variable Interest Entity Capitalized Contract Cost, Impairment Loss Capitalized project development costs The amount of gain on settlement of impaired development cost. Gain on Settlement of Impaired Development Cost Gain on settlement of impaired development cost Concentration Risk [Table] Industry services. Industry services Concentration Risk Type [Axis] Concentration Risk Type [Domain] Product Concentration Risk Customer Concentration Risk Customer [Axis] Customer [Domain] Major customer one. Major Customer One Major customer two. Major Customer Two Major customer three. Major Customer Three Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] Revenue Accounts Receivable [Member] Accounts Receivable Contract Asset Concentration Risk [Line Items] Customer Concentrations Concentration Risk, Percentage Percentage of major customers or segments Number of major customers. Number Of Major Customers Number of customers Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Consolidation Items [Axis] Consolidation Items [Domain] Operating Segments [Member] Operating Segments Intersegment Eliminations [Member] Intercompany Eliminations Corporate, Non-Segment [Member] Segment Reporting Information [Line Items] Segment Reporting Information Number of Operating Segments Operating segment Segment, Expenditure, Addition to Long-Lived Assets Property, plant and equipment additions Inventory, Raw Materials, Gross Raw materials inventory Prepaid Expense, Current Prepaid expenses Other Assets, Miscellaneous, Current Other Carrying value as of the balance sheet date of obligations incurred through that date and payable for projects costs. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). Accrued Project Costs, Current Accrued project costs Accrued Employee Benefits, Current Accrued compensation Carrying value as of the balance sheet date of obligations incurred through that date and payable for lease liabilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). Accrued Lease Liabilities, Current Lease liabilities Other Accrued Liabilities, Current Other Unusual or Infrequent Item, or Both [Table] Unusual or Infrequent Item, or Both [Axis] Unusual or Infrequent Item, or Both [Domain] Represents information relating to fraudulently induced outbound wire transfer to third party of complex criminal scheme. Fraudulently Induced Payment Unusual or Infrequent Item, or Both [Line Items] SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION Unusual or Infrequent Item, or Both, Net (Gain) Loss Total amount of fraud loss and professional fee recovered Subsequent Event [Table] Subsequent Event [Line Items] SUBSEQUENT EVENTS Dividends Payable, Amount Per Share Dividends payable amount per share EX-101.PRE 14 agx-20240131_pre.xml EX-101.PRE XML 16 R1.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Document and Entity Information - USD ($)
12 Months Ended
Jan. 31, 2024
Apr. 05, 2024
Jul. 31, 2023
Document And Entity Information      
Document Type 10-K    
Document Annual Report true    
Document Period End Date Jan. 31, 2024    
Document Transition Report false    
Entity File Number 001-31756    
Entity Registrant Name ARGAN INC    
Entity Incorporation, State or Country Code DE    
Entity Tax Identification Number 13-1947195    
Entity Address, Address Line One One Church Street, Suite 201    
Entity Address, City or Town Rockville    
Entity Address, State or Province MD    
Entity Address, Postal Zip Code 20850    
City Area Code 301    
Local Phone Number 315-0027    
Title of 12(b) Security Common Stock, $0.15 par value    
Trading Symbol AGX    
Security Exchange Name NYSE    
Entity Well-known Seasoned Issuer No    
Entity Voluntary Filers No    
Entity Current Reporting Status Yes    
Entity Interactive Data Current Yes    
Entity Filer Category Accelerated Filer    
Entity Small Business false    
Entity Emerging Growth Company false    
Icfr Auditor Attestation Flag true    
Document Financial Statement Error Correction [Flag] false    
Entity Shell Company false    
Entity Public Float     $ 296,708,995
Entity Common Stock, Shares Outstanding   13,240,121  
Auditor Name GRANT THORNTON LLP    
Auditor Firm ID 248    
Auditor Location Arlington, Virginia    
Entity Central Index Key 0000100591    
Document Fiscal Year Focus 2024    
Current Fiscal Year End Date --01-31    
Document Fiscal Period Focus FY    
Amendment Flag false    
XML 17 R2.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CONSOLIDATED STATEMENTS OF EARNINGS - USD ($)
shares in Thousands, $ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
CONSOLIDATED STATEMENTS OF EARNINGS      
REVENUES $ 573,333 $ 455,040 $ 509,370
Cost of revenues 492,499 368,679 409,638
GROSS PROFIT 80,834 86,361 99,732
Selling, general and administrative expenses 44,376 44,692 47,321
Impairment loss     7,901
INCOME FROM OPERATIONS 36,458 41,669 44,510
Other income, net 12,475 4,331 2,552
INCOME BEFORE INCOME TAXES 48,933 46,000 47,062
Income tax expense 16,575 11,296 11,356
NET INCOME 32,358 34,704 35,706
Net income (loss) attributable to non-controlling interest   1,606 (2,538)
NET INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC. 32,358 33,098 38,244
Foreign currency translation adjustments (920) (425) (1,370)
Net unrealized gains on available-for-sale securities 199    
COMPREHENSIVE INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC. $ 31,637 $ 32,673 $ 36,874
NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC.      
Basic (in dollars per share) $ 2.42 $ 2.35 $ 2.43
Diluted (in dollars per share) $ 2.39 $ 2.33 $ 2.40
WEIGHTED AVERAGE NUMBER OF SHARES OUTSTANDING      
Basic (in shares) 13,365 14,083 15,715
Diluted (in shares) 13,548 14,176 15,913
CASH DIVIDENDS PER SHARE $ 1.10 $ 1.00 $ 1.00
XML 18 R3.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
CURRENT ASSETS    
Cash and cash equivalents $ 197,032 $ 173,947
Investments 215,373 151,511
Accounts receivable, net 47,326 50,132
Contract assets 48,189 24,778
Other current assets 39,259 38,334
TOTAL CURRENT ASSETS 547,179 438,702
Property, plant and equipment, net 11,021 10,430
Goodwill 28,033 28,033
Intangible assets, net 2,217 2,609
Deferred taxes, net 2,259 3,689
Right-of-use and other assets 7,520 6,024
TOTAL ASSETS 598,229 489,487
CURRENT LIABILITIES    
Accounts payable 39,485 56,375
Accrued expenses 81,721 49,867
Contract liabilities 181,054 96,261
TOTAL CURRENT LIABILITIES 302,260 202,503
Noncurrent liabilities 5,030 6,087
TOTAL LIABILITIES 307,290 208,590
COMMITMENTS AND CONTINGENCIES (see Notes 9 and 10)
STOCKHOLDERS' EQUITY    
Preferred stock, par value $0.10 per share - 500,000 shares authorized; no shares issued and outstanding
Common stock, par value $0.15 per share - 30,000,000 shares authorized; 15,828,289 shares issued; 13,242,520 and 13,441,590 shares outstanding at January 31, 2024 and 2023, respectively 2,374 2,374
Additional paid-in capital 164,183 162,208
Retained earnings 225,507 207,832
Less treasury stock, at cost - 2,585,769 and 2,386,699 shares at January 31, 2024 and 2023, respectively (97,528) (88,641)
Accumulated other comprehensive loss (3,597) (2,876)
TOTAL STOCKHOLDERS' EQUITY 290,939 280,897
TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY $ 598,229 $ 489,487
XML 19 R4.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares
Jan. 31, 2024
Jan. 31, 2023
CONSOLIDATED BALANCE SHEETS    
Preferred stock, par value (in dollars per share) $ 0.10 $ 0.10
Preferred stock, shares authorized 500,000 500,000
Preferred stock, shares issued 0 0
Preferred stock, shares outstanding 0 0
Common stock, par value (in dollars per share) $ 0.15 $ 0.15
Common stock, shares authorized 30,000,000 30,000,000
Common stock, shares issued 15,828,289 15,828,289
Common stock, shares outstanding 13,242,520 13,441,590
Treasury stock, shares 2,585,769 2,386,699
XML 20 R5.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
$ in Thousands
Common Stock
Additional Paid-in Capital
Retained Earnings
Treasury Stock
Accumulated Other Comprehensive Loss
Non-controlling Interest
Total
Balances at Jan. 31, 2021 $ 2,356 $ 153,315 $ 166,110 $ (33) $ (1,081) $ 1,741 $ 322,408
Balances (in shares) at Jan. 31, 2021 15,702,969            
Net income (loss)     38,244     (2,538) 35,706
Foreign currency translation loss         (1,370)   (1,370)
Stock compensation expense   3,459         3,459
Stock option exercises $ 12 1,416         1,428
Stock option exercises (in shares) 82,471            
Common stock repurchases       (20,372)     $ (20,372)
Common stock repurchases (in shares) (527,752)           (527,752)
Cash dividends     (15,664)       $ (15,664)
Balances at Jan. 31, 2022 $ 2,368 158,190 188,690 (20,405) (2,451) (797) 325,595
Balances (in shares) at Jan. 31, 2022 15,257,688            
Net income (loss)     33,098     1,606 34,704
Foreign currency translation loss         (425)   (425)
Stock compensation expense   3,958         3,958
Stock option exercises $ 6 60         66
Stock option exercises (in shares) 39,616            
Common stock repurchases       (68,236)     $ (68,236)
Common stock repurchases (in shares) (1,855,714)           (1,855,714)
Cash dividends     (13,956)       $ (13,956)
Distribution to non-controlling interest           (677) (677)
Deconsolidation of VIEs           $ (132) (132)
Balances at Jan. 31, 2023 $ 2,374 162,208 207,832 (88,641) (2,876)   280,897
Balances (in shares) at Jan. 31, 2023 13,441,590            
Net income (loss)     32,358       32,358
Foreign currency translation loss         (920)   (920)
Net unrealized gains on available-for-sale securities         199   199
Stock compensation expense   4,455         $ 4,455
Stock option exercises (in shares)             94,000
Stock option exercises and restricted stock unit settlements, net of shares withheld for exercise price and withholding taxes   (2,480)   3,577     $ 1,097
Stock option exercises and restricted stock unit settlements, net of shares withheld for exercise price and withholding taxes (in shares) 104,090            
Common stock repurchases       (12,464)     $ (12,464)
Common stock repurchases (in shares) (303,160)           (230,160)
Cash dividends     (14,683)       $ (14,683)
Balances at Jan. 31, 2024 $ 2,374 $ 164,183 $ 225,507 $ (97,528) $ (3,597)   $ 290,939
Balances (in shares) at Jan. 31, 2024 13,242,520            
XML 21 R6.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
CASH FLOWS FROM OPERATING ACTIVITIES      
NET INCOME $ 32,358 $ 34,704 $ 35,706
Adjustments to reconcile net income to net cash provided by (used in) operating activities      
Stock compensation expense 4,455 3,958 3,459
Changes in accrued interest on investments (3,899) (1,735) 29
Depreciation 2,013 2,983 3,367
Lease expense 1,906 2,554 3,391
Deferred income tax expense (benefit) 1,333 (3,232) (208)
Amortization of intangible assets 392 732 870
Equity in loss (income) of solar energy investments 130 (1,113) 466
Provisions for credit losses   92 2,381
Impairment loss     7,901
Other 198 7 (71)
Changes in operating assets and liabilities      
Accounts receivable 2,764 (23,246) (480)
Contract assets (23,411) (19,874) 21,741
Other assets (1,004) (3,346) (241)
Accounts payable and accrued expenses 14,830 9,084 (5,742)
Contract liabilities 84,793 (31,629) (44,154)
Net cash provided by (used in) operating activities 116,858 (30,061) 28,415
CASH FLOWS FROM INVESTING ACTIVITIES      
Purchases of short-term investments (115,000) (249,750) (90,000)
Maturities of short-term investments 159,750 190,000 90,000
Purchases of available-for-sale securities (104,492)    
Purchases of property, plant and equipment (2,756) (3,372) (1,422)
Investments in solar energy projects (5,109)   (5,016)
Acquisition of Lee Telecom, Inc.     (600)
Net cash used in investing activities (67,607) (63,122) (7,038)
CASH FLOWS FROM FINANCING ACTIVITIES      
Common stock repurchases (12,464) (68,236) (20,372)
Payments of cash dividends (14,683) (13,956) (15,664)
Distribution to non-controlling interest   (677)  
Proceeds from share-based award settlements 1,097 66 1,428
Net cash used in financing activities (26,050) (82,803) (34,608)
EFFECTS OF EXCHANGE RATE CHANGES ON CASH (116) (539) (2,968)
NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS 23,085 (176,525) (16,199)
CASH AND CASH EQUIVALENTS, BEGINNING OF PERIOD 173,947 350,472 366,671
CASH AND CASH EQUIVALENTS, END OF PERIOD 197,032 173,947 350,472
NON-CASH INVESTING AND FINANCING ACTIVITIES      
Investments in solar energy projects not yet paid 3,312    
Right-of-use assets obtained in exchange for lease obligations 2,444 3,678 3,525
SUPPLEMENTAL CASH FLOW INFORMATION      
Cash paid for income taxes, net of refunds 14,297 6,665 13,897
Cash paid for operating leases $ 1,910 $ 2,552 $ 3,290
XML 22 R7.htm IDEA: XBRL DOCUMENT v3.24.1.u1
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION
12 Months Ended
Jan. 31, 2024
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION  
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION

NOTE 1 – DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION

Description of the Business

Argan, Inc. (“Argan”) conducts operations through its wholly owned subsidiaries, Gemma Power Systems, LLC and affiliates (“GPS”); The Roberts Company, Inc. (“TRC”); Atlantic Projects Company Limited and affiliates (“APC”) and Southern Maryland Cable, Inc. (“SMC”). Argan and these consolidated subsidiaries are hereinafter collectively referred to as the “Company.”

Through GPS and APC, the Company provides a full range of engineering, procurement, construction, commissioning, maintenance, project development and technical consulting services to the power generation market. The customers include primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial construction services reportable segment provides field services that support new plant construction and additions, maintenance turnarounds, shutdowns and emergency mobilizations for industrial operations primarily located in the Southeast region of the U.S. and that may include the fabrication, delivery and installation of steel components such as piping systems and pressure vessels. Through SMC, which conducts business as SMC Infrastructure Solutions, the telecommunications infrastructure services segment provides project management, construction, installation and maintenance services to commercial, local government and federal government customers primarily in the Mid-Atlantic region of the U.S.

Basis of Presentation and Significant Accounting Policies

The Company’s fiscal year ends on January 31 of each year. The consolidated financial statements include the accounts of Argan, its wholly owned subsidiaries, a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023 (see Note 15). All significant intercompany balances and transactions have been eliminated in consolidation. In Note 17, the Company has provided certain financial information relating to the operating results and assets of its reportable segments based on the manner in which management disaggregates the Company’s financial reporting for purposes of making internal operating decisions.

Use of Estimates – The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, revenues, expenses, and certain financial statement disclosures.  Management believes that the estimates, judgments and assumptions upon which it relies are reasonable based upon information available to it at the time that these estimates, judgments and assumptions are made. Estimates are used for, but are not limited to, the Company’s accounting for revenues, the valuation of assets with long and indefinite lives including goodwill, the valuation of restricted stock units and options to purchase shares of the Company’s common stock, the evaluation of uncertain income tax return positions, the valuation of deferred taxes, and the determination of the allowance for doubtful accounts. Actual results could differ from these estimates.

Revenue Recognition – The Company’s accounting for revenues on contracts with customers is based on a single comprehensive five-step model that requires reporting entities to:

1.Identify the contract,
2.Identify the performance obligations of the contract,
3.Determine the transaction price of the contract,
4.Allocate the transaction price to the performance obligations, and
5.Recognize revenue.

The Company focuses on the transfer of the contractor’s control of the goods and/or services to the customer. When a performance obligation is satisfied over time, the related revenues are recognized over time. The Company’s revenues are

recognized primarily under various types of long-term construction contracts, including those for which revenues are based on either a fixed-price or a time-and-materials basis, and primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer.

Revenues from fixed-price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. If, at any time, the estimate of contract profitability indicates an anticipated loss on a contract, the Company will recognize the total loss in the reporting period in which it is identified and the loss amount becomes estimable. Revenues from time-and-materials contracts are recognized when the related services are provided to the customer. For its time-and-materials contracts, the Company is generally able to elect the right-to-invoice practical expedient. This practical expedient permits the Company to recognize revenue equal to the value of the performance completed to date, provided that the Company has a right to invoice the customer.

Predominantly all of the Company’s fixed-price contracts are considered to have a single performance obligation. Although multiple promises to transfer individual goods or services may exist, they are not typically distinct within the context of such contracts because contract promises included therein are interrelated or the contracts require the Company to perform critical integration so that the customer receives a completed project. Warranties provided under the Company’s contracts with customers are assurance-type primarily and are recorded as the corresponding contract work is performed.

The transaction price for a customer contract represents the value of the contract awarded to the Company that is used to determine the amount of revenues recognized as of the balance sheet date. It may reflect amounts of variable consideration which could be either increases or decreases to the transaction price. These adjustments can be made from time-to-time during the period of contract performance as circumstances evolve related to such items as changes in the scope and price of contracts, claims, incentives and liquidated damages.

Variable Consideration

Amounts for unapproved change orders for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The effects of any revision to a transaction price can be determined at any time and they could be material. The Company also includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. Once a final amount has been determined, the transaction price may be revised again to reflect the final resolution.

Variations related to the Company’s contracts typically represent modifications to the existing contracts and performance obligations and do not represent new performance obligations. Actual costs related to any changes in the scope of the corresponding contract are expensed as they are incurred. Changes to total estimated contract costs and losses, if any, are reflected in operating results for the period in which they are determined.

The Company’s long-term contracts typically have schedule dates and other performance objectives that if not achieved could subject the Company to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by the achievement of a specified level of output or efficiency. Each applicable contract defines the conditions under which a project owner may be entitled to any liquidated damages. At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted from the transaction price as the Company believes that it has included activities in its contract plan, and the associated forecasted contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. The Company considers potential liquidated damages, the costs of other related items and potential mitigating factors in determining the adequacy of its regularly updated estimates of the amounts of gross profit expected to be earned on active projects.

In other cases, the Company may have the grounds to assert liquidated damages against subcontractors, suppliers, project owners or other parties related to a project. Such circumstances may arise when the Company’s activities and progress are adversely affected by delayed or damaged materials, challenges with equipment performance or other events out of the Company’s control where the Company has rights to recourse, typically in the form of liquidated damages. In general, the

Company does not adjust the corresponding contract accounting until it is probable that the favorable cost relief will be realized. Such adjustments have been and could be material.

The Company records adjustments to revenues and profits on contracts, including those associated with contract variations and estimated cost changes, using a cumulative catch-up method. Under this method, the impact of an adjustment to the amount of revenues recognized to date is recorded in the period that the adjustment is identified. Estimated variable consideration amounts are determined by the Company based primarily on the single most likely amount in the range of possible consideration amounts. Revenues and profits in future periods of contract performance are recognized using the adjusted amounts of transaction price and estimated contract costs.

Contract Assets and Liabilities

The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. Those rights are generally dependent upon advance billing terms, milestone billings based on the completion of certain phases of work or when services are performed. On most of our large contracts, milestone billings that occur early in the corresponding contract terms typically are made in advance of certain significant and related costs being incurred. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts.

The balances of the Company’s accounts receivable represent amounts billed to customers that have yet to be collected and represent an unconditional right to cash from its customers. Contract assets include amounts that represent the rights to receive payment for goods or services that have been transferred to the customer, with the rights conditional upon something other than the passage of time. Contract liabilities include amounts that reflect obligations to provide goods or services for which payment has been received.

Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. Retention amounts and the length of retention periods may vary. Retainage amounts related to active contracts are considered current regardless of the term of the applicable contract; such amounts are generally collected by the completion of the applicable contract.

Remaining Unsatisfied Performance Obligations

Substantially all of the Company’s customer contracts include the right for customers to terminate contracts for convenience. The value of future work that the Company is contractually obligated to perform pursuant to active customer contracts should not be included in remaining unsatisfied performance obligations (“RUPO”) when the corresponding contracts include termination for convenience clauses without substantial penalties accruing to the customers upon such terminations. Management assesses whether the nature of the work being performed under contract is largely service-based and repetitive and should be considered a succession of one-month contracts for the duration of the identified term of the contract. These types of arrangements do not qualify as RUPO. Predominantly, the Company’s customers contract with the Company to construct assets, to fabricate materials or to perform emergency maintenance or outage services where management believes substantial penalties or costs would be incurred upon a termination for convenience, including the costs of terminating subcontracts, canceling purchase orders and returning or otherwise disposing of delivered materials and equipment. The value of RUPO on customer contracts represents amounts based on contracts or orders received from customers that the Company believes are firm and where the parties are acting in accordance with their respective obligations. The cancellation or termination of contracts for the convenience of customers has not had a material adverse effect on the consolidated financial statements.

Cash Equivalents – The Company considers all liquid investments with original maturities of three months or less at the time of purchase to be cash equivalents.

Available-For-Sale Securities – At each balance sheet date, available-for-sale (“AFS”) securities are stated at fair value with unrealized gains and losses, net of income taxes, presented as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, and realized gains and losses are included in other income, net, in the Company’s consolidated statements of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of AFS securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the AFS securities is reevaluated at each balance sheet date.

The Company evaluates whether a decline in the fair value of AFS securities below amortized cost basis is credit-related or due to other factors. If the Company intends to sell the AFS security or it is more likely than not that the Company would be required to sell the AFS security before recovery, impairment is recognized in earnings with a corresponding adjustment to the security’s amortized cost basis. If a portion of the unrealized loss is credit-related, the impairment is recorded as an allowance on the balance sheet with a corresponding adjustment to earnings. Credit recovery is recorded as an adjustment to the allowance and earnings in the period in which credit conditions improve.

Property, Plant and Equipment – Property, plant and equipment are stated at cost less accumulated depreciation. Such assets acquired in a business combination are initially included in the Company’s consolidated balance sheet at fair values. The Company capitalizes power plant project development costs incurred by consolidated variable interest entities. Depreciation amounts are determined using the straight-line method over the estimated useful lives of the assets, other than land, which are generally from five to thirty-nine years. Building and leasehold improvements are amortized on a straight-line basis over the shorter of the estimated useful life of the related asset or the lease term, as applicable. The costs of maintenance and repairs are expensed as incurred and major improvements are capitalized. When an asset is sold or retired, the cost and related accumulated depreciation amounts are removed from the accounts and the resulting gain or loss is included in earnings.

Goodwill – On November 1 of each year, the Company reviews the carrying value of goodwill amounts for impairment. The Company also evaluates amounts of goodwill for impairment at any time when events or changes in circumstances indicate that goodwill value may be impaired.

The Company identifies a potential impairment loss by comparing the fair value of a reporting unit with the reporting unit’s carrying amount, including goodwill. In the quantitative approach, the fair value of the reporting unit is estimated using various market-based and income-based valuation techniques as applicable in the particular circumstances. If the fair value of the reporting unit exceeds the related carrying amount, goodwill of the reporting unit is not deemed to be impaired. If the carrying amount of the reporting unit exceeds its fair value, a goodwill impairment loss is recorded in an amount equal to the excess of the unit’s carrying value over its fair value, not to exceed the amount of goodwill allocated to the reporting unit.

An alternative method allows the Company to first assess qualitative factors to decide whether it is necessary to perform the quantitative goodwill impairment test. It is not required to calculate the fair value of a reporting unit unless management concludes, based on a qualitative assessment, that it is more likely than not that its fair value may be less than the corresponding carrying amount. The professional guidance for this evaluation identifies the types of factors which the Company should consider in conducting the qualitative assessment including macroeconomic, industry, market and entity-specific factors.

Long-Lived Assets – Long-lived assets (other than goodwill), consisting primarily of intangible assets with definite lives, right-of-use assets, and property, plant and equipment, are subject to review for impairment whenever events or changes in circumstances indicate that a carrying amount should be assessed. In such circumstances, the Company would compare the carrying value of the long-lived asset to the undiscounted future cash flows expected to result from the use of the asset. In the event that the Company would determine that the carrying value of the asset is not recoverable, a loss would be recognized based on the amount by which the carrying value exceeds the fair value of the asset. Fair value would be determined by using quoted market prices or valuation techniques such as the present value of expected future cash flows, appraisals, or other pricing models as appropriate. The Company’s intangible assets with definite lives are amortized over their estimated useful lives using the straight-line method.

Leases – The Company determines whether a contract is a lease at the inception of the contract based on whether the contract provides the Company the right to control the use of a physically distinct asset or substantially all of the capacity of an asset. Operating lease right-of-use assets and associated lease liabilities are recorded in the balance sheet at the lease commencement date based on the present value of future minimum lease payments to be made over the expected lease term. As the implicit rate is not determinable in most of the Company’s leases, management uses the Company’s incremental borrowing rate at the commencement date in determining the present value of future payments. The expected lease term includes any option to extend or to terminate the lease when it is reasonably certain the Company will exercise such option.

The Company classifies as short-term leases any lease with an initial noncancellable term of twelve months or less that does not include an option to purchase the underlying asset that the Company is reasonably certain to exercise. Right-of-use assets and lease liabilities related to short-term leases are excluded from the consolidated balance sheets.

Under certain leases, the Company is obligated to pay property taxes, insurance, and maintenance costs. For leases that contain both lease and non-lease components, fixed and variable payments are allocated to each component relative to observable or estimated standalone prices.

Income Taxes – Deferred taxes are recognized using enacted tax rates for the effects of temporary differences between the book and tax bases of assets and liabilities. If management believes that it is more likely than not that some portion or all of a deferred tax asset will not be realized, the carrying value will be reduced by a valuation allowance.

The Company accounts for uncertain tax positions in accordance with current accounting guidance which prescribes a recognition threshold and measurement attribute for financial statement disclosure of tax positions taken, or expected to be taken, on the income tax returns of the Company. Management evaluates and the Company records the effect of any uncertain tax position based on the amount that management deems is more likely than not (i.e., greater than a 50% probability) to be sustained upon examination and ultimate settlement with the tax authorities in the applicable tax jurisdiction.

Interest incurred related to overdue income taxes is included in income tax expense; franchise taxes and income tax penalties are included in selling, general and administrative expenses.

Share-Based Payments – The Company measures and recognizes compensation expense for all stock-based awards granted to employees and directors based upon estimates of fair value determined at the grant date of the award. Forfeitures are recognized when they occur. Share-based compensation expense is included in selling, general and administrative expenses.

The Company estimates the weighted average fair value of stock options on the date of award using a Black-Scholes option pricing model. The Company believes that its past stock option exercise activity is sufficient to provide it with a reasonable basis upon which to estimate the expected life of newly awarded stock options. Risk-free interest rates are determined by blending the rates for three-to-five-year U.S. Treasury notes. The dividend yield is based on the Company’s current annual regular dividend amount. The calculations of the expected volatility factors are based on the monthly closing prices of the Company’s common stock for the five-year periods preceding the dates of the corresponding awards. The compensation expense for each stock option is recognized on a straight-line basis over the corresponding vesting period which is typically three years.

The fair value amounts for total stock return performance-based restricted stock units (“PRSUs”) are determined by using the per share market price of the common stock on the dates of award and by assigning equal probabilities to the thirteen possible payout outcomes at the end of each three-year term, and by computing the weighted average of the outcome amounts. For each award, the estimated fair value amount was calculated to be 88.5% of the aggregate market value of the target number (which is 50% of the maximum number) of shares on the award date. The fair value amounts of PRSUs are recorded to stock compensation expense using the straight-line method over the requisite service period, which is generally three years.

For earnings per share performance-based stock units (“ERSUs”) and renewable energy performance-based restricted stock units (“RRSUs”), the fair value of each award equals the aggregate market price for the number of shares that, as of the award date, are probable of vesting based on the performance conditions. For these stock-based awards with

performance conditions, compensation expense is recognized using the graded attribution method over the requisite service period when it is probable that the performance conditions will be satisfied.

For time-based restricted stock units (“TRSUs”), the fair value of each award equals the aggregate market price for the number of shares covered by each award on the date of award. TRSUs awarded by the Company are generally subject to a service-based vesting condition, which is generally three years. For these stock-based awards subject to service-based vesting conditions, the fair value amounts are recorded in stock compensation expense over the three-year contractual lapsing periods for the corresponding restrictions.

For each exercise of a stock option or each vesting of a restricted stock unit, the Company determines whether the difference between the deduction for income tax reporting purposes created at that time and the related compensation expense previously recorded for financial reporting purposes results in either an excess income tax benefit or an income tax deficiency which is recognized, accordingly, as income tax benefit or expense in the corresponding consolidated statement of earnings.

Fair Value of Financial Instruments – ASC Topic 820, Fair Value Measurement, establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and to minimize the use of unobservable inputs when measuring fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy prioritizes the inputs into three levels that may be used to measure fair value:

Level 1 – Inputs are unadjusted quoted prices in active markets for identical assets or liabilities.

Level 2 – Inputs are quoted prices for similar assets or liabilities in active markets; or quoted prices for identical or similar assets or liabilities in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.

Level 3 – Inputs are unobservable inputs based on a company’s own assumptions.

The carrying values presented in the consolidated balance sheets for the Company’s cash, certificates of deposit (“CD’s”), accounts receivable and contract assets, and the Company’s current liabilities are reasonable estimates of their fair values due to the short-term nature of these instruments.

Foreign Currency Translation – The accompanying consolidated financial statements are presented in the currency of the United States (“U.S. Dollars”). The effects of translating the financial statements of APC from its functional currency (Euros) into the Company’s reporting currency (U.S. Dollars) are recognized as translation adjustments in accumulated other comprehensive loss. There are no applicable income taxes. The translation of assets and liabilities to U.S. Dollars is made at the exchange rate in effect at the consolidated balance sheet date, while equity accounts are translated at historical rates. The translation of the statement of earnings amounts is made monthly based generally on the average currency exchange rate for the month.

Foreign currency transactions are remeasured at current exchange rates, with adjustments recorded as foreign currency gains or losses. Net foreign currency gains and losses are included in other income, net, in the consolidated statements of earnings. For the years ended January 31, 2024 (“Fiscal 2024”), 2023 (“Fiscal 2023”) and 2022 (“Fiscal 2022”), such amounts were not material.

Treasury Stock – Treasury Stock is recorded using the cost method. Incremental direct costs to purchase treasury stock, including excise tax, are included in the cost of the shares acquired. The Company uses the average cost method to account for treasury stock. For shares of treasury stock provided for settlements or sold at a price higher than its cost, the gain is recorded to additional paid-in capital. For shares of treasury stock provided for settlements or sold at a price lower than its cost, the loss is recorded to additional paid-in capital to the extent there are previous net gains included in the account. Any losses in excess of that amount are recorded to retained earnings.

Net Income Per Share – Basic net income per share is computed by dividing net income by the weighted average number of shares of common stock outstanding during the period. Diluted net income per share is computed similarly, however, the denominator is adjusted for the number of common stock equivalents that would have a dilutive effect using the treasury stock method. If a common stock equivalent is considered antidilutive, it is not included. Potentially dilutive common stock equivalents include stock options and restricted stock units.

RECENTLY ISSUED ACCOUNTING PRONOUNCEMENTS

In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method, which provides an election to account for tax equity investments using the proportional amortization method if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. Early adoption is permitted. The Company adopted this guidance using the modified retrospective approach on the first day of Fiscal 2024. As the Company’s investments in solar tax credit structures entered into prior to Fiscal 2024 do not qualify for the proportional amortization method permitted under this guidance, the Company’s financial statements were not impacted at the time of adoption. During Fiscal 2024, the Company made an equity investment in a solar tax credit structure that is eligible for the proportional amortization method (see Note 12).

In November 2023, the FASB issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures introducing key amendments to enhance disclosures in public entities’ reportable segments. Notable changes include the mandatory disclosure of significant segment expenses regularly provided to the chief operating decision maker (“CODM”), disclosure of other segment items, and requirements for consistency in reporting measures used by the CODM. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption ASU 2023-07 may have on its financial position, results of operations, cash flows, or disclosures.

In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which introduces more detailed requirements for annual disclosures for income taxes. The ASU requires public business entities to present specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 also requires all entities to disclose the amount of income taxes paid, net of refunds received, disaggregated by federal, state, and foreign jurisdiction. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-09 may have on its financial position, results of operations, cash flows, or disclosures.

There are no other recently issued accounting pronouncements that have not yet been adopted that the Company considers material to its consolidated financial statements.

XML 23 R8.htm IDEA: XBRL DOCUMENT v3.24.1.u1
REVENUES FROM CONTRACTS WITH CUSTOMERS
12 Months Ended
Jan. 31, 2024
REVENUES FROM CONTRACTS WITH CUSTOMERS  
REVENUES FROM CONTRACTS WITH CUSTOMERS

NOTE 2 – REVENUES FROM CONTRACTS WITH CUSTOMERS

Disaggregation of Revenues

The following table presents consolidated revenues for Fiscal 2024, Fiscal 2023 and Fiscal 2022, disaggregated by the geographic area where the corresponding projects were located:

2024

    

2023

    

2022

United States

$

334,244

$

328,850

$

456,211

Republic of Ireland

198,701

68,242

35,044

United Kingdom

 

40,388

 

57,948

 

17,521

Other

 

 

 

594

Consolidated Revenues

$

573,333

$

455,040

$

509,370

Revenues for projects located in Ireland and the U.K. are attributed to the power industry services segment. The major portions of the Company’s consolidated revenues are recognized pursuant to fixed-price contracts with most of the remaining portions earned pursuant to time-and-material contracts. Consolidated revenues are disaggregated by reportable segment in Note 17 to the consolidated financial statements.

Contract Loss

For a project being performed by APC to construct a gas-fired power facility in Northern Ireland, an estimated loss at completion of the project of approximately $10.0 million was recognized in the latter half of Fiscal 2024. Accordingly, APC recorded a loss during Fiscal 2024 in the amount of approximately $13.6 million, which includes an unfavorable adjustment of estimated gross profit recorded in the prior fiscal year. This project is expected to be completed by APC during the first half of the fiscal year ending January 31, 2025 (“Fiscal 2025”).

Contract Assets and Liabilities

The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts. During the fiscal year ended January 31, 2024, there were no material unusual or one-time adjustments to contract liabilities. The amounts of revenues recognized during Fiscal 2024 and Fiscal 2023 that were included in the balances of contract liabilities as of January 31, 2023 and 2022, were approximately $95.5 million and $131.0 million, respectively.

Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. The amounts retained by project owners and other customers under construction contracts at January 31, 2024, and 2023 were $21.2 million and $49.1 million, respectively.

Variable Consideration

Amounts for unapproved change orders for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The Company also includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. At January 31, 2024 and 2023, the aggregate amounts of such contract variations that were included in the transaction prices and that were still pending customer approval were $8.4 million and $11.6 million, respectively.

Remaining Unsatisfied Performance Obligations

At January 31, 2024, the Company had RUPO of $0.7 billion. The largest portion of RUPO at any date usually relates to engineering, procurement and construction (“EPC”) services and other construction contracts with typical performance durations of one to three years. However, the length of certain significant construction projects may exceed three years. The Company estimates that approximately 69% of the RUPO amount at January 31, 2024 will be included in the amount of consolidated revenues that will be recognized during Fiscal 2025. Most of the remaining amount of the RUPO amount at January 31, 2024 is expected to be recognized in revenues during the fiscal years ending January 31, 2026 (“Fiscal 2026”) and 2027 (“Fiscal 2027”).

It is important to note that estimates may be changed in the future and that cancellations, deferrals or scope adjustments may occur related to work included in the amount of RUPO at January 31, 2024. Accordingly, RUPO may be adjusted to reflect project delays and cancellations, revisions to project scope and cost and foreign currency exchange fluctuations, or to revise estimates, as effects become known. Such adjustments to RUPO may materially reduce future revenues below Company estimates.

XML 24 R9.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CASH, CASH EQUIVALENTS AND INVESTMENTS
12 Months Ended
Jan. 31, 2024
CASH, CASH EQUIVALENTS AND INVESTMENTS  
CASH, CASH EQUIVALENTS AND INVESTMENTS

NOTE 3 – CASH, CASH EQUIVALENTS AND INVESTMENTS

At January 31, 2024 and 2023, certain amounts of cash equivalents were invested in a money market fund with net assets invested in high-quality money market instruments, including U.S. Treasury obligations; obligations of U.S. government agencies, authorities, instrumentalities or sponsored enterprises; and repurchase agreements secured by such obligations. Dividend income related to money market investments is recorded when earned. The balances of accrued dividends at January 31, 2024 and 2023 were $0.7 million and $0.3 million, respectively.

Investments

The Company’s investments consisted of the following as of January 31, 2024 and 2023:

2024

    

2023

Short-term investments

$

109,489

$

151,511

Available-for-sale securities

105,884

Total investments

$

215,373

$

151,511

Short-Term Investments

Short-term investments as of January 31, 2024 and 2023 consisted solely of certificates of deposit (“CDs”) with initial maturities of one year or less purchased from Bank of America, N.A. (the “Bank”). The Company has the intent and ability to hold the CDs until they mature, and they are carried at cost plus accrued interest. Interest income is recorded when earned and is included in other income. At January 31, 2024 and 2023, the weighted average annual interest rates of the outstanding CDs were 5.4% and 2.5%, respectively. The balances of accrued interest on the CDs at January 31, 2024 and 2023 were $4.5 million and $1.8 million, respectively.

Available-For-Sale Securities

AFS securities as of January 31, 2024 consisted of U.S. Treasury notes and a U.S. corporate debt security with original maturities of two or three years. The Company did not have any AFS securities investments as of January 31, 2023. The Company’s AFS securities consisted of the following amounts of amortized cost, allowance for credit losses, gross unrealized gains and losses and estimated fair value by contractual maturity as of January 31, 2024:

January 31, 2024

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due in one to two years

$

50,634

$

$

305

$

102

$

50,837

Due in two to three years

45,583

263

128

45,718

U.S. corporate debt security:

Due in two to three years

9,406

77

9,329

Totals

$

105,623

$

$

568

$

307

$

105,884

As of January 31, 2024, interest receivable in the amount of $1.3 million is included in the balance of AFS securities. During Fiscal 2024, the change in net unrealized holding gains, net of tax, for the Company’s AFS securities reported in other comprehensive income was approximately $0.2 million. During Fiscal 2024, there were no sales of the Company’s AFS securities, and therefore, there were no amounts of gains or losses reclassified out of other comprehensive income into net income. For AFS securities with unrealized losses, the Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of January 31, 2024, which includes an assessment of whether it is more likely than not the Company will be required to sell or intends to sell the investment before recovery of its amortized cost basis.

Earnings on Invested Funds

Earnings on invested funds for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $14.1 million, $3.4 million and $3.0 million, respectively, and are included in other income, net, in the consolidated statements of earnings.

Concentration Risk

The Company has a substantial portion of its cash on deposit in the U.S. with the Bank or invested in CDs purchased from the Bank. In addition, the Company has cash invested in a money market fund at a separate institution. The Company also maintains certain Euro-based bank accounts in Ireland and certain pound sterling-based bank accounts in the U.K. in support of the operations of APC. As of January 31, 2024, approximately 12% of the Company’s cash and cash equivalents were held by local financial institutions in Ireland and the U.K. Management does not believe that the combined amount

of the CDs and the cash deposited with the Bank, cash invested in the money market fund, and cash balances maintained at financial institutions in Ireland and the U.K., in excess of government-insured levels, represent material risks.

XML 25 R10.htm IDEA: XBRL DOCUMENT v3.24.1.u1
FAIR VALUE MEASUREMENTS
12 Months Ended
Jan. 31, 2024
FAIR VALUE MEASUREMENTS  
FAIR VALUE MEASUREMENTS

NOTE 4 – FAIR VALUE MEASUREMENTS

The following table presents the Company’s financial instruments as of January 31, 2024 and 2023 that are measured and recorded at fair value on a recurring basis:

January 31, 2024

January 31, 2023

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Cash equivalents:

Money market fund

$

126,646

$

$

$

68,647

$

$

Available-for-sale securities:

U.S. Treasury notes

96,555

U.S. corporate debt security

9,329

Totals

$

126,646

$

105,884

$

$

68,647

$

$

XML 26 R11.htm IDEA: XBRL DOCUMENT v3.24.1.u1
ACCOUNTS RECEIVABLE
12 Months Ended
Jan. 31, 2024
ACCOUNTS RECEIVABLE  
ACCOUNTS RECEIVABLE

NOTE 5 – ACCOUNTS RECEIVABLE

The Company generally extends credit to a customer based on an evaluation of the customer’s financial condition without requiring tangible collateral. Customer payments on construction service contracts are generally due within 30 to 60 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts receivable may differ due to the varying financial condition of each customer. The Company monitors its exposure to credit losses and may establish an allowance for credit losses based on management’s estimate of the loss that is expected to occur over the remaining life of the particular financial asset. The amounts of the provision for credit losses for Fiscal 2024 and Fiscal 2023 were insignificant. For Fiscal 2022, the amount of the provision for credit losses was $2.4 million.  The amounts of the allowance for credit losses as of January 31, 2024 and 2023, were $1.8 million and $1.9 million, respectively.

XML 27 R12.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INTANGIBLE ASSETS
12 Months Ended
Jan. 31, 2024
INTANGIBLE ASSETS  
INTANGIBLE ASSETS

NOTE 6 – INTANGIBLE ASSETS

Goodwill

The Company used a qualitative approach to assess the goodwill of the GPS reporting unit, which is included in the power industry services segment, as of November 1, 2023 and 2022. At each date, the Company concluded that it was more likely than not that the fair value of the reporting unit exceeded the corresponding carrying value. Therefore, completion of the quantitative impairment assessment was considered to be unnecessary in each case.

Similarly, the Company used a qualitative approach to assess the goodwill of the TRC reporting unit, which represents the industrial construction services segment, as of November 1, 2023 and 2022 and concluded that it was more likely than not that the fair value of the reporting unit exceeded the corresponding carrying value. Therefore, the completion of the quantitative impairment assessment was considered to be unnecessary.

During Fiscal 2022, the Company completed the acquisition of Lee Telecom, Inc. (“LTI”), which is located in Hampton, Virginia. The results of operations of LTI are included in the Company’s telecommunications infrastructure services segment. The acquisition represented a purchase of the assets of LTI, for which the Company paid $0.6 million cash, including customer contracts and goodwill.

The changes in the balances of the Company’s goodwill by reportable segment for Fiscal 2024 and Fiscal 2023 were as follows:

    

Power

Industrial

Telecom

Services

    

Services

    

Services

    

Totals

Goodwill as of February 1, 2022

$

18,476

$

9,467

$

90

$

28,033

Impairment losses

Goodwill as of January 31, 2023

18,476

9,467

90

28,033

Impairment losses

Goodwill as of January 31, 2024

$

18,476

$

9,467

$

90

$

28,033

Balances, January 31, 2024:

Goodwill

$

22,525

$

14,365

$

90

$

36,980

Accumulated impairment losses

 

(4,049)

 

(4,898)

 

 

(8,947)

Goodwill as of January 31, 2024

$

18,476

$

9,467

$

90

$

28,033

As of January 31, 2024, the accumulated impairment losses for the power industry services segment relate solely to the APC reporting unit.

For income tax reporting purposes, the 15-year straight-line amortization of goodwill related to acquisitions in the approximate amount of $16.5 million was completed during the year ended January 31, 2024. The other amounts of the Company’s goodwill are not amortizable for income tax reporting purposes.

Other Intangible Assets

The Company’s intangible assets, other than goodwill, relate primarily to the industrial construction services segment and consisted of the following as of January 31, 2024 and 2023:

January 31, 2024

January 31, 2023

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade name

15 years

$

4,499

$

2,450

$

2,049

$

4,499

$

2,150

$

2,349

Customer relationships

10 years

916

748

168

916

656

260

Totals

$

5,415

$

3,198

$

2,217

$

5,415

$

2,806

$

2,609

The amounts related to the trade name that became fully amortized during Fiscal 2023 were removed from the table. The Company believes that the useful life of the remaining trade name represents the remaining number of years that such intangible asset is expected to contribute to future cash flows. There were no additions to other intangible assets during Fiscal 2024 or Fiscal 2023. In addition, there were no impairment losses related to the assets for Fiscal 2024, Fiscal 2023 or Fiscal 2022. Amortization expense related to intangible assets for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $0.4 million, $0.7 million and $0.9 million, respectively.

The future amounts of amortization related to intangibles are presented below for the years ending January 31:

2025

    

$

392

2026

 

375

2027

 

300

2028

 

300

2029

300

Thereafter

 

550

Total

$

2,217

XML 28 R13.htm IDEA: XBRL DOCUMENT v3.24.1.u1
PROPERTY, PLANT AND EQUIPMENT, NET
12 Months Ended
Jan. 31, 2024
PROPERTY, PLANT AND EQUIPMENT, NET.  
PROPERTY, PLANT AND EQUIPMENT, NET

NOTE 7 – PROPERTY, PLANT AND EQUIPMENT, NET

Property, plant and equipment consisted of the following at January 31, 2024 and 2023:

    

2024

    

2023

Land and improvements

$

863

$

863

Building and improvements

 

7,910

 

7,558

Furniture, machinery and equipment

 

17,938

 

17,219

Trucks, trailers and other vehicles

 

5,902

 

6,042

 

32,613

 

31,682

Less - accumulated depreciation

 

21,592

 

21,252

Property, plant and equipment, net

$

11,021

$

10,430

The following table presents property, plant and equipment, net, disaggregated by geographic area as of January 31, 2024 and 2023:

    

2024

    

2023

United States

$

8,898

$

8,522

Republic of Ireland

 

1,836

 

1,614

United Kingdom

 

287

 

294

Property, plant and equipment, net

$

11,021

$

10,430

Depreciation expense for property, plant and equipment was $2.0 million, $3.0 million and $3.4 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively, which amounts were charged substantially to selling, general and administrative expenses in each year. The costs of maintenance and repairs were $1.6 million, $2.4 million and $2.1 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively, which amounts were charged substantially to selling, general and administrative expenses each year as well.

XML 29 R14.htm IDEA: XBRL DOCUMENT v3.24.1.u1
FINANCING ARRANGEMENTS
12 Months Ended
Jan. 31, 2024
FINANCING ARRANGEMENTS  
FINANCING ARRANGEMENTS

NOTE 8 – FINANCING ARRANGEMENTS

During April 2021, the Company amended its Amended and Restated Replacement Credit Agreement with the Bank (the “Credit Agreement”) which extended the expiration date of the Credit Agreement to May 31, 2024 and reduced the borrowing rate. On March 6, 2023, the Company entered into the Second Amendment (the “Second Amendment”) to the Credit Agreement. The Second Amendment modified the Credit Amendment, primarily, to replace the interest pricing with the Secured Overnight Financing Rate (“SOFR”) plus 1.6% and to add SOFR successor rate language. The Credit Agreement, as amended, includes the following features, among others: a lending commitment of $50.0 million including a revolving loan and an accordion feature which allows for an additional commitment amount of $10.0 million, subject to certain conditions. The Company may also use the borrowing ability to cover other credit instruments issued by the Bank for the Company’s use in the ordinary course of business as defined in the Credit Agreement. The Company intends to renew the Credit Agreement prior to its current expiration date.

At January 31, 2024 and 2023, the Company did not have any borrowings outstanding under the Credit Agreement. However, the Bank has issued a letter of credit in the total outstanding amount of $9.3 million at January 31, 2024, in support of the activities of APC under existing customer contracts. The comparable outstanding total amount of letters of credit at January 31, 2023 was $8.8 million.

The Company has pledged the majority of its assets to secure its financing arrangements. The Bank’s consent is not required for acquisitions, divestitures, cash dividends or significant investments as long as certain conditions are met. The Credit Agreement requires that the Company comply with certain financial covenants at its fiscal year-end and at each fiscal quarter-end. The Credit Agreement, as amended, includes other terms, covenants and events of default that are customary for a credit facility of its size and nature, including a requirement to achieve positive adjusted earnings before interest, taxes, depreciation and amortization, as defined, over each rolling twelve-month measurement period. As of January 31, 2024 and 2023, the Company was in compliance with the covenants of the Credit Agreement, as amended.

XML 30 R15.htm IDEA: XBRL DOCUMENT v3.24.1.u1
COMMITMENTS
12 Months Ended
Jan. 31, 2024
COMMITMENTS  
COMMITMENTS

NOTE 9 – COMMITMENTS

Leases

The Company’s leases are primarily operating leases that cover office space, expiring on various dates through December 2031, and certain equipment used by the Company in the performance of its construction services contracts. Some of these equipment leases may be embedded in broader agreements with subcontractors or construction equipment suppliers. The Company has no material finance leases. None of the operating leases includes significant amounts for incentives, rent holidays or price escalations.

At January 31, 2024 and 2023, right-of-use assets were $5.3 million and $4.8 million, respectively. Operating lease expense amounts are recorded on a straight-line basis over the expected lease terms. Operating lease expense amounts for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $1.9 million, $2.6 million and $3.4 million, respectively.

The following is a schedule of future minimum lease payments for the operating leases that were recognized in the consolidated balance sheet as of January 31, 2024 for the years ending January 31:

2025

    

$

2,823

2026

1,461

2027

275

2028

221

2029

213

Thereafter

625

Total lease payments

5,618

Less imputed interest

300

Present value of lease payments

5,318

Less current portion (included in accrued expenses)

2,726

Noncurrent portion (included in noncurrent liabilities)

$

2,592

The following table presents summary information for the Company’s lease terms and discount rates for its operating leases at January 31, 2024 and 2023:

2024

    

2023

    

Weighted average remaining lease term

41 months

58 months

Weighted average discount rate

5.2

%

3.7

%

The Company also uses equipment and occupies other facilities under short-term rental agreements. Rent expense amounts incurred under short-term rentals were $9.5 million, $11.3 million and $9.6 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively.

Performance Bonds and Guarantees

In the normal course of business and for certain major projects, the Company may be required to obtain surety or performance bonding, to cause the issuance of letters of credit, or to provide parent company guarantees (or some combination thereof) in order to provide performance assurances to clients on behalf of its contractor subsidiaries. As these subsidiaries are wholly-owned, any actual liability is ordinarily reflected in the financial statement account balances determined pursuant to the Company’s accounting for contracts with customers. When sufficient information about claims on guaranteed or bonded projects would be available and monetary damages or other costs or losses would be determined to be probable, the Company would record such losses. Any such amounts that may be required to be paid in excess of the estimated costs to complete contracts in progress as of January 31, 2024 are not estimable.

As of January 31, 2024, the estimated amount of the Company’s unsatisfied bonded performance obligations, covering all of its subsidiaries, was approximately $0.5 billion. As of January 31, 2023, the outstanding amount of bonds covering other risks, including warranty obligations related to completed activities, was not material. Not all of our projects require bonding.

The Company also provided a financial guarantee, subject to certain terms and conditions, up to $3.6 million in support of business development efforts. Any estimated loss related to this guarantee was recorded during Fiscal 2022.

Warranties

The Company generally provides assurance-type warranties for work performed under its construction contracts. The warranties cover defects in equipment, materials, design or workmanship, and most warranty periods typically run from nine to twenty-four months after the completion of construction on a particular project. Because of the nature of the Company’s projects, including project owner inspections of the work both during construction and prior to substantial completion, the Company has not experienced material unexpected warranty costs in the past. Warranty costs are estimated based on experience with the type of work and any known risks relative to each completed project. The accruals of liabilities, which are established to cover estimated future warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the consolidated balances sheets. The liability amounts may be periodically adjusted to reflect changes in the estimated size and number of expected warranty claims.

Employee Benefit Plans

The Company maintains 401(k) savings plans pursuant to which the Company makes discretionary contributions for the eligible and participating employees. The Company’s expense amounts related to these defined contribution plans were approximately $2.9 million, $2.7 million and $2.3 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. The Company also maintains nonqualified plans whereunder the payments of certain amounts of incentive compensation earned by key employees are deferred for periods of four to seven years; payments are conditioned on continuous employment.

XML 31 R16.htm IDEA: XBRL DOCUMENT v3.24.1.u1
LEGAL CONTINGENCIES
12 Months Ended
Jan. 31, 2024
LEGAL CONTINGENCIES  
LEGAL CONTINGENCIES

NOTE 10 – LEGAL CONTINGENCIES

In the normal course of business, the Company may have pending claims and legal proceedings. In the opinion of management, based on information available at this time, there are no current claims and proceedings that are expected to have a material adverse effect on the consolidated financial statements as of January 31, 2024.

In January 2019, GPS filed a lawsuit against Exelon West Medway II, LLC and Exelon Generation Company, LLC (together referred to as “Exelon”) in the U.S. District Court for the Southern District of New York for Exelon’s breach of contract and failure to remedy various conditions which negatively impacted the schedule and the costs associated with the construction by GPS of a gas-fired power plant for Exelon in Massachusetts. In September 2021, GPS reached a final settlement of all outstanding claims between the parties resulting in Exelon making a payment to GPS in the amount of $27.5 million, which was in excess of the previously reported total amount of receivables and contract assets. The excess amount was included in revenues for Fiscal 2022.

XML 32 R17.htm IDEA: XBRL DOCUMENT v3.24.1.u1
STOCK-BASED COMPENSATION
12 Months Ended
Jan. 31, 2024
STOCK-BASED COMPENSATION  
STOCK-BASED COMPENSATION

NOTE 11 – STOCK-BASED COMPENSATION

On June 23, 2020, the Company’s stockholders approved the adoption of the 2020 Stock Plan (the “2020 Plan”), and the allocation of 500,000 shares of the Company’s common stock for issuance thereunder. On June 20, 2023, the Company’s stockholders approved an allocation of an additional 500,000 shares for issuance under the 2020 Plan. The Company’s board of directors may make share-based awards under the 2020 Plan to officers, directors and key employees. The 2020 Plan replaced the 2011 Stock Plan (the “2011 Plan”); the Company’s authority to make awards pursuant to the 2011 Plan expired on July 19, 2021. Together, the 2020 Plan and the 2011 Plan are hereinafter referred to as the “Stock Plans.”

The features of the 2020 Plan are similar to those included in the 2011 Plan. Awards may include nonqualified stock options, incentive stock options, and restricted or unrestricted stock. The specific provisions for each award are documented in a written agreement between the Company and the awardee. All stock options awarded under the Stock Plans have exercise prices per share at least equal to the market value per share of the Company’s common stock on the date of grant. Stock options have a maximum term of ten years. Typically, stock options are awarded with one-third of each stock option vesting on each of the first three anniversaries of the corresponding award date.

As of January 31, 2024, there were 2,256,062 shares of common stock reserved for issuance under the Stock Plans; this number includes 543,087 shares of common stock available for future awards under the 2020 Plan.

Expense amounts related to stock awards were $4.5 million, $4.0 million and $3.5 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. At January 31, 2024, there was $6.0 million in unrecognized compensation cost related to outstanding stock awards that the Company expects to expense over the next three years.

Stock Options

A summary of stock option activity under the Stock Plans for Fiscal 2024 is presented below (shares in thousands):

Weighted-

Average

Weighted-

Weighted-

Remaining

Average

Average Exercise

Contractual

Grant-Date

    

Shares

    

Price

    

Term (years)

    

Fair Value

Outstanding, January 31, 2023

 

1,440

$

43.84

 

5.46

$

10.11

Granted

21

$

41.64

Exercised

(94)

$

27.42

Forfeited

(2)

$

33.81

Outstanding, January 31, 2024

1,365

$

44.95

 

4.67

$

10.43

Exercisable, January 31, 2024

1,273

$

45.33

 

4.40

$

10.61

Vested or expected to vest, January 31, 2024

 

1,365

$

44.95

 

4.67

$

10.43

A summary of the changes in the number of non-vested options to purchase shares of common stock for Fiscal 2024 is presented below (shares in thousands):

    

Weighted-

Average

Grant-Date

Shares

    

Fair Value

Non-vested, January 31, 2023

 

194

$

7.27

Granted

 

21

$

8.65

Vested

 

(122)

$

7.31

Forfeited

(1)

$

5.68

Non-vested, January 31, 2024

 

92

$

7.85

During Fiscal 2023 and 2022, respectively, 67,000 and 73,000 stock options were granted with weighted-average grant-date fair values per share of $8.54 and $7.19. The total intrinsic value amounts related to the stock options exercised during Fiscal 2024 and Fiscal 2022 were $1.5 million and $0.6 million, respectively; the corresponding amount during Fiscal 2023 was insignificant. At January 31, 2024, the aggregate market value amounts of the shares of common stock subject to outstanding stock options and exercisable stock options where the options were “in-the-money” exceeded the aggregate exercise prices of such options by $5.6 million and $5.1 million, respectively.

Restricted Stock Units

The Company awards restricted stock units to senior executives, certain other key employees and members of the Company’s board of directors. Awardees earn the right to receive shares of common stock as certain performance goals are achieved and/or service periods are satisfied. Each restricted stock unit expires on the three-year anniversary of the award.

During Fiscal 2024, the Company awarded PRSUs covering a target of 6,000 shares of common stock, ERSUs covering a target of 15,000 shares of common stock, RRSUs covering a target of 7,500 shares of common stock, TRSUs covering 77,800 shares of common stock, and 1,492 shares based on the amount of cash dividends deemed paid on shares earned pursuant to the awards.

The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for Fiscal 2024 are presented below (shares in thousands):

    

Weighted-

Average

Grant-Date

Shares

Fair Value

Outstanding, January 31, 2023

310

$

30.80

Awarded

129

$

30.46

Issued

(42)

$

43.80

Forfeited

(49)

$

15.57

Outstanding, January 31, 2024

348

$

30.21

During Fiscal 2023 and 2022, restricted stock units covering a maximum of 146,871 and 145,721 shares were awarded with a weighted-average grant-date fair values per share of $29.26 and $39.52, respectively. The total fair values of restricted stock units that vested and were issued during Fiscal 2024, Fiscal 2023, and Fiscal 2022 were $1.8 million, $0.9 million and $0.8 million, respectively.

XML 33 R18.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES
12 Months Ended
Jan. 31, 2024
INCOME TAXES  
INCOME TAXES

NOTE 12 – INCOME TAXES

Income Tax Expense Reconciliations

The components of the amounts of income tax expense for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are presented below:

    

2024

    

2023

    

2022

Current:

Federal

$

10,870

$

12,776

$

10,921

State

 

1,835

 

1,012

 

643

Foreign

2,537

740

 

15,242

 

14,528

 

11,564

Deferred:

Federal

 

(923)

 

(803)

 

(341)

State

 

301

 

23

 

133

Foreign

1,955

(2,452)

 

1,333

 

(3,232)

 

(208)

Income tax expense

$

16,575

$

11,296

$

11,356

The amounts of interest and penalties related to income taxes that were incurred by the Company during Fiscal 2024, Fiscal 2023 and Fiscal 2022 were not material.

The Company’s income tax expense amounts differed from corresponding amounts computed by applying the federal corporate income tax rate of 21% to the consolidated amount of income before income taxes for Fiscal 2024, Fiscal 2023 and Fiscal 2022 as presented below:

2024

    

2023

    

2022

Computed expected income tax expense

$

10,276

$

9,660

$

9,883

Difference resulting from:

Unrecognized tax loss benefit

3,858

Foreign tax rate differential

(2,294)

(441)

(352)

State income taxes, net of federal tax effect

 

1,688

 

860

 

614

Excess executive compensation

1,040

1,397

1,296

Adjustment to valuation for foreign NOLs

2,083

(2,574)

Net benefit related to Solar Tax Credit investments

(646)

Meals and entertainment expense

626

83

58

Research and development tax credits adjustment

6,181

Recognition of research and development tax credit benefits

(3,430)

Other permanent differences and adjustments, net

(56)

(440)

 

(143)

Income tax expense

$

16,575

$

11,296

$

11,356

Net Operating Loss (“NOL”) Carryback

In March 2020, the Coronavirus, Aid, Relief, and Economic Security Act (the “CARES Act”) was signed into law. The tax changes of the CARES Act included a temporary suspension of the limitations on the future utilization of certain NOLs and re-established a carryback period for certain losses to five years. The NOLs eligible for carryback under the CARES Act include the Company’s domestic NOL for Fiscal 2020, which was approximately $39.5 million. The Company made the appropriate filing with the Internal Revenue Service (“IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 and 2015 in the total amount of approximately $12.7 million during the fiscal year ended January 31, 2021 (“Fiscal 2021”). At the instruction of the IRS, amended income tax returns for Fiscal 2016 and Fiscal 2015 were filed during the second quarter of Fiscal 2024; the IRS has not completed the examination and approval of the Company’s amended tax returns and refund request.

Research and Development Tax Credit Adjustments

During Fiscal 2019, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research and development tax credits that may have been available to reduce prior year income taxes. This study focused on project costs incurred during the three-year period ended January 31, 2018. Based on the results of the study, management identified and estimated significant amounts of income tax benefits that were not previously recognized in the Company’s operating results for any prior year reporting period. The net amount of federal and state research and development tax credit benefit recognized in prior fiscal years $16.2 million, against which the Company recorded a corresponding liability for uncertain income tax return positions in the amount of $5.0 million.

During Fiscal 2021, the IRS concluded examinations of the Company’s consolidated federal income tax returns for the years ending January 31, 2018, 2017 and 2016, with its focus on the research and development tax credits included therein. The final revenue agents reports disagreed with the Company’s treatment of a substantial amount of the costs that supported the Company’s claims. The Company submitted a formal protest of the findings of the IRS examiner and requested an appeal hearing. At the conclusion of the hearing, the Company accepted a settlement offer from the IRS in the amount of approximately $7.9 million, before interest. As a result, during Fiscal 2023, the Company made an unfavorable adjustment to income tax expense in the approximate amount of $6.2 million; the accounting for this adjustment reduced the contra-asset balance by approximately $4.4 million.

The Company has also formally protested the conclusions reached by two states, where the Company filed tax returns reflecting the benefits of certain research and development credits, that the credits are not allowable.

Research and Development Credits

During Fiscal 2022, in a manner similar to the process described above, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research and development tax credits that may have been available to reduce federal income taxes for Fiscal 2022 and Fiscal 2021. As a result, the Company filed amended federal income tax returns for those years including research and development tax credits in the total amount of $5.8 million, which was netted with a provision for uncertain tax return positions in the amount of $2.4 million, and recorded during Fiscal 2023. In May 2023, the Company received notification that its amended federal income tax returns for Fiscal 2021 and Fiscal 2022 were selected for examination. At January 31, 2024, the examination was in its early stages.

Unrecognized Income Tax Benefits

Changes in the balances of contra-asset established for uncertain income tax positions for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are presented below:

    

2024

    

2023

    

2022

Unrecognized income tax benefits, beginning of fiscal year

$

2,882

$

4,937

$

4,895

Increases related to prior period income tax positions

 

78

 

 

42

Increases related to current period income tax positions

 

2,359

 

Expirations of statutes of limitations

 

(407)

 

 

Settlements

 

 

(4,414)

 

Unrecognized income tax benefits, end of fiscal year

$

2,553

$

2,882

$

4,937

Gross unrecognized income tax benefits totaled $2.6 million for the fiscal year ended January 31, 2024, all of which would affect the Company’s effective income tax rate if recognized. The Company does not expect its unrecognized income tax benefits to change significantly within the next 12 months.

Recognition of Foreign NOL Income Tax Benefits

The Company has deferred tax assets in a total amount of approximately $13.8 million related to prior year NOLs of its foreign subsidiaries, primarily the operation of APC located in the U.K. (“APC UK”). The Company has established a valuation allowance against a substantial portion of these NOLs. For Fiscal 2023, APC UK continued a turnaround of its operating results such that the Company believed that it had a stable earnings history upon which APC UK could reliably forecast future profitable operations. Based on the forecast that rested on the belief that meaningful investments would be made in the power infrastructure of the U.K. for the foreseeable future, the Company believed that it would be more likely than not that a certain portion of the deferred tax assets would be realized. Accordingly, the Company reversed a portion of the corresponding allowance during Fiscal 2023 in the amount of $2.6 million. However, the unexpected difficulties with one construction project and the loss that was incurred by APC UK related to it caused management to lower its estimates of the amount of future net earnings of APC UK available to offset its net operating loss carryforwards. As a result, the Company increased the allowance by $2.1 million in Fiscal 2024.

Income Tax Refunds

As of January 31, 2024 and 2023, the balances of other current assets in the consolidated balance sheet included income tax refunds receivable and prepaid income taxes in the total amounts of approximately $18.3 million and $15.3 million, respectively. The income tax refunds included the amount expected to be received from the IRS upon its review and approval of the Company’s NOL carryback refund request and the completion of its examination of the amended tax returns for Fiscal 2022 and Fiscal 2021 as described above.

Deferred Taxes

The tax effects of temporary differences that are reflected in deferred taxes as of January 31, 2024 and 2023 included the following:

    

2024

    

2023

Assets:

Net operating loss carryforwards

$

19,772

$

13,964

Stock awards

2,726

2,726

Accrued expenses

1,955

1,480

Lease liabilities

1,383

1,189

Research and development costs deferral

1,622

1,015

Research and development credit carryforwards

269

Other

 

148

 

337

 

27,606

 

20,980

Liabilities:

Intangibles

(3,819)

(3,674)

Property and equipment

 

(893)

 

(1,033)

Construction contracts

 

(839)

 

(1,229)

Right-of-use assets

(1,378)

(1,184)

Other

(619)

(431)

 

(7,548)

 

(7,551)

Valuation allowances

(17,799)

(9,740)

Deferred tax assets, net

$

2,259

$

3,689

Taxpayers are now required to capitalize and amortize research and experimental expenses over five or 15 years for tax years beginning in 2022 or later. Accordingly, for Fiscal 2024 and 2023, the Company did estimate an amount of such expenses which resulted in the deferred tax asset balances presented in the table above.

The Company acquired unused NOLs for federal income tax reporting purposes from TRC that are subject to limitations imposed by Section 382 of the Internal Revenue Code of 1986, as amended. These losses are subject to annual limits that reduce the aggregate amount of NOLs available to the Company in the future to approximately $5.5 million. These NOLs are available to offset future taxable income and, if not utilized, begin expiring during 2032. The NOL carryforwards related to APC UK do not expire. The Company also has certain NOLs that will be available to the Company for state income tax reporting purposes that are substantially similar to the federal NOLs.

The Company’s ability to realize deferred tax assets, including those related to the NOLs discussed above, depends primarily upon the generation of sufficient future taxable income to allow for the Company’s use of temporarily deferred deductions and tax planning strategies. If such estimates and assumptions change in the future, the Company may be required to record additional valuation allowances against some or all of its deferred tax assets resulting in additional income tax expense in the future. At this time, based substantially on the strong earnings performance of the Company’s power industry services reporting segment, management believes that it is more likely than not that the Company will realize the benefit of significantly all of its deferred tax assets, net of valuation allowances.

Income Tax Returns

The Company is subject to federal and state income taxes in the U.S., and income taxes in Ireland and the U.K. Tax treatments within each jurisdiction are subject to the interpretation of the related tax laws and regulations which require the application of significant judgment. The Company is no longer subject to income tax examinations by authorities for its fiscal years ended on or before January 31, 2020, except for several notable exceptions including Ireland, the U.K. and several states where the open periods are one year longer.

Solar Energy Projects

The Company holds equity investments in Solar Tax Credit (“STC”) investments. Primarily, the STC investments are structured as limited liability companies that invest in solar energy projects that are eligible to receive energy tax credits.

During Fiscal 2024 and Fiscal 2022, the Company made investments of approximately $5.1 million and $5.0 million in STC investments. As of January 31, 2024, the Company had $3.3 million remaining of cash investment commitments related to its STC investments, which are expected to be paid in Fiscal 2025. At January 31, 2024 and 2023, the investment account balances were $2.1 million and $1.2 million, respectively, which are included in other assets in the consolidated balance sheets. These investments are expected to provide positive overall returns over their expected lives.

The Company has elected to use the proportional amortization method (“PAM”) for STC investments that qualify. Under PAM, an investment is amortized in proportion to the allocation of tax benefits received in each period, and the investment amortization and tax benefit amounts are presented net within income tax expense in the Company’s consolidated statements of earnings. Only the Company’s STC investment made in Fiscal 2024 qualifies for PAM. During Fiscal 2024, the Company recognized $8.1 million of income tax credits and other income tax benefits and recorded $7.4 million of investment amortization related to this STC investment. The amount of non-income tax-related activity and other returns related to this investment was not material for Fiscal 2024.

Not all of the Company’s STC investments qualify for PAM. For STC investments that do not qualify for PAM, the Company accounts for the investment using the equity method of accounting and includes income and losses related to the investment in other income in the Company’s consolidated statements of earnings. Tax credits, when recognized, are recorded as a reduction of the corresponding investment balance with an offsetting reduction to accrued taxes payable in accordance with the deferral method. For these STC investments that do not qualify for PAM, income tax credits in the approximate amount of $4.5 million were recognized during Fiscal 2022; no income tax credits were recognized in Fiscal 2024 and Fiscal 2023. For Fiscal 2024, Fiscal 2023 and Fiscal 2022, the Company recorded its share of losses of less than $0.1 million, income of $1.1 million and losses of $0.4 million, respectively, from these STC investments.

XML 34 R19.htm IDEA: XBRL DOCUMENT v3.24.1.u1
NET INCOME PER SHARE
12 Months Ended
Jan. 31, 2024
NET INCOME PER SHARE  
NET INCOME PER SHARE

NOTE 13 – NET INCOME PER SHARE

Basic and diluted net income per share attributable to the stockholders of Argan, Inc. for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are computed as follows (shares in thousands except in note (1) below the chart):

2024

    

2023

    

2022

Net income

$

32,358

$

33,098

$

38,244

Weighted average number of shares outstanding – basic

13,365

14,083

15,715

Effect of stock awards (1)

183

93

198

Weighted average number of shares outstanding – diluted

13,548

14,176

15,913

Net income per share attributable to the stockholders of Argan, Inc.

Basic

$

2.42

$

2.35

$

2.43

Diluted

$

2.39

$

2.33

$

2.40

(1)For Fiscal 2024, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options and restricted stock units covering an aggregate of 685,334, 978,834 and 570,167 shares of common stock, respectively. The options had exercise prices per share in excess of the average market price per share for the applicable year.  
XML 35 R20.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CASH DIVIDENDS AND COMMON STOCK REPURCHASES
12 Months Ended
Jan. 31, 2024
CASH DIVIDENDS AND COMMON STOCK REPURCHASES  
CASH DIVIDENDS AND COMMON STOCK REPURCHASES

NOTE 14 – CASH DIVIDENDS AND COMMON STOCK REPURCHASES

On September 19, 2023, Argan’s board of directors increased the Company’s quarterly cash dividend by 20% from $0.25 to $0.30 per share of common stock and, accordingly, the Company made regular quarterly cash dividend payments of $0.30 per share of common stock in October 2023 and January 2024. The Company also made regular quarterly cash dividend payments of $0.25 per share of common stock in April 2023 and July 2023. During Fiscal 2023 and Fiscal 2022, the Company made regular quarterly cash dividend payments of $0.25 per share of common stock.

Pursuant to its established program and authorizations provided by Argan’s board of directors, the Company began to repurchase shares of its common stock in November 2021. During Fiscal 2024, the Company repurchased 230,160 shares of common stock, all on the open market, for an aggregate price of approximately $9.2 million, or $40.01 per share. In addition, the Company repurchased 73,000 shares of common stock in a direct purchase from a director of the Company

for an aggregate price of approximately $3.2 million, or $43.50 per share. During Fiscal 2024, the Company accepted 31,066 shares of common stock at the average price per share of $47.19 as consideration for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements.

During Fiscal 2023, the Company repurchased 1,855,714 shares of common stock, most on the open market, for an aggregate price of approximately $68.2 million, or $36.77 per share. During Fiscal 2022, the Company repurchased 527,752 shares of common stock, all on the open market, for an aggregate price of approximately $20.4 million, or $38.60 per share. For Fiscal 2024, the Company used 135,156 shares of treasury stock to settle stock option exercises and other share-based awards. For Fiscal 2023 and 2022, no shares of treasury stock were used to settle such transactions.

In August 2022, the Inflation Reduction Act was signed into law, which introduced a 1% excise tax on shares repurchased after December 31, 2022. For Fiscal 2024 and Fiscal 2023, the excise tax was not material.

XML 36 R21.htm IDEA: XBRL DOCUMENT v3.24.1.u1
VARIABLE INTEREST ENTITY
12 Months Ended
Jan. 31, 2024
VARIABLE INTEREST ENTITY  
VARIABLE INTEREST ENTITY

NOTE 15 – VARIABLE INTEREST ENTITY

In January 2018, the Company was deemed to be the primary beneficiary of a VIE that was performing the project development activities related to the planned construction of a new natural gas-fired power plant. Consideration for the Company’s engineering and financial support provided to the project included the right to build the power plant pursuant to a turnkey EPC services contract that was negotiated and announced. In Fiscal 2023, the Company was deemed to no longer be the primary beneficiary of the VIE, and accordingly it was deconsolidated. Prior to deconsolidation, the account balances of the VIE had been included in the Company’s consolidated financial statements, including capitalized development costs that were included in property, plant and equipment.  

During Fiscal 2022, the project owner was unable to obtain the necessary equity financing for the project, and the Company recorded an impairment loss related to the capitalized development costs of this project in the amount of $7.9 million, of which $2.5 million was attributed to the non-controlling interest. In Fiscal 2023, prior to deconsolidation, the VIE settled on amounts owed for certain impaired development costs and recognized a gain of $1.6 million recorded in selling, general and administrative expenses, all of which was attributed to the non-controlling interest. The VIE distributed $0.7 million to the non-controlling interest.

XML 37 R22.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CUSTOMER CONCENTRATIONS
12 Months Ended
Jan. 31, 2024
CUSTOMER CONCENTRATIONS  
CUSTOMER CONCENTRATIONS

NOTE 16 – CUSTOMER CONCENTRATIONS

The majority of the Company’s consolidated revenues relate to performance by the power industry services segment which provided 73%, 76% and 78% of consolidated revenues for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. For Fiscal 2024, Fiscal 2023 and Fiscal 2022, the Company’s industrial construction services segment represented 25%, 20% and 19% of consolidated revenues, respectively.

For Fiscal 2024, the Company’s most significant customer relationships included three power industry services customers, which accounted for 19%, 16% and 15% of consolidated revenues. For Fiscal 2023, the Company’s most significant customer relationships included two power industry services customers, which accounted for 38% and 12% of consolidated revenues. For Fiscal 2022, the Company’s most significant customer relationship included one power industry services customer which accounted for 57% of consolidated revenues.

The accounts receivable balances from three major customers represented 16%, 14% and 14% of the corresponding consolidated balance as of January 31, 2024, and accounts receivable balances from three major customers represented 36%, 12% and 12% of the corresponding consolidated balance as of January 31, 2023. The contract asset balance attributable to two major customers represented 39% and 32% of the corresponding consolidated balance as of January 31, 2024. The contract asset balance related to one major customer represented 70% of the corresponding consolidated balance as of January 31, 2023.

XML 38 R23.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SEGMENT REPORTING
12 Months Ended
Jan. 31, 2024
SEGMENT REPORTING  
SEGMENT REPORTING

NOTE 17 – SEGMENT REPORTING

Segments represent components of an enterprise for which discrete financial information is available that is evaluated regularly by the Company’s chief executive officer, who is the chief operating decision maker, in determining how to allocate resources and in assessing performance. The Company’s reportable segments recognize revenues and incur expenses, are organized in separate business units with different management teams, customers, talents and services, and may include more than one operating segment.

Intersegment revenues and the related cost of revenues, are netted against the corresponding amounts of the segment receiving the intersegment services. For Fiscal 2024, intersegment revenues were not material. For Fiscal 2023 and 2022, intersegment revenues totaled approximately $0.6 million and $2.8 million, respectively. Intersegment revenues for the aforementioned periods primarily related to services provided by the industrial construction services segment to the power industry services segment and were based on prices negotiated by the parties.

Summarized below are certain operating results and financial position data of the Company’s reportable business segments for Fiscal 2024, Fiscal 2023 and Fiscal 2022. The “Other” column in each summary includes the Company’s corporate expenses.

Year Ended

Power

Industrial

Telecom

January 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

416,281

$

142,801

$

14,251

$

$

573,333

Cost of revenues

 

357,705

 

124,321

 

10,473

 

 

492,499

Gross profit

 

58,576

 

18,480

 

3,778

 

 

80,834

Selling, general and administrative expenses

 

24,274

6,440

2,469

11,193

44,376

Income (loss) from operations

34,302

12,040

1,309

(11,193)

36,458

Other income (loss), net

 

13,871

 

 

(3)

 

(1,393)

 

12,475

Income (loss) before income taxes

$

48,173

$

12,040

$

1,306

$

(12,586)

 

48,933

Income tax expense

 

16,575

Net income

$

32,358

Amortization of intangibles

$

$

392

$

$

$

392

Depreciation

527

1,073

409

4

2,013

Property, plant and equipment additions

1,266

1,014

473

3

2,756

Current assets

$

383,508

$

59,123

$

3,872

$

100,676

$

547,179

Current liabilities

256,975

41,869

1,591

1,825

302,260

Goodwill

18,476

9,467

90

28,033

Total assets

411,571

76,012

6,703

103,943

598,229

Year Ended

Power

Industrial

Telecom

January 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

346,033

$

92,774

$

16,233

$

$

455,040

Cost of revenues

 

277,402

 

78,034

 

13,243

 

 

368,679

Gross profit

 

68,631

 

14,740

 

2,990

 

 

86,361

Selling, general and administrative expenses

 

22,635

7,900

3,353

10,804

44,692

Income (loss) from operations

45,996

6,840

(363)

(10,804)

41,669

Other income, net

 

3,829

 

 

3

 

499

 

4,331

Income (loss) before income taxes

$

49,825

$

6,840

$

(360)

$

(10,305)

 

46,000

Income tax expense

 

11,296

Net income

$

34,704

Amortization of intangibles

$

$

618

$

114

$

$

732

Depreciation

567

1,978

434

4

2,983

Property, plant and equipment additions

1,450

1,717

189

16

3,372

Current assets

$

307,742

$

42,488

$

3,900

$

84,572

$

438,702

Current liabilities

170,164

29,550

1,317

1,472

202,503

Goodwill

18,476

9,467

90

28,033

Total assets

334,593

60,038

7,153

87,703

489,487

Year Ended

Power

Industrial

Telecom

January 31, 2022

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

398,089

$

97,890

$

13,391

$

$

509,370

Cost of revenues

 

317,130

 

81,391

 

11,117

 

 

409,638

Gross profit

 

80,959

 

16,499

 

2,274

 

 

99,732

Selling, general and administrative expenses

 

28,323

8,167

2,146

8,685

 

47,321

Impairment losses

7,901

7,901

Income (loss) from operations

 

44,735

8,332

128

(8,685)

44,510

Other income, net

 

2,545

 

 

 

7

 

2,552

Income (loss) before income taxes

$

47,280

$

8,332

$

128

$

(8,678)

 

47,062

Income tax expense

 

11,356

Net income

$

35,706

Amortization of intangibles

$

208

$

662

$

$

$

870

Depreciation

605

2,325

433

4

3,367

Property, plant and equipment additions

713

107

597

5

1,422

Current assets

$

322,448

$

25,681

$

2,957

$

156,198

$

507,284

Current liabilities

209,829

9,534

1,916

1,748

223,027

Goodwill

18,476

9,467

90

28,033

Total assets

345,956

44,002

6,741

156,886

553,585

XML 39 R24.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION
12 Months Ended
Jan. 31, 2024
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION  
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

NOTE 18 – SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

Balance Sheet

Other current assets consisted of the following at January 31, 2024 and 2023:

2024

    

2023

Income tax refunds receivable and prepaid income taxes

$

18,267

$

15,327

Raw materials inventory

9,985

11,903

Prepaid expenses

 

6,035

 

4,541

Other

4,972

6,563

Total other current assets

$

39,259

$

38,334

Inventories consist of raw materials held for use in the ordinary course of business and is valued at the lower of cost or net realizable value.

Accrued expenses consisted of the following at January 31, 2024 and 2023:

2024

    

2023

Accrued project costs

$

49,135

$

17,448

Accrued compensation

21,206

18,286

Lease liabilities

2,726

1,567

Other

8,654

12,566

Total accrued expenses

$

81,721

$

49,867

Other Loss

On March 7, 2023, the Company determined that it had been a victim of a complex criminal scheme, which resulted in fraudulently-induced outbound wire transfers to a third-party account. The Company retained specialized legal counsel and a cybersecurity services firm to assist in an independent forensic investigation of the incident and the efforts to recover the funds. The total amount of the fraud loss and the professional fees, net with funds recovered, of approximately $2.7 million is reflected in other income as a loss in the consolidated statement of earnings for Fiscal 2024.

XML 40 R25.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SUBSEQUENT EVENTS
12 Months Ended
Jan. 31, 2024
SUBSEQUENT EVENTS  
SUBSEQUENT EVENTS

NOTE 19 – SUBSEQUENT EVENTS

Subsequent to January 31, 2024, the Company continued to repurchase shares of its common stock pursuant to the Share Repurchase Plan. As of April 11, 2024, the date of the last subsequent transaction, the Company had repurchased 5,600 shares since year-end, all on the open market, for an aggregate price of approximately $0.3 million, or $44.87 per share, exclusive of share repurchase excise tax.

On April 10, 2024, the Company’s Board of Directors declared a regular quarterly cash dividend in the amount of $0.30 per share of common stock, payable on April 30, 2024 to stockholders of record at the close of business on April 22, 2024.

XML 41 R26.htm IDEA: XBRL DOCUMENT v3.24.1.u1
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies)
12 Months Ended
Jan. 31, 2024
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION  
Description of the Business

Description of the Business

Argan, Inc. (“Argan”) conducts operations through its wholly owned subsidiaries, Gemma Power Systems, LLC and affiliates (“GPS”); The Roberts Company, Inc. (“TRC”); Atlantic Projects Company Limited and affiliates (“APC”) and Southern Maryland Cable, Inc. (“SMC”). Argan and these consolidated subsidiaries are hereinafter collectively referred to as the “Company.”

Through GPS and APC, the Company provides a full range of engineering, procurement, construction, commissioning, maintenance, project development and technical consulting services to the power generation market. The customers include primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial construction services reportable segment provides field services that support new plant construction and additions, maintenance turnarounds, shutdowns and emergency mobilizations for industrial operations primarily located in the Southeast region of the U.S. and that may include the fabrication, delivery and installation of steel components such as piping systems and pressure vessels. Through SMC, which conducts business as SMC Infrastructure Solutions, the telecommunications infrastructure services segment provides project management, construction, installation and maintenance services to commercial, local government and federal government customers primarily in the Mid-Atlantic region of the U.S.

Basis of Presentation and Significant Accounting Policies

Basis of Presentation and Significant Accounting Policies

The Company’s fiscal year ends on January 31 of each year. The consolidated financial statements include the accounts of Argan, its wholly owned subsidiaries, a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023 (see Note 15). All significant intercompany balances and transactions have been eliminated in consolidation. In Note 17, the Company has provided certain financial information relating to the operating results and assets of its reportable segments based on the manner in which management disaggregates the Company’s financial reporting for purposes of making internal operating decisions.

Use of Estimates

Use of Estimates – The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, revenues, expenses, and certain financial statement disclosures.  Management believes that the estimates, judgments and assumptions upon which it relies are reasonable based upon information available to it at the time that these estimates, judgments and assumptions are made. Estimates are used for, but are not limited to, the Company’s accounting for revenues, the valuation of assets with long and indefinite lives including goodwill, the valuation of restricted stock units and options to purchase shares of the Company’s common stock, the evaluation of uncertain income tax return positions, the valuation of deferred taxes, and the determination of the allowance for doubtful accounts. Actual results could differ from these estimates.

Revenue Recognition

Revenue Recognition – The Company’s accounting for revenues on contracts with customers is based on a single comprehensive five-step model that requires reporting entities to:

1.Identify the contract,
2.Identify the performance obligations of the contract,
3.Determine the transaction price of the contract,
4.Allocate the transaction price to the performance obligations, and
5.Recognize revenue.

The Company focuses on the transfer of the contractor’s control of the goods and/or services to the customer. When a performance obligation is satisfied over time, the related revenues are recognized over time. The Company’s revenues are

recognized primarily under various types of long-term construction contracts, including those for which revenues are based on either a fixed-price or a time-and-materials basis, and primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer.

Revenues from fixed-price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. If, at any time, the estimate of contract profitability indicates an anticipated loss on a contract, the Company will recognize the total loss in the reporting period in which it is identified and the loss amount becomes estimable. Revenues from time-and-materials contracts are recognized when the related services are provided to the customer. For its time-and-materials contracts, the Company is generally able to elect the right-to-invoice practical expedient. This practical expedient permits the Company to recognize revenue equal to the value of the performance completed to date, provided that the Company has a right to invoice the customer.

Predominantly all of the Company’s fixed-price contracts are considered to have a single performance obligation. Although multiple promises to transfer individual goods or services may exist, they are not typically distinct within the context of such contracts because contract promises included therein are interrelated or the contracts require the Company to perform critical integration so that the customer receives a completed project. Warranties provided under the Company’s contracts with customers are assurance-type primarily and are recorded as the corresponding contract work is performed.

The transaction price for a customer contract represents the value of the contract awarded to the Company that is used to determine the amount of revenues recognized as of the balance sheet date. It may reflect amounts of variable consideration which could be either increases or decreases to the transaction price. These adjustments can be made from time-to-time during the period of contract performance as circumstances evolve related to such items as changes in the scope and price of contracts, claims, incentives and liquidated damages.

Variable Consideration

Amounts for unapproved change orders for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The effects of any revision to a transaction price can be determined at any time and they could be material. The Company also includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. Once a final amount has been determined, the transaction price may be revised again to reflect the final resolution.

Variations related to the Company’s contracts typically represent modifications to the existing contracts and performance obligations and do not represent new performance obligations. Actual costs related to any changes in the scope of the corresponding contract are expensed as they are incurred. Changes to total estimated contract costs and losses, if any, are reflected in operating results for the period in which they are determined.

The Company’s long-term contracts typically have schedule dates and other performance objectives that if not achieved could subject the Company to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by the achievement of a specified level of output or efficiency. Each applicable contract defines the conditions under which a project owner may be entitled to any liquidated damages. At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted from the transaction price as the Company believes that it has included activities in its contract plan, and the associated forecasted contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. The Company considers potential liquidated damages, the costs of other related items and potential mitigating factors in determining the adequacy of its regularly updated estimates of the amounts of gross profit expected to be earned on active projects.

In other cases, the Company may have the grounds to assert liquidated damages against subcontractors, suppliers, project owners or other parties related to a project. Such circumstances may arise when the Company’s activities and progress are adversely affected by delayed or damaged materials, challenges with equipment performance or other events out of the Company’s control where the Company has rights to recourse, typically in the form of liquidated damages. In general, the

Company does not adjust the corresponding contract accounting until it is probable that the favorable cost relief will be realized. Such adjustments have been and could be material.

The Company records adjustments to revenues and profits on contracts, including those associated with contract variations and estimated cost changes, using a cumulative catch-up method. Under this method, the impact of an adjustment to the amount of revenues recognized to date is recorded in the period that the adjustment is identified. Estimated variable consideration amounts are determined by the Company based primarily on the single most likely amount in the range of possible consideration amounts. Revenues and profits in future periods of contract performance are recognized using the adjusted amounts of transaction price and estimated contract costs.

Contract Assets and Liabilities

The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. Those rights are generally dependent upon advance billing terms, milestone billings based on the completion of certain phases of work or when services are performed. On most of our large contracts, milestone billings that occur early in the corresponding contract terms typically are made in advance of certain significant and related costs being incurred. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts.

The balances of the Company’s accounts receivable represent amounts billed to customers that have yet to be collected and represent an unconditional right to cash from its customers. Contract assets include amounts that represent the rights to receive payment for goods or services that have been transferred to the customer, with the rights conditional upon something other than the passage of time. Contract liabilities include amounts that reflect obligations to provide goods or services for which payment has been received.

Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. Retention amounts and the length of retention periods may vary. Retainage amounts related to active contracts are considered current regardless of the term of the applicable contract; such amounts are generally collected by the completion of the applicable contract.

Remaining Unsatisfied Performance Obligations

Substantially all of the Company’s customer contracts include the right for customers to terminate contracts for convenience. The value of future work that the Company is contractually obligated to perform pursuant to active customer contracts should not be included in remaining unsatisfied performance obligations (“RUPO”) when the corresponding contracts include termination for convenience clauses without substantial penalties accruing to the customers upon such terminations. Management assesses whether the nature of the work being performed under contract is largely service-based and repetitive and should be considered a succession of one-month contracts for the duration of the identified term of the contract. These types of arrangements do not qualify as RUPO. Predominantly, the Company’s customers contract with the Company to construct assets, to fabricate materials or to perform emergency maintenance or outage services where management believes substantial penalties or costs would be incurred upon a termination for convenience, including the costs of terminating subcontracts, canceling purchase orders and returning or otherwise disposing of delivered materials and equipment. The value of RUPO on customer contracts represents amounts based on contracts or orders received from customers that the Company believes are firm and where the parties are acting in accordance with their respective obligations. The cancellation or termination of contracts for the convenience of customers has not had a material adverse effect on the consolidated financial statements.

Cash Equivalents

Cash Equivalents – The Company considers all liquid investments with original maturities of three months or less at the time of purchase to be cash equivalents.

Available-For-Sale Securities

Available-For-Sale Securities – At each balance sheet date, available-for-sale (“AFS”) securities are stated at fair value with unrealized gains and losses, net of income taxes, presented as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, and realized gains and losses are included in other income, net, in the Company’s consolidated statements of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of AFS securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the AFS securities is reevaluated at each balance sheet date.

The Company evaluates whether a decline in the fair value of AFS securities below amortized cost basis is credit-related or due to other factors. If the Company intends to sell the AFS security or it is more likely than not that the Company would be required to sell the AFS security before recovery, impairment is recognized in earnings with a corresponding adjustment to the security’s amortized cost basis. If a portion of the unrealized loss is credit-related, the impairment is recorded as an allowance on the balance sheet with a corresponding adjustment to earnings. Credit recovery is recorded as an adjustment to the allowance and earnings in the period in which credit conditions improve.

Property, Plant and Equipment

Property, Plant and Equipment – Property, plant and equipment are stated at cost less accumulated depreciation. Such assets acquired in a business combination are initially included in the Company’s consolidated balance sheet at fair values. The Company capitalizes power plant project development costs incurred by consolidated variable interest entities. Depreciation amounts are determined using the straight-line method over the estimated useful lives of the assets, other than land, which are generally from five to thirty-nine years. Building and leasehold improvements are amortized on a straight-line basis over the shorter of the estimated useful life of the related asset or the lease term, as applicable. The costs of maintenance and repairs are expensed as incurred and major improvements are capitalized. When an asset is sold or retired, the cost and related accumulated depreciation amounts are removed from the accounts and the resulting gain or loss is included in earnings.

Goodwill

Goodwill – On November 1 of each year, the Company reviews the carrying value of goodwill amounts for impairment. The Company also evaluates amounts of goodwill for impairment at any time when events or changes in circumstances indicate that goodwill value may be impaired.

The Company identifies a potential impairment loss by comparing the fair value of a reporting unit with the reporting unit’s carrying amount, including goodwill. In the quantitative approach, the fair value of the reporting unit is estimated using various market-based and income-based valuation techniques as applicable in the particular circumstances. If the fair value of the reporting unit exceeds the related carrying amount, goodwill of the reporting unit is not deemed to be impaired. If the carrying amount of the reporting unit exceeds its fair value, a goodwill impairment loss is recorded in an amount equal to the excess of the unit’s carrying value over its fair value, not to exceed the amount of goodwill allocated to the reporting unit.

An alternative method allows the Company to first assess qualitative factors to decide whether it is necessary to perform the quantitative goodwill impairment test. It is not required to calculate the fair value of a reporting unit unless management concludes, based on a qualitative assessment, that it is more likely than not that its fair value may be less than the corresponding carrying amount. The professional guidance for this evaluation identifies the types of factors which the Company should consider in conducting the qualitative assessment including macroeconomic, industry, market and entity-specific factors.

Long-Lived Assets

Long-Lived Assets – Long-lived assets (other than goodwill), consisting primarily of intangible assets with definite lives, right-of-use assets, and property, plant and equipment, are subject to review for impairment whenever events or changes in circumstances indicate that a carrying amount should be assessed. In such circumstances, the Company would compare the carrying value of the long-lived asset to the undiscounted future cash flows expected to result from the use of the asset. In the event that the Company would determine that the carrying value of the asset is not recoverable, a loss would be recognized based on the amount by which the carrying value exceeds the fair value of the asset. Fair value would be determined by using quoted market prices or valuation techniques such as the present value of expected future cash flows, appraisals, or other pricing models as appropriate. The Company’s intangible assets with definite lives are amortized over their estimated useful lives using the straight-line method.

Leases

Leases – The Company determines whether a contract is a lease at the inception of the contract based on whether the contract provides the Company the right to control the use of a physically distinct asset or substantially all of the capacity of an asset. Operating lease right-of-use assets and associated lease liabilities are recorded in the balance sheet at the lease commencement date based on the present value of future minimum lease payments to be made over the expected lease term. As the implicit rate is not determinable in most of the Company’s leases, management uses the Company’s incremental borrowing rate at the commencement date in determining the present value of future payments. The expected lease term includes any option to extend or to terminate the lease when it is reasonably certain the Company will exercise such option.

The Company classifies as short-term leases any lease with an initial noncancellable term of twelve months or less that does not include an option to purchase the underlying asset that the Company is reasonably certain to exercise. Right-of-use assets and lease liabilities related to short-term leases are excluded from the consolidated balance sheets.

Under certain leases, the Company is obligated to pay property taxes, insurance, and maintenance costs. For leases that contain both lease and non-lease components, fixed and variable payments are allocated to each component relative to observable or estimated standalone prices.

Income Taxes

Income Taxes – Deferred taxes are recognized using enacted tax rates for the effects of temporary differences between the book and tax bases of assets and liabilities. If management believes that it is more likely than not that some portion or all of a deferred tax asset will not be realized, the carrying value will be reduced by a valuation allowance.

The Company accounts for uncertain tax positions in accordance with current accounting guidance which prescribes a recognition threshold and measurement attribute for financial statement disclosure of tax positions taken, or expected to be taken, on the income tax returns of the Company. Management evaluates and the Company records the effect of any uncertain tax position based on the amount that management deems is more likely than not (i.e., greater than a 50% probability) to be sustained upon examination and ultimate settlement with the tax authorities in the applicable tax jurisdiction.

Interest incurred related to overdue income taxes is included in income tax expense; franchise taxes and income tax penalties are included in selling, general and administrative expenses.

Share-Based Payments

Share-Based Payments – The Company measures and recognizes compensation expense for all stock-based awards granted to employees and directors based upon estimates of fair value determined at the grant date of the award. Forfeitures are recognized when they occur. Share-based compensation expense is included in selling, general and administrative expenses.

The Company estimates the weighted average fair value of stock options on the date of award using a Black-Scholes option pricing model. The Company believes that its past stock option exercise activity is sufficient to provide it with a reasonable basis upon which to estimate the expected life of newly awarded stock options. Risk-free interest rates are determined by blending the rates for three-to-five-year U.S. Treasury notes. The dividend yield is based on the Company’s current annual regular dividend amount. The calculations of the expected volatility factors are based on the monthly closing prices of the Company’s common stock for the five-year periods preceding the dates of the corresponding awards. The compensation expense for each stock option is recognized on a straight-line basis over the corresponding vesting period which is typically three years.

The fair value amounts for total stock return performance-based restricted stock units (“PRSUs”) are determined by using the per share market price of the common stock on the dates of award and by assigning equal probabilities to the thirteen possible payout outcomes at the end of each three-year term, and by computing the weighted average of the outcome amounts. For each award, the estimated fair value amount was calculated to be 88.5% of the aggregate market value of the target number (which is 50% of the maximum number) of shares on the award date. The fair value amounts of PRSUs are recorded to stock compensation expense using the straight-line method over the requisite service period, which is generally three years.

For earnings per share performance-based stock units (“ERSUs”) and renewable energy performance-based restricted stock units (“RRSUs”), the fair value of each award equals the aggregate market price for the number of shares that, as of the award date, are probable of vesting based on the performance conditions. For these stock-based awards with

performance conditions, compensation expense is recognized using the graded attribution method over the requisite service period when it is probable that the performance conditions will be satisfied.

For time-based restricted stock units (“TRSUs”), the fair value of each award equals the aggregate market price for the number of shares covered by each award on the date of award. TRSUs awarded by the Company are generally subject to a service-based vesting condition, which is generally three years. For these stock-based awards subject to service-based vesting conditions, the fair value amounts are recorded in stock compensation expense over the three-year contractual lapsing periods for the corresponding restrictions.

For each exercise of a stock option or each vesting of a restricted stock unit, the Company determines whether the difference between the deduction for income tax reporting purposes created at that time and the related compensation expense previously recorded for financial reporting purposes results in either an excess income tax benefit or an income tax deficiency which is recognized, accordingly, as income tax benefit or expense in the corresponding consolidated statement of earnings.

Fair Value of Financial Instruments

Fair Value of Financial Instruments – ASC Topic 820, Fair Value Measurement, establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and to minimize the use of unobservable inputs when measuring fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy prioritizes the inputs into three levels that may be used to measure fair value:

Level 1 – Inputs are unadjusted quoted prices in active markets for identical assets or liabilities.

Level 2 – Inputs are quoted prices for similar assets or liabilities in active markets; or quoted prices for identical or similar assets or liabilities in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.

Level 3 – Inputs are unobservable inputs based on a company’s own assumptions.

The carrying values presented in the consolidated balance sheets for the Company’s cash, certificates of deposit (“CD’s”), accounts receivable and contract assets, and the Company’s current liabilities are reasonable estimates of their fair values due to the short-term nature of these instruments.

Foreign Currency Translation

Foreign Currency Translation – The accompanying consolidated financial statements are presented in the currency of the United States (“U.S. Dollars”). The effects of translating the financial statements of APC from its functional currency (Euros) into the Company’s reporting currency (U.S. Dollars) are recognized as translation adjustments in accumulated other comprehensive loss. There are no applicable income taxes. The translation of assets and liabilities to U.S. Dollars is made at the exchange rate in effect at the consolidated balance sheet date, while equity accounts are translated at historical rates. The translation of the statement of earnings amounts is made monthly based generally on the average currency exchange rate for the month.

Foreign currency transactions are remeasured at current exchange rates, with adjustments recorded as foreign currency gains or losses. Net foreign currency gains and losses are included in other income, net, in the consolidated statements of earnings. For the years ended January 31, 2024 (“Fiscal 2024”), 2023 (“Fiscal 2023”) and 2022 (“Fiscal 2022”), such amounts were not material.

Treasury Stock

Treasury Stock – Treasury Stock is recorded using the cost method. Incremental direct costs to purchase treasury stock, including excise tax, are included in the cost of the shares acquired. The Company uses the average cost method to account for treasury stock. For shares of treasury stock provided for settlements or sold at a price higher than its cost, the gain is recorded to additional paid-in capital. For shares of treasury stock provided for settlements or sold at a price lower than its cost, the loss is recorded to additional paid-in capital to the extent there are previous net gains included in the account. Any losses in excess of that amount are recorded to retained earnings.

Net Income Per Share

Net Income Per Share – Basic net income per share is computed by dividing net income by the weighted average number of shares of common stock outstanding during the period. Diluted net income per share is computed similarly, however, the denominator is adjusted for the number of common stock equivalents that would have a dilutive effect using the treasury stock method. If a common stock equivalent is considered antidilutive, it is not included. Potentially dilutive common stock equivalents include stock options and restricted stock units.

RECENTLY ISSUED ACCOUNTING PRONOUNCEMENTS

RECENTLY ISSUED ACCOUNTING PRONOUNCEMENTS

In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method, which provides an election to account for tax equity investments using the proportional amortization method if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. Early adoption is permitted. The Company adopted this guidance using the modified retrospective approach on the first day of Fiscal 2024. As the Company’s investments in solar tax credit structures entered into prior to Fiscal 2024 do not qualify for the proportional amortization method permitted under this guidance, the Company’s financial statements were not impacted at the time of adoption. During Fiscal 2024, the Company made an equity investment in a solar tax credit structure that is eligible for the proportional amortization method (see Note 12).

In November 2023, the FASB issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures introducing key amendments to enhance disclosures in public entities’ reportable segments. Notable changes include the mandatory disclosure of significant segment expenses regularly provided to the chief operating decision maker (“CODM”), disclosure of other segment items, and requirements for consistency in reporting measures used by the CODM. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption ASU 2023-07 may have on its financial position, results of operations, cash flows, or disclosures.

In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which introduces more detailed requirements for annual disclosures for income taxes. The ASU requires public business entities to present specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 also requires all entities to disclose the amount of income taxes paid, net of refunds received, disaggregated by federal, state, and foreign jurisdiction. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-09 may have on its financial position, results of operations, cash flows, or disclosures.

There are no other recently issued accounting pronouncements that have not yet been adopted that the Company considers material to its consolidated financial statements.

XML 42 R27.htm IDEA: XBRL DOCUMENT v3.24.1.u1
REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)
12 Months Ended
Jan. 31, 2024
REVENUES FROM CONTRACTS WITH CUSTOMERS  
Schedule of consolidated revenues disaggregated by geographical area

2024

    

2023

    

2022

United States

$

334,244

$

328,850

$

456,211

Republic of Ireland

198,701

68,242

35,044

United Kingdom

 

40,388

 

57,948

 

17,521

Other

 

 

 

594

Consolidated Revenues

$

573,333

$

455,040

$

509,370

XML 43 R28.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)
12 Months Ended
Jan. 31, 2024
CASH, CASH EQUIVALENTS AND INVESTMENTS  
Investments

2024

    

2023

Short-term investments

$

109,489

$

151,511

Available-for-sale securities

105,884

Total investments

$

215,373

$

151,511

Schedule of available-for-sale securities

January 31, 2024

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due in one to two years

$

50,634

$

$

305

$

102

$

50,837

Due in two to three years

45,583

263

128

45,718

U.S. corporate debt security:

Due in two to three years

9,406

77

9,329

Totals

$

105,623

$

$

568

$

307

$

105,884

XML 44 R29.htm IDEA: XBRL DOCUMENT v3.24.1.u1
FAIR VALUE MEASUREMENTS (Tables)
12 Months Ended
Jan. 31, 2024
FAIR VALUE MEASUREMENTS  
Schedule of financial instruments recorded at fair value on a recurring basis

January 31, 2024

January 31, 2023

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Cash equivalents:

Money market fund

$

126,646

$

$

$

68,647

$

$

Available-for-sale securities:

U.S. Treasury notes

96,555

U.S. corporate debt security

9,329

Totals

$

126,646

$

105,884

$

$

68,647

$

$

XML 45 R30.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INTANGIBLE ASSETS (Tables)
12 Months Ended
Jan. 31, 2024
INTANGIBLE ASSETS  
Schedule of changes in the balances of goodwill

    

Power

Industrial

Telecom

Services

    

Services

    

Services

    

Totals

Goodwill as of February 1, 2022

$

18,476

$

9,467

$

90

$

28,033

Impairment losses

Goodwill as of January 31, 2023

18,476

9,467

90

28,033

Impairment losses

Goodwill as of January 31, 2024

$

18,476

$

9,467

$

90

$

28,033

Balances, January 31, 2024:

Goodwill

$

22,525

$

14,365

$

90

$

36,980

Accumulated impairment losses

 

(4,049)

 

(4,898)

 

 

(8,947)

Goodwill as of January 31, 2024

$

18,476

$

9,467

$

90

$

28,033

Schedule of company's purchased intangible assets, other than goodwill

January 31, 2024

January 31, 2023

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade name

15 years

$

4,499

$

2,450

$

2,049

$

4,499

$

2,150

$

2,349

Customer relationships

10 years

916

748

168

916

656

260

Totals

$

5,415

$

3,198

$

2,217

$

5,415

$

2,806

$

2,609

Schedule of expected amortization expense

2025

    

$

392

2026

 

375

2027

 

300

2028

 

300

2029

300

Thereafter

 

550

Total

$

2,217

XML 46 R31.htm IDEA: XBRL DOCUMENT v3.24.1.u1
PROPERTY, PLANT AND EQUIPMENT, NET (Tables)
12 Months Ended
Jan. 31, 2024
PROPERTY, PLANT AND EQUIPMENT, NET.  
Summary of property, plant and equipment

    

2024

    

2023

Land and improvements

$

863

$

863

Building and improvements

 

7,910

 

7,558

Furniture, machinery and equipment

 

17,938

 

17,219

Trucks, trailers and other vehicles

 

5,902

 

6,042

 

32,613

 

31,682

Less - accumulated depreciation

 

21,592

 

21,252

Property, plant and equipment, net

$

11,021

$

10,430

Schedule of property, plant and equipment, net, disaggregated by geographic area

    

2024

    

2023

United States

$

8,898

$

8,522

Republic of Ireland

 

1,836

 

1,614

United Kingdom

 

287

 

294

Property, plant and equipment, net

$

11,021

$

10,430

XML 47 R32.htm IDEA: XBRL DOCUMENT v3.24.1.u1
COMMITMENTS (Tables)
12 Months Ended
Jan. 31, 2024
COMMITMENTS  
Schedule of future minimum lease payments for the operating leases

The following is a schedule of future minimum lease payments for the operating leases that were recognized in the consolidated balance sheet as of January 31, 2024 for the years ending January 31:

2025

    

$

2,823

2026

1,461

2027

275

2028

221

2029

213

Thereafter

625

Total lease payments

5,618

Less imputed interest

300

Present value of lease payments

5,318

Less current portion (included in accrued expenses)

2,726

Noncurrent portion (included in noncurrent liabilities)

$

2,592

Schedule of Lease Term and Discount Rates of Operating Leases of Lessee

2024

    

2023

    

Weighted average remaining lease term

41 months

58 months

Weighted average discount rate

5.2

%

3.7

%

XML 48 R33.htm IDEA: XBRL DOCUMENT v3.24.1.u1
STOCK-BASED COMPENSATION (Tables)
12 Months Ended
Jan. 31, 2024
STOCK-BASED COMPENSATION  
Schedule of stock option activity under the Company's stock plans

Weighted-

Average

Weighted-

Weighted-

Remaining

Average

Average Exercise

Contractual

Grant-Date

    

Shares

    

Price

    

Term (years)

    

Fair Value

Outstanding, January 31, 2023

 

1,440

$

43.84

 

5.46

$

10.11

Granted

21

$

41.64

Exercised

(94)

$

27.42

Forfeited

(2)

$

33.81

Outstanding, January 31, 2024

1,365

$

44.95

 

4.67

$

10.43

Exercisable, January 31, 2024

1,273

$

45.33

 

4.40

$

10.61

Vested or expected to vest, January 31, 2024

 

1,365

$

44.95

 

4.67

$

10.43

Schedule of changes in the number of non-vested options to purchase shares of common stock

    

Weighted-

Average

Grant-Date

Shares

    

Fair Value

Non-vested, January 31, 2023

 

194

$

7.27

Granted

 

21

$

8.65

Vested

 

(122)

$

7.31

Forfeited

(1)

$

5.68

Non-vested, January 31, 2024

 

92

$

7.85

Schedule of changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units

The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for Fiscal 2024 are presented below (shares in thousands):

    

Weighted-

Average

Grant-Date

Shares

Fair Value

Outstanding, January 31, 2023

310

$

30.80

Awarded

129

$

30.46

Issued

(42)

$

43.80

Forfeited

(49)

$

15.57

Outstanding, January 31, 2024

348

$

30.21

XML 49 R34.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES (Tables)
12 Months Ended
Jan. 31, 2024
INCOME TAXES  
Schedule of components of company's income tax (expense) benefit

    

2024

    

2023

    

2022

Current:

Federal

$

10,870

$

12,776

$

10,921

State

 

1,835

 

1,012

 

643

Foreign

2,537

740

 

15,242

 

14,528

 

11,564

Deferred:

Federal

 

(923)

 

(803)

 

(341)

State

 

301

 

23

 

133

Foreign

1,955

(2,452)

 

1,333

 

(3,232)

 

(208)

Income tax expense

$

16,575

$

11,296

$

11,356

Schedule of actual income tax expense amounts

2024

    

2023

    

2022

Computed expected income tax expense

$

10,276

$

9,660

$

9,883

Difference resulting from:

Unrecognized tax loss benefit

3,858

Foreign tax rate differential

(2,294)

(441)

(352)

State income taxes, net of federal tax effect

 

1,688

 

860

 

614

Excess executive compensation

1,040

1,397

1,296

Adjustment to valuation for foreign NOLs

2,083

(2,574)

Net benefit related to Solar Tax Credit investments

(646)

Meals and entertainment expense

626

83

58

Research and development tax credits adjustment

6,181

Recognition of research and development tax credit benefits

(3,430)

Other permanent differences and adjustments, net

(56)

(440)

 

(143)

Income tax expense

$

16,575

$

11,296

$

11,356

Schedule of unrecognized tax benefits

    

2024

    

2023

    

2022

Unrecognized income tax benefits, beginning of fiscal year

$

2,882

$

4,937

$

4,895

Increases related to prior period income tax positions

 

78

 

 

42

Increases related to current period income tax positions

 

2,359

 

Expirations of statutes of limitations

 

(407)

 

 

Settlements

 

 

(4,414)

 

Unrecognized income tax benefits, end of fiscal year

$

2,553

$

2,882

$

4,937

Schedule of tax effects of temporary differences that gave rise to deferred tax assets and liabilities

    

2024

    

2023

Assets:

Net operating loss carryforwards

$

19,772

$

13,964

Stock awards

2,726

2,726

Accrued expenses

1,955

1,480

Lease liabilities

1,383

1,189

Research and development costs deferral

1,622

1,015

Research and development credit carryforwards

269

Other

 

148

 

337

 

27,606

 

20,980

Liabilities:

Intangibles

(3,819)

(3,674)

Property and equipment

 

(893)

 

(1,033)

Construction contracts

 

(839)

 

(1,229)

Right-of-use assets

(1,378)

(1,184)

Other

(619)

(431)

 

(7,548)

 

(7,551)

Valuation allowances

(17,799)

(9,740)

Deferred tax assets, net

$

2,259

$

3,689

XML 50 R35.htm IDEA: XBRL DOCUMENT v3.24.1.u1
NET INCOME PER SHARE (Tables)
12 Months Ended
Jan. 31, 2024
NET INCOME PER SHARE  
Schedule of computations of basic and diluted net income per share

2024

    

2023

    

2022

Net income

$

32,358

$

33,098

$

38,244

Weighted average number of shares outstanding – basic

13,365

14,083

15,715

Effect of stock awards (1)

183

93

198

Weighted average number of shares outstanding – diluted

13,548

14,176

15,913

Net income per share attributable to the stockholders of Argan, Inc.

Basic

$

2.42

$

2.35

$

2.43

Diluted

$

2.39

$

2.33

$

2.40

(1)For Fiscal 2024, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options and restricted stock units covering an aggregate of 685,334, 978,834 and 570,167 shares of common stock, respectively. The options had exercise prices per share in excess of the average market price per share for the applicable year.  
XML 51 R36.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SEGMENT REPORTING (Tables)
12 Months Ended
Jan. 31, 2024
SEGMENT REPORTING  
Schedule of operating results and financial position data of the Company's reportable business segments

Year Ended

Power

Industrial

Telecom

January 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

416,281

$

142,801

$

14,251

$

$

573,333

Cost of revenues

 

357,705

 

124,321

 

10,473

 

 

492,499

Gross profit

 

58,576

 

18,480

 

3,778

 

 

80,834

Selling, general and administrative expenses

 

24,274

6,440

2,469

11,193

44,376

Income (loss) from operations

34,302

12,040

1,309

(11,193)

36,458

Other income (loss), net

 

13,871

 

 

(3)

 

(1,393)

 

12,475

Income (loss) before income taxes

$

48,173

$

12,040

$

1,306

$

(12,586)

 

48,933

Income tax expense

 

16,575

Net income

$

32,358

Amortization of intangibles

$

$

392

$

$

$

392

Depreciation

527

1,073

409

4

2,013

Property, plant and equipment additions

1,266

1,014

473

3

2,756

Current assets

$

383,508

$

59,123

$

3,872

$

100,676

$

547,179

Current liabilities

256,975

41,869

1,591

1,825

302,260

Goodwill

18,476

9,467

90

28,033

Total assets

411,571

76,012

6,703

103,943

598,229

Year Ended

Power

Industrial

Telecom

January 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

346,033

$

92,774

$

16,233

$

$

455,040

Cost of revenues

 

277,402

 

78,034

 

13,243

 

 

368,679

Gross profit

 

68,631

 

14,740

 

2,990

 

 

86,361

Selling, general and administrative expenses

 

22,635

7,900

3,353

10,804

44,692

Income (loss) from operations

45,996

6,840

(363)

(10,804)

41,669

Other income, net

 

3,829

 

 

3

 

499

 

4,331

Income (loss) before income taxes

$

49,825

$

6,840

$

(360)

$

(10,305)

 

46,000

Income tax expense

 

11,296

Net income

$

34,704

Amortization of intangibles

$

$

618

$

114

$

$

732

Depreciation

567

1,978

434

4

2,983

Property, plant and equipment additions

1,450

1,717

189

16

3,372

Current assets

$

307,742

$

42,488

$

3,900

$

84,572

$

438,702

Current liabilities

170,164

29,550

1,317

1,472

202,503

Goodwill

18,476

9,467

90

28,033

Total assets

334,593

60,038

7,153

87,703

489,487

Year Ended

Power

Industrial

Telecom

January 31, 2022

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

398,089

$

97,890

$

13,391

$

$

509,370

Cost of revenues

 

317,130

 

81,391

 

11,117

 

 

409,638

Gross profit

 

80,959

 

16,499

 

2,274

 

 

99,732

Selling, general and administrative expenses

 

28,323

8,167

2,146

8,685

 

47,321

Impairment losses

7,901

7,901

Income (loss) from operations

 

44,735

8,332

128

(8,685)

44,510

Other income, net

 

2,545

 

 

 

7

 

2,552

Income (loss) before income taxes

$

47,280

$

8,332

$

128

$

(8,678)

 

47,062

Income tax expense

 

11,356

Net income

$

35,706

Amortization of intangibles

$

208

$

662

$

$

$

870

Depreciation

605

2,325

433

4

3,367

Property, plant and equipment additions

713

107

597

5

1,422

Current assets

$

322,448

$

25,681

$

2,957

$

156,198

$

507,284

Current liabilities

209,829

9,534

1,916

1,748

223,027

Goodwill

18,476

9,467

90

28,033

Total assets

345,956

44,002

6,741

156,886

553,585

XML 52 R37.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)
12 Months Ended
Jan. 31, 2024
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION  
Schedule of other current assets

2024

    

2023

Income tax refunds receivable and prepaid income taxes

$

18,267

$

15,327

Raw materials inventory

9,985

11,903

Prepaid expenses

 

6,035

 

4,541

Other

4,972

6,563

Total other current assets

$

39,259

$

38,334

Schedule of accrued expenses

2024

    

2023

Accrued project costs

$

49,135

$

17,448

Accrued compensation

21,206

18,286

Lease liabilities

2,726

1,567

Other

8,654

12,566

Total accrued expenses

$

81,721

$

49,867

XML 53 R38.htm IDEA: XBRL DOCUMENT v3.24.1.u1
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Details)
12 Months Ended
Jan. 31, 2024
Description of the Business  
Operating leases, options to extend true
Operating leases, options to terminate true
Period used for calculations 5 years
Percentage reduction in the aggregate fair value of stock option 88.50%
StockPlanMember | Performance-based restricted stock units | Stock Plan  
Description of the Business  
Period to become exercisable 3 years
Percentage of the maximum shares for the target number of shares awarded 50.00%
Minimum  
Description of the Business  
Estimated useful lives of the assets 5 years
Period used for calculations 3 years
Maximum  
Description of the Business  
Estimated useful lives of the assets 39 years
Period used for calculations 5 years
XML 54 R39.htm IDEA: XBRL DOCUMENT v3.24.1.u1
REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Disaggregation of Revenues      
Consolidated Revenues $ 573,333 $ 455,040 $ 509,370
United States      
Disaggregation of Revenues      
Consolidated Revenues 334,244 328,850 456,211
Republic of Ireland      
Disaggregation of Revenues      
Consolidated Revenues 198,701 68,242 35,044
United Kingdom      
Disaggregation of Revenues      
Consolidated Revenues $ 40,388 $ 57,948 17,521
Other      
Disaggregation of Revenues      
Consolidated Revenues     $ 594
XML 55 R40.htm IDEA: XBRL DOCUMENT v3.24.1.u1
REVENUES FROM CONTRACTS WITH CUSTOMERS (Details) - USD ($)
$ in Millions
6 Months Ended 12 Months Ended
Jan. 31, 2024
Jan. 31, 2024
Jan. 31, 2023
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Contract Liabilities   $ 95.5 $ 131.0
Retained amounts by project owners $ 21.2 $ 21.2 $ 49.1
Amounts of unpriced change orders included in transaction prices 8.4 8.4 11.6
Kilroot Project | APC      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Estimated loss $ 10.0    
Estimated loss, including reversal of net gross profit   $ 13.6  
XML 56 R41.htm IDEA: XBRL DOCUMENT v3.24.1.u1
REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details) - Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-02-01
$ in Billions
Jan. 31, 2024
USD ($)
REVENUES FROM CONTRACTS WITH CUSTOMERS  
Contract backlog amount $ 0.7
Performance period 3 years
Contract backlog (as percent) 69.00%
XML 57 R42.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) - USD ($)
$ in Millions
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Cash and Cash Equivalents    
Accrued dividends $ 0.7 $ 0.3
Held-to-maturity Securities    
Cash and Cash Equivalents    
Maturity period 1 year  
Weighted average annual interest rates of CDs (as a percent) 5.40% 2.50%
Accrued interest $ 4.5 $ 1.8
XML 58 R43.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
CASH, CASH EQUIVALENTS AND INVESTMENTS    
Short-term investments $ 109,489 $ 151,511
Available-for-sale securities 105,884  
Total investments $ 215,373 $ 151,511
XML 59 R44.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details)
$ in Thousands
12 Months Ended
Jan. 31, 2024
USD ($)
Cash and Cash Equivalents  
Interest receivable $ 1,300
Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current, Statement of Financial Position [Extensible Enumeration] Investments
Net unrealized holding losses for the Company's AFS securities $ 200
Proceeds from sale of debt securities, available-for-sale 0
Amounts of gains or losses reclassified out of other comprehensive income 0
Available-for-sale securities  
Amortized Cost 105,623
Gross Unrealized Gains 568
Gross Unrealized Losses 307
Fair Value 105,884
US Treasury notes  
Available-for-sale securities  
Amortized cost, Due in one to two years 50,634
Amortized Cost, Due in two to three years 45,583
Gross Unrealized Gains, Due in one to two years 305
Gross Unrealized Gains, Due in two to three years 263
Gross Unrealized Losses, Due in one to two years 102
Gross Unrealized Losses, Due in two to three years 128
Fair Value, Due in one to two years 50,837
Fair Value, Due in two to three years 45,718
U.S. corporate debt security  
Available-for-sale securities  
Amortized Cost, Due in two to three years 9,406
Gross Unrealized Losses, Due in two to three years 77
Fair Value, Due in two to three years $ 9,329
Minimum  
Cash and Cash Equivalents  
Available-for-sale securities term 2 years
Maximum  
Cash and Cash Equivalents  
Available-for-sale securities term 3 years
XML 60 R45.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Invested Funds (Details) - USD ($)
$ in Millions
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
CASH, CASH EQUIVALENTS AND INVESTMENTS      
Earnings on invested funds $ 14.1 $ 3.4 $ 3.0
XML 61 R46.htm IDEA: XBRL DOCUMENT v3.24.1.u1
FAIR VALUE MEASUREMENTS - Financial Instruments on a Recurring Basis (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Available-for-sale securities $ 105,884  
Level 1 Inputs | Fair value, recurring    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Totals 126,646 $ 68,647
Level 1 Inputs | Fair value, recurring | Money market funds    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Cash and cash equivalents 126,646 $ 68,647
Level 2 Inputs | Fair value, recurring    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Totals 105,884  
Level 2 Inputs | Fair value, recurring | U.S. Treasury notes    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Available-for-sale securities 96,555  
Level 2 Inputs | Fair value, recurring | U.S. corporate debt security    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Available-for-sale securities $ 9,329  
XML 62 R47.htm IDEA: XBRL DOCUMENT v3.24.1.u1
ACCOUNTS RECEIVABLE (Details) - USD ($)
$ in Millions
12 Months Ended
Jan. 31, 2022
Jan. 31, 2024
Jan. 31, 2023
ACCOUNTS RECEIVABLE      
Provision for credit losses $ 2.4    
Allowance for uncollectible accounts   $ 1.8 $ 1.9
XML 63 R48.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INTANGIBLE ASSETS - Changes in the Balances of Goodwill (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2022
Jan. 31, 2024
Jan. 31, 2023
Change in goodwill      
Impairment losses $ (7,901)    
Goodwill, Ending Balance 28,033    
Components of goodwill      
Goodwill   $ 36,980  
Accumulated impairment losses   (8,947)  
Goodwill, net 28,033 28,033 $ 28,033
Power Services      
Change in goodwill      
Goodwill, Ending Balance 18,476    
Components of goodwill      
Goodwill   22,525  
Accumulated impairment losses   (4,049)  
Goodwill, net 18,476 18,476 18,476
Industrial Services      
Change in goodwill      
Goodwill, Ending Balance 9,467    
Components of goodwill      
Goodwill   14,365  
Accumulated impairment losses   (4,898)  
Goodwill, net 9,467 9,467 9,467
Telecom Services      
Change in goodwill      
Goodwill, Ending Balance 90    
Components of goodwill      
Goodwill   90  
Goodwill, net $ 90 $ 90 $ 90
XML 64 R49.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INTANGIBLE ASSETS - Components of Intangible Assets (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
Finite-Lived Intangible Assets [Line Items]    
Gross Amounts $ 5,415 $ 5,415
Accumulated Amortization 3,198 2,806
Net Amounts $ 2,217 2,609
Trade name    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life (in years) 15 years  
Gross Amounts $ 4,499 4,499
Accumulated Amortization 2,450 2,150
Net Amounts $ 2,049 2,349
Customer relationships    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life (in years) 10 years  
Gross Amounts $ 916 916
Accumulated Amortization 748 656
Net Amounts $ 168 $ 260
XML 65 R50.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INTANGIBLE ASSETS - Finite Lived Intangible Future Amortization Schedule (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
INTANGIBLE ASSETS    
2025 $ 392  
2026 375  
2027 300  
2028 300  
2029 300  
Thereafter 550  
Net Amounts $ 2,217 $ 2,609
XML 66 R51.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INTANGIBLE ASSETS - Additional Information - (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Indefinite-Lived Intangible Assets      
Payment for acquisition     $ 600
Period of amortization of goodwill for income tax purpose 15 years    
Goodwill allocated for income tax reporting purposes $ 16,500    
Goodwill 28,033 $ 28,033 28,033
Additions to other intangible assets 0 0  
Additions to impairment losses 0 0 0
Amortization of intangibles $ 392 $ 732 870
LTI      
Indefinite-Lived Intangible Assets      
Payment for acquisition     $ 600
XML 67 R52.htm IDEA: XBRL DOCUMENT v3.24.1.u1
PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
Property, plant and equipment, net    
Property and equipment, gross $ 32,613 $ 31,682
Less - accumulated depreciation 21,592 21,252
Property, plant and equipment, net 11,021 10,430
Land and improvements    
Property, plant and equipment, net    
Property and equipment, gross 863 863
Building and improvements    
Property, plant and equipment, net    
Property and equipment, gross 7,910 7,558
Furniture, machinery and equipment    
Property, plant and equipment, net    
Property and equipment, gross 17,938 17,219
Trucks, trailers and other vehicles    
Property, plant and equipment, net    
Property and equipment, gross $ 5,902 $ 6,042
XML 68 R53.htm IDEA: XBRL DOCUMENT v3.24.1.u1
PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment by Geographic Area (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
Property, plant and equipment, net    
Property, plant and equipment, net $ 11,021 $ 10,430
United States    
Property, plant and equipment, net    
Property, plant and equipment, net 8,898 8,522
Republic of Ireland    
Property, plant and equipment, net    
Property, plant and equipment, net 1,836 1,614
United Kingdom    
Property, plant and equipment, net    
Property, plant and equipment, net $ 287 $ 294
XML 69 R54.htm IDEA: XBRL DOCUMENT v3.24.1.u1
PROPERTY, PLANT AND EQUIPMENT, NET - Depreciation Expense and Cost of Maintenance and Repairs (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
PROPERTY, PLANT AND EQUIPMENT, NET.      
Depreciation $ 2,013 $ 2,983 $ 3,367
Costs of maintenance and repairs $ 1,600 $ 2,400 $ 2,100
XML 70 R55.htm IDEA: XBRL DOCUMENT v3.24.1.u1
FINANCING ARRANGEMENTS (Details) - USD ($)
$ in Millions
Mar. 06, 2023
Jan. 31, 2024
Jan. 31, 2023
Revolving Credit Facility      
Financing Arrangements      
Additional commitment amount $ 10.0    
Revolving Credit Facility | Secured Overnight Financing Rate (SOFR)      
Financing Arrangements      
Interest rate margin on referred rate 1.60%    
Revolving Credit Facility | Expires on May 31, 2024      
Financing Arrangements      
Borrowing available under financing arrangements $ 50.0    
Letter of Credit      
Financing Arrangements      
Letters of credit outstanding amount   $ 9.3 $ 8.8
XML 71 R56.htm IDEA: XBRL DOCUMENT v3.24.1.u1
COMMITMENTS - Leases (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Operating leases, options to extend true    
Operating leases, options to terminate true    
Operating lease, right-of-use assets $ 5,300 $ 4,800  
Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration] Operating Lease Right Of Use Asset, and Other Assets Operating Lease Right Of Use Asset, and Other Assets  
Operating lease expense $ 1,906 $ 2,554 $ 3,391
Weighted average lease term 41 months 58 months  
Weighted average discount rate 5.20% 3.70%  
Unsatisfied bonded performance obligations $ 500,000    
GPS | Financial guarantee      
Guarantor obligation maximum exposure 3,600    
Costs of Revenues [Member]      
Short-term rentals expense $ 9,500 $ 11,300 $ 9,600
XML 72 R57.htm IDEA: XBRL DOCUMENT v3.24.1.u1
COMMITMENTS - Future minimum lease payments (Details)
$ in Thousands
Jan. 31, 2024
USD ($)
Operating Leases  
2025 $ 2,823
2026 1,461
2027 275
2028 221
2029 213
Thereafter 625
Total lease payments 5,618
Less imputed interest 300
Present value of lease payments 5,318
Less current portion (included in accrued expenses) $ 2,726
Less current portion (included in accrued expenses) Accrued expenses
Non-current portion (included in noncurrent liabilities) $ 2,592
Non-current portion (included in noncurrent liabilities) Noncurrent liabilities
XML 73 R58.htm IDEA: XBRL DOCUMENT v3.24.1.u1
COMMITMENTS - Warranties (Details)
12 Months Ended
Jan. 31, 2024
Minimum  
Warranty period P9M
Maximum  
Warranty period twenty-four months
XML 74 R59.htm IDEA: XBRL DOCUMENT v3.24.1.u1
COMMITMENTS - Employee Benefit Plans (Details) - USD ($)
$ in Millions
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Employee Benefit Plans      
Company's expense for defined contribution savings plans $ 2.9 $ 2.7 $ 2.3
Minimum      
Employee Benefit Plans      
Deferred period 4 years    
Maximum      
Employee Benefit Plans      
Deferred period 7 years    
XML 75 R60.htm IDEA: XBRL DOCUMENT v3.24.1.u1
LEGAL CONTINGENCIES (Details)
$ in Millions
1 Months Ended
Sep. 30, 2021
USD ($)
GPS  
Loss Contingencies  
Payments for legal settlements $ 27.5
XML 76 R61.htm IDEA: XBRL DOCUMENT v3.24.1.u1
STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details) - USD ($)
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
STOCK-BASED COMPENSATION      
Shares, Outstanding, Beginning balance 1,440,000    
Shares, Granted 21,000 67,000 73,000
Shares, Exercised (94,000)    
Shares, Forfeited (2,000)    
Shares, Outstanding, Ending balance 1,365,000 1,440,000  
Shares, Exercisable 1,273,000    
Shares, Vested or expected to vest 1,365,000    
Weighted Average Exercise Price Per Share, Outstanding, Beginning balance $ 43.84    
Weighted Average Exercise Price Per Share, Granted 41.64    
Weighted Average Exercise Price Per Share, Exercised 27.42    
Weighted Average Exercise Price Per Share, Forfeited 33.81    
Weighted Average Exercise Price Per Share, Outstanding, Ending balance 44.95 $ 43.84  
Weighted Average Exercise Price Per Share, Exercisable 45.33    
Weighted Average Exercise Price Per Share, Vested or expected to vest $ 44.95    
Weighted Average Remaining Contractual Term (Years), Outstanding 4 years 8 months 1 day 5 years 5 months 15 days  
Weighted Average Remaining Contractual Term (Years), Exercisable 4 years 4 months 24 days    
Weighted Average Remaining Contractual Term (Years), Vested or expected to vest 4 years 8 months 1 day    
Weighted Average Grant Date Fair Value Per Share, Outstanding $ 10.43 $ 10.11  
Weighted Average Grant Date Fair Value Per Share, Exercisable $ 10.61    
Weighted Average Grant Date Fair Value Per Share, Vested or expected to vest $ 10.43    
XML 77 R62.htm IDEA: XBRL DOCUMENT v3.24.1.u1
STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details) - $ / shares
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
STOCK-BASED COMPENSATION      
Shares, Non-vested, Beginning balance 194,000    
Shares, Granted 21,000 67,000 73,000
Shares, Vested (122,000)    
Shares, Forfeitures (1,000)    
Shares, Non-vested, Ending balance 92,000 194,000  
Shares, Non-vested 92,000 194,000  
Weighted Average Grant Date Fair Value Per Share, Non-vested, Beginning balance $ 7.27    
Weighted Average Grant Date Fair Value Per Share, Granted 8.65 $ 8.54 $ 7.19
Weighted Average Grant Date Fair Value Per Share, Vested 7.31    
Weighted Average Grant Date Fair Value Per Share, Forfeitures 5.68    
Weighted Average Grant Date Fair Value Per Share, Non-vested, Ending balance 7.85 7.27  
Weighted Average Grant Date Fair Value Per Share, Non-vested $ 7.85 $ 7.27  
XML 78 R63.htm IDEA: XBRL DOCUMENT v3.24.1.u1
STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details) - Restricted Stock Units - USD ($)
$ / shares in Units, $ in Millions
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Shares      
Outstanding, Beginning balance (in shares) 310    
Awarded (in shares) 129 146,871 145,721
Issued (in shares) (42)    
Forfeited (in shares) (49)    
Outstanding, Ending balance (in shares) 348 310  
Outstanding (in shares) 348 310  
Weighted Average Grant Date Fair Value Per Share      
Outstanding, Beginning balance Fair value (Per share) $ 30.80    
Awarded, Fair value (Per share) 30.46 $ 29.26 $ 39.52
Issued, Fair value (Per share) 43.80    
Forfeited, Fair value (Per share) 15.57    
Outstanding, Ending balance Fair value (Per share) $ 30.21 $ 30.80  
Total fair values $ 1.8 $ 0.9 $ 0.8
XML 79 R64.htm IDEA: XBRL DOCUMENT v3.24.1.u1
STOCK-BASED COMPENSATION - Additional Information (Details) - USD ($)
$ / shares in Units, $ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Jun. 20, 2023
Jun. 23, 2020
Share-based Compensation Arrangement by Share-based Payment Award          
Cash dividends deemed paid on shares 1,492        
Stock compensation expense $ 4,455 $ 3,958 $ 3,459    
Unrecognized compensation cost $ 6,000        
Compensation expense recognize, period 3 years        
Shares, Granted 21,000 67,000 73,000    
Weighted Average Grant Date Fair Value Per Share, Granted $ 8.65 $ 8.54 $ 7.19    
Intrinsic value of the stock options exercised $ 1,500   $ 600    
Intrinsic value of outstanding stock options 5,600        
Intrinsic value of exercisable stock options $ 5,100        
2020 Plan          
Share-based Compensation Arrangement by Share-based Payment Award          
Number of shares of common stock reserved for issuance       500,000 500,000
Employee Stock Option [Member]          
Share-based Compensation Arrangement by Share-based Payment Award          
Initial vesting percentage 33.33%        
Period to become exercisable 3 years        
Number of shares of common stock reserved for issuance 2,256,062        
Number of shares of common stock available for award 543,087        
Performance-based restricted stock units          
Share-based Compensation Arrangement by Share-based Payment Award          
The number of shares issuable under restricted stock units awarded during the period 6,000        
Earnings per share performance-based restricted stock units          
Share-based Compensation Arrangement by Share-based Payment Award          
The number of shares issuable under restricted stock units awarded during the period 15,000        
ISOs/NSOs | Stock Plan          
Share-based Compensation Arrangement by Share-based Payment Award          
Incentive stock option award maximum expiration period 10 years        
Restricted Stock Units          
Share-based Compensation Arrangement by Share-based Payment Award          
Incentive stock option award maximum expiration period 3 years        
Renewable Performance-Based Restricted Stock Units          
Share-based Compensation Arrangement by Share-based Payment Award          
The number of shares issuable under restricted stock units awarded during the period 7,500        
Time Based Restricted Stock Units          
Share-based Compensation Arrangement by Share-based Payment Award          
The number of shares issuable under restricted stock units awarded during the period 77,800        
Senior executives | Performance-based restricted stock units | Stock Plan          
Share-based Compensation Arrangement by Share-based Payment Award          
Period to become exercisable 3 years        
Percentage of the maximum shares for the target number of shares awarded 50.00%        
XML 80 R65.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES - Components of Company's Income Tax Expense (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Current:      
Federal $ 10,870 $ 12,776 $ 10,921
State 1,835 1,012 643
Foreign 2,537 740  
Total 15,242 14,528 11,564
Deferred:      
Federal (923) (803) (341)
State 301 23 133
Foreign 1,955 (2,452)  
Total 1,333 (3,232) (208)
Income tax expense $ 16,575 $ 11,296 $ 11,356
XML 81 R66.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES - Income Tax Expense Reconciliation (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
INCOME TAXES      
Federal corporate income tax rate (as percent) 21.00% 21.00% 21.00%
Computed expected income tax expense $ 10,276 $ 9,660 $ 9,883
Unrecognized tax loss benefit 3,858    
Foreign tax rate differential (2,294) (441) (352)
State income taxes, net of federal tax effect 1,688 860 614
Excess executive compensation 1,040 1,397 1,296
Adjustment to valuation for foreign NOLs 2,083 (2,574)  
Net benefit related to Solar Tax Credit investments (646)    
Meals and entertainment expense 626 83 58
Research and development credits adjustment   6,181  
Recognition of research and development credit benefits (see discussion below)   (3,430)  
Other permanent differences and adjustments, net (56) (440) (143)
Income tax expense $ 16,575 $ 11,296 $ 11,356
XML 82 R67.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES - Net Operating Loss Carryback (Details)
$ in Millions
12 Months Ended
Jan. 31, 2024
USD ($)
INCOME TAXES  
Increase in loss carryback period for certain losses 5 years
Domestic net operating loss carryback $ 39.5
Income tax receivable $ 12.7
XML 83 R68.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES - Research and Development Tax Credits (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
INCOME TAXES    
Prior period for identify and quantify the amounts of research and development credits 3 years  
Research and development tax credit benefit $ 16,200  
Federal research and development tax credits 5,800  
Income tax expense (benefits) associated with research and development activities   $ (3,430)
Contract Assets 4,400  
Deferred Tax Assets, Operating Loss Carryforwards, Foreign 13,800  
Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount 2,100 2,600
Unrecognized income tax benefits related to research and development credits 5,000  
Settlement offer from the IRS 7,900  
Unfavorable tax expense adjustment 6,200  
Development tax credit   2,400
Income tax refunds and prepaid income taxes $ 18,267 $ 15,327
XML 84 R69.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES - Unrecognized Income Tax Benefits (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
INCOME TAXES      
Unrecognized Tax Benefits, beginning of fiscal year $ 2,882 $ 4,937 $ 4,895
Increases related to prior period income tax positions 78   42
Increases related to current period income tax positions   2,359  
Expirations of statutes of limitations (407)    
Settlements   (4,414)  
Unrecognized Tax Benefits, end of fiscal year 2,553 $ 2,882 $ 4,937
Gross unrecognized income tax benefits $ 2,600    
XML 85 R70.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES - Schedule of Tax Effects of Temporary Differences that Gave Rise to Deferred Tax Assets (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
Assets:    
Net operating loss carryforwards $ 19,772 $ 13,964
Stock awards 2,726 2,726
Accrued expenses 1,955 1,480
Lease liabilities 1,383 1,189
Research and development costs deferral 1,622 1,015
Research and development credit carryforwards   269
Other 148 337
Total Assets 27,606 20,980
Liabilities:    
Purchased intangibles (3,819) (3,674)
Construction contracts (839) (1,229)
Property and equipment (893) (1,033)
Right-of-use assets (1,378) (1,184)
Other (619) (431)
Total Liabilities (7,548) (7,551)
Valuation allowances (17,799) (9,740)
Deferred tax assets, net 2,259 $ 3,689
Net operating losses $ 5,500  
XML 86 R71.htm IDEA: XBRL DOCUMENT v3.24.1.u1
INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Net Investment Income [Line Items]      
Investment account balances $ 2,100 $ 1,200  
Payment for equity method investment 5,109   $ 5,016
Investment tax credits   4,500  
Remaining cash investment commitments 3,300    
Income tax credits 8,100    
Amortization of Equity Investments in Solar Energy Projects 7,400    
Amortization related to STC investment 7,400    
Cash paid for income taxes 14,297 6,665 13,897
Income Taxes Paid 0 0  
Loss of investment (130) 1,113 (466)
Other income (expense)      
Net Investment Income [Line Items]      
Loss of investment $ 100 $ 1,100 $ 400
XML 87 R72.htm IDEA: XBRL DOCUMENT v3.24.1.u1
NET INCOME PER SHARE (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
NET INCOME PER SHARE      
Net income $ 32,358 $ 33,098 $ 38,244
Weighted average number of shares outstanding - basic 13,365 14,083 15,715
Effects of stock awards 183 93 198
Weighted average number of shares outstanding - diluted 13,548 14,176 15,913
Basic (in dollars per share) $ 2.42 $ 2.35 $ 2.43
Diluted (in dollars per share) $ 2.39 $ 2.33 $ 2.40
XML 88 R73.htm IDEA: XBRL DOCUMENT v3.24.1.u1
NET INCOME PER SHARE - Additional information (Details) - shares
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
NET INCOME PER SHARE      
Antidilutive common stock 685,334 978,834 570,167
XML 89 R74.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details) - USD ($)
$ / shares in Units, $ in Thousands
1 Months Ended 12 Months Ended
Apr. 11, 2024
Sep. 19, 2023
Sep. 18, 2023
Jan. 31, 2024
Oct. 31, 2023
Jul. 31, 2023
Apr. 30, 2023
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Percentage increase in common stock dividend   20.00%                
Regular cash dividend declared per common stock   $ 0.30 $ 0.25 $ 0.30 $ 0.30 $ 0.25 $ 0.25 $ 1.10 $ 1.00 $ 1.00
Common stock repurchases (in shares)               230,160 1,855,714 527,752
Common stock repurchased               $ 12,464 $ 68,236 $ 20,372
Share price       40.01       $ 40.01 $ 36.77 $ 38.60
Shares paid for tax withholding for share based compensation               31,066    
Share-based payment               $ 47.19    
Regular cash dividend paid per common stock                 $ 0.25 $ 0.25
Treasury stock to settle stock option exercises and other share-based awards               135,156 0 0
Director [Member]                    
Common stock repurchases (in shares)               73,000    
Common stock repurchased               $ 3,200    
Share price       $ 43.50       $ 43.50    
Subsequent Events                    
Common stock repurchases (in shares) 5,600                  
Common stock repurchased $ 300                  
Share price $ 44.87                  
XML 90 R75.htm IDEA: XBRL DOCUMENT v3.24.1.u1
VARIABLE INTEREST ENTITY (Details) - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2023
Jan. 31, 2022
Variable Interest Entity    
Capitalized project development costs   $ 7,900
Payments of distribution to non-controlling interest $ 677  
Non-controlling Interest    
Variable Interest Entity    
Capitalized project development costs   $ 2,500
GPS    
Variable Interest Entity    
Gain on settlement of impaired development cost 1,600  
Payments of distribution to non-controlling interest $ 700  
XML 91 R76.htm IDEA: XBRL DOCUMENT v3.24.1.u1
CUSTOMER CONCENTRATIONS (Details) - customer
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Customer Concentration Risk | Accounts Receivable      
Customer Concentrations      
Number of customers 3 3  
Customer Concentration Risk | Contract Asset      
Customer Concentrations      
Number of customers 2 1  
Customer Concentration Risk | Major Customer One | Accounts Receivable      
Customer Concentrations      
Percentage of major customers or segments 16.00% 36.00%  
Customer Concentration Risk | Major Customer One | Contract Asset      
Customer Concentrations      
Percentage of major customers or segments 39.00% 70.00%  
Customer Concentration Risk | Major Customer Two | Accounts Receivable      
Customer Concentrations      
Percentage of major customers or segments 14.00% 12.00%  
Customer Concentration Risk | Major Customer Two | Contract Asset      
Customer Concentrations      
Percentage of major customers or segments 32.00%    
Customer Concentration Risk | Major Customer Three | Accounts Receivable      
Customer Concentrations      
Percentage of major customers or segments 14.00% 12.00%  
Power Industry Services | Product Concentration Risk | Revenue      
Customer Concentrations      
Percentage of major customers or segments 73.00% 76.00% 78.00%
Power Industry Services | Customer Concentration Risk | Revenue      
Customer Concentrations      
Number of customers 3 2 1
Power Industry Services | Customer Concentration Risk | Major Customer One | Revenue      
Customer Concentrations      
Percentage of major customers or segments 19.00% 38.00% 57.00%
Power Industry Services | Customer Concentration Risk | Major Customer Two | Revenue      
Customer Concentrations      
Percentage of major customers or segments 16.00% 12.00%  
Power Industry Services | Customer Concentration Risk | Major Customer Three | Revenue      
Customer Concentrations      
Percentage of major customers or segments 15.00%    
Industry services | Product Concentration Risk | Revenue      
Customer Concentrations      
Percentage of major customers or segments 25.00% 20.00% 19.00%
XML 92 R77.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SEGMENT REPORTING (Details)
$ in Thousands
12 Months Ended
Jan. 31, 2024
USD ($)
item
Jan. 31, 2023
USD ($)
Jan. 31, 2022
USD ($)
Segment Reporting Information      
Operating segment | item 1    
Revenues $ 573,333 $ 455,040 $ 509,370
Cost of revenues 492,499 368,679 409,638
Gross profit 80,834 86,361 99,732
Selling, general and administrative expenses 44,376 44,692 47,321
Impairment loss     7,901
Income (loss) from operations 36,458 41,669 44,510
Other income (loss), net 12,475 4,331 2,552
Income (loss) before income taxes 48,933 46,000 47,062
Income tax expense 16,575 11,296 11,356
NET INCOME 32,358 34,704 35,706
Amortization of intangibles 392 732 870
Depreciation 2,013 2,983 3,367
Property, plant and equipment additions 2,756 3,372 1,422
Current assets 547,179 438,702 507,284
Current liabilities 302,260 202,503 223,027
Goodwill 28,033 28,033 28,033
Total assets 598,229 489,487 553,585
Intercompany Eliminations      
Segment Reporting Information      
Revenues 0 600 2,800
Corporate, Non-Segment [Member]      
Segment Reporting Information      
Selling, general and administrative expenses 11,193 10,804 8,685
Income (loss) from operations (11,193) (10,804) (8,685)
Other income (loss), net (1,393) 499 7
Income (loss) before income taxes (12,586) (10,305) (8,678)
Depreciation 4 4 4
Property, plant and equipment additions 3 16 5
Current assets 100,676 84,572 156,198
Current liabilities 1,825 1,472 1,748
Total assets 103,943 87,703 156,886
Power Industry Services      
Segment Reporting Information      
Goodwill 18,476 18,476 18,476
Power Industry Services | Operating Segments      
Segment Reporting Information      
Revenues 416,281 346,033 398,089
Cost of revenues 357,705 277,402 317,130
Gross profit 58,576 68,631 80,959
Selling, general and administrative expenses 24,274 22,635 28,323
Impairment loss     7,901
Income (loss) from operations 34,302 45,996 44,735
Other income (loss), net 13,871 3,829 2,545
Income (loss) before income taxes 48,173 49,825 47,280
Amortization of intangibles     208
Depreciation 527 567 605
Property, plant and equipment additions 1,266 1,450 713
Current assets 383,508 307,742 322,448
Current liabilities 256,975 170,164 209,829
Goodwill 18,476 18,476 18,476
Total assets 411,571 334,593 345,956
Industrial Services      
Segment Reporting Information      
Goodwill 9,467 9,467 9,467
Industrial Services | Operating Segments      
Segment Reporting Information      
Revenues 142,801 92,774 97,890
Cost of revenues 124,321 78,034 81,391
Gross profit 18,480 14,740 16,499
Selling, general and administrative expenses 6,440 7,900 8,167
Income (loss) from operations 12,040 6,840 8,332
Income (loss) before income taxes 12,040 6,840 8,332
Amortization of intangibles 392 618 662
Depreciation 1,073 1,978 2,325
Property, plant and equipment additions 1,014 1,717 107
Current assets 59,123 42,488 25,681
Current liabilities 41,869 29,550 9,534
Goodwill 9,467 9,467 9,467
Total assets 76,012 60,038 44,002
Telecommunications Infrastructure Services      
Segment Reporting Information      
Goodwill 90 90 90
Telecommunications Infrastructure Services | Operating Segments      
Segment Reporting Information      
Revenues 14,251 16,233 13,391
Cost of revenues 10,473 13,243 11,117
Gross profit 3,778 2,990 2,274
Selling, general and administrative expenses 2,469 3,353 2,146
Income (loss) from operations 1,309 (363) 128
Other income (loss), net (3) 3  
Income (loss) before income taxes 1,306 (360) 128
Amortization of intangibles   114  
Depreciation 409 434 433
Property, plant and equipment additions 473 189 597
Current assets 3,872 3,900 2,957
Current liabilities 1,591 1,317 1,916
Goodwill 90 90 90
Total assets $ 6,703 $ 7,153 $ 6,741
XML 93 R78.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION    
Income tax refunds receivable and prepaid income taxes $ 18,267 $ 15,327
Raw materials inventory 9,985 11,903
Prepaid expenses 6,035 4,541
Other 4,972 6,563
Total other current assets $ 39,259 $ 38,334
XML 94 R79.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) - USD ($)
$ in Thousands
Jan. 31, 2024
Jan. 31, 2023
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION    
Accrued project costs $ 49,135 $ 17,448
Accrued compensation 21,206 18,286
Lease liabilities 2,726 1,567
Other 8,654 12,566
Total accrued expenses $ 81,721 $ 49,867
XML 95 R80.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details)
$ in Millions
12 Months Ended
Jan. 31, 2024
USD ($)
Fraudulently Induced Payment  
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION  
Total amount of fraud loss and professional fee recovered $ 2.7
XML 96 R81.htm IDEA: XBRL DOCUMENT v3.24.1.u1
SUBSEQUENT EVENTS (Details) - USD ($)
$ / shares in Units, $ in Thousands
12 Months Ended
Apr. 11, 2024
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Apr. 10, 2024
SUBSEQUENT EVENTS          
Common stock repurchases (in shares)   230,160 1,855,714 527,752  
Common stock repurchased   $ 12,464 $ 68,236 $ 20,372  
Share price   $ 40.01 $ 36.77 $ 38.60  
Adjustment to its liability for uncertain income tax positions     $ 4,414    
Subsequent Event [Member]          
SUBSEQUENT EVENTS          
Common stock repurchases (in shares) 5,600        
Common stock repurchased $ 300        
Share price $ 44.87        
Dividends payable amount per share         $ 0.30
XML 97 R82.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Pay vs Performance Disclosure - USD ($)
$ in Thousands
12 Months Ended
Jan. 31, 2024
Jan. 31, 2023
Jan. 31, 2022
Pay vs Performance Disclosure      
Net Income (Loss) $ 32,358 $ 33,098 $ 38,244
XML 98 R83.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Insider Trading Arrangements
3 Months Ended
Jan. 31, 2024
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
EXCEL 99 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( ^"BU@'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 " /@HM8C+H]?NX K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L,P#(9?9?B>R$Y+#R;-I6.G#08K;.QF9+4UBV-C:R1]^R59FS*V!]C1TN]/ MGT U1HTAT7,*D1([RG>#;[NL,6[%B3EJ@(PG\B:78Z(;FX>0O.'QF8X0#7Z8 M(T$EY08\L;&S (BY$T=06-28R'-(%;W'!Q\_4SC"+0"UYZCB#*A6(9IH8 MST-;PPTPP9B2S]\%L@MQKOZ)G3L@+LDANR75]WW9K^;/ MC:^"30V_[J+Y E!+ P04 " /@HM8F5R<(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 ^"BUBJX-C B0< /PQ 8 >&PO=V]R:W-H965T&UL MM9MK (72%@!VY'VH;\Q[@B23.$?+),^,_XC6E KV$012?]M9";#X.!K&[IB&) M]]F&1O#-DO&0"/C(5X-XPRGQTJ(P&&#+.AB$Q(]Z9R?IMCD_.V&)"/R(SCF* MDS D_/6&?LA/TR]TYXESX@&U!52@L#+$YW0()!* MO%P,8\DIA,6?/<]L3[M'?601Y_Y$\PL: M23V7!7'Z/WK.]ATY/>0FL6!A7@QG$/I1]DI>,$S)9)>2!/Z- )/+0921\\8JF4=:>Y-^EC[XN+M#[=Q].!@(.)XL&;BY]GDGC&FD; MHR\L$NL8=#WJ504&<)[%R>+MR9YCK>+O)-I'CKV'L(6'BA.:Z,O'&[Z/K%%M M^47#T9.@.+JCN1JG0.^D>DX3^K$2O0IX)CA4"\HAXF.\(2X][<$8$%/^1'MG MO_YB'UB_J6"9%+LP)%8!.2Q #G7J)R4WH( M1E5EF](K%2-5[5"EK>\*S9!8!=IA >VP9>_C!.Q >M>H;V%ZK24)8F43TY9U MI65(K$+KJ*!UI+W"?)R_\@.*9DGX2+F*DE[#LNR^8Q^.#E2DM*5=21D2JY Z M+D@=MR%U1U=^+*!I"30CH;(KZG7&=]?C&9K.)BI:VM*NM R)56C95FGDK#:\ MII'+./2^U$/LH86 \0LQCB8LB01_A5=/";%!_>)2A4]?U)6?*;4JP#=.V&X# M\)Z\H*D' YJ_]-W,!-=WU 9)V^G;Q\-#^WBDI*]@VZ@?W0;:1NJ>?]LLQIZ0>DU[ J1G,C 8$4VI52&5$L/6^_H:Y MT);F:Q;I7&^#B&./^I:%#Y6TC 8$4VI56F5$L/7^_MX7D [8$MGX_>,'M*!N MPJ&5*9'IE28L#,&_+ 2,_GOHG;5OC]"&)>EQKT)PQ M)3:CX<"46A5;&0YPJW#PC0400@G/YC]XK(2E5ZJ!9=3YFU*KPBJ=/V[E_"<) MYW):+9M+2\\8&JJB;ZJL[4=F'[<6G[<2O;/XT$Y=G#1#EU2[88 ME=3TBG74C+I^4VI5:J7KQZUK>X*G+^L,;1>V'Y>V'^M=>_% ZLJ/2.3ZD#S3.:!TVR7G MZ60XW!2RA2=_291_*UGJ#U/? HW& U-JU24*93QP6CU56*S!\>JZ:X-,+2Q] M7>=5"+M(!TZ9#IQ6Z6">/ :^"WV4$:7OT*MT7L9A-"CD:J-432X:>SK#QP>' MUM&Q?(;QI,)3I@"G50JH3DHLU@1."]TF L:V2.9U)3*3!G^2JQV\N4C;P4/+ MQG9QC3F.740!Y\T*(;UQWP[]=9&\H?SZ;CR[1_>?;N]F][GU=Y]6S1GW] MX,UR>3DAD?[L($:N7"&5K9POMA8_;1BG"_H'Y>[9[R*^$'GKBU% EU!J[1_" M#8IG/S7(/@BV21??/S(A6)B^75/B42YW@.^7C(GM!WF X@&PO=V]R:W-H965T&ULK5EM<^(V$/XK&GK3N9M)@B7Y-27, '8";0(93'+]JH "[AF;VB+)]==7 MM@D&>>TF'?(A8//L>I^5=O5([KS&R8]TQ;E ;^LP2J]:*R$VE^UV.E_Q-4LO MX@V/Y"_/<;)F0EXFRW:Z23A;Y$;KL$TTS6RO61"UNIW\WGW2[<1;$081OT]0 MNEVO6?*SS\/X]:J%6^\WIL%R);(;[6YGPY;RR)8\R@-X@@E M_/FJU<.7+C$R@QSQ&/#7]. [RJ@\Q?&/[&*TN&II640\Y'.1N6#RXX4/>!AF MGF0+,3JJF6WT((_LVTHIO'KD.\( MY0'.XS#-_Z/7'59KH?DV%?%Z9RPC6 =1\=HDX,,!FC0'9&1#50*\QH#L# M^E$#?6>@YYDIJ.1Y<)E@W4X2OZ(D0TMOV9<\F;FUI!]$V;C[(I&_!M).= >3 ML3^Y';F]F>3:^3UIN/1^,9'Y^C!=]'7+]]0NF()3U$0H=DJ MWJ8L6J1GZ,O1=:/O++I %)\AHA$="&CP<7,*F+L?-R<-;.A^B&CNC_[_(8*27CC58:=9 M.[E,-VS.KUJR7Z0\>>&M[J^_8%/[#4K8*9VY)W)VE$Q]GTR]R7MWZCUZXP266;]\Z1H6E7^=]LMA+JHPW3 T73N&N8 WS:%6"3N*W]C';S3&/XA3 M@>)GV7)?>+3E8+D5'LS# !VB.X["HPJCIFU:"LP%O&F.26V8A[GG83;RN)E. M?!_=3R?7HQG$P:P\U=9LJBL4 )1)3:PPJ*(<03%B+9_!!;R!8=I")AV6J&^)M:4SER[DA'+T6H2XNP3XC0G9#R8W'GH M>CJY0Y-[;]J;C61GAO+B )6E&[8RME64CDU3+3\ I1NXIHM@K5SVM48R$['B MB5RXY_&:GZ&("W#=UBH/QT2W#(4( -,I5:L00!'#J*E"?*!?\$=&I>]=3Z8> MVEW->G_"+7[G["A4VZFT> AF:IK:XB&8I9EUG$C)B31SRH<%"?;VWD) +J0Z M.J91'1T AHECJEP@,&BZE>,&-RWEW[,UVHP)RH-52(;12*A!,9EI7.0 P M0PY(#8=2,^!FT3"6^Z^B5-#7K!=^0TR()'C:"O84RG&*411'YW,I8I,X7Q4D M6G#9IN"J:GS89]OFSMOQ+- JHUM%G1.C;A''I1K!S7*D'%W4F\VFH_[#K->_ ME04X0;.A)]7J9/#'<'+K>M-@<*W Q*6PPW%-Y.S[G*&4<:99Q?98&<_0UB-!"KCPL2=%&RKK\F.8;E,J=.^M0 MA%WHRGYB **HVG]@7Q2>1:04=*19T+E!N!6R[WR"%(;"51L-C%)K T355 8I M!1TAC97QW1O=#+/CF]ZCW#?<>&C\<->7)2+G?EXEL@H>9OZL-W9'XQN08J-@ M_&P)G-2;>RIOQ[DM!29I%IAE"12GD_ 4J2I#3*FI:F4(IFMV99( ,,/"1LTT M*74F:=:9AU._B0P@^:BAJS()@NE8/6)P(9CAX+HZ+J4A^8^3JIX_1.[H<>1Z M8]!N)XH1Y?W?_ M7J.7G^8K]_OXTBW>3I1NBI/=I5*KC[V>G"]YS.2Q6/%$?W,OTI@I?9L^ M].0JY6Q1.,51#T/H]6(6)IW^2?'L.NV?B$Q%8<*O4R"S.&;I\QF/Q.-I!W5> M'MR$#TN5/^CU3U;L@4^YNEU=I_JN5T99A#%/9"@2D/+[T\X ?1R2PJ&P^"OD MCW+G&N2IW GQ+;\9+TX[,$?$(SY7>0BF/]9\R*,HCZ1Q?-\&[93OS!UWKU^B M_UXDKY.Y8Y(/1?1WN%#+TP[M@ 6_9UFD;L3C%[Y-R,WCS44DB__@<6L+.V"> M227BK;-&$(?)YI,];0NQXX"\=<"O=2!;!U(DND%6I'7.%.N?I.(1I+FU MCI9?%+4IO'4V89(/XU2E^MM0^ZG^\&HRO;H8GP]FHW-P-K@83(8C,/TR&LVF MX C<3L_!^W])1^<^[?FV_?6' ."N@!# M[%CSLOQ<@E/JEA,\V0J_^0'9M;8G-;L0WF@HHD$-G6F%'=^G=G1^ MBEECS5>UJ:ZC%N@>@;+R<+>Y6OG<9I&9@+ M T&,:H@M5M AT X8P8ID8"ODST(L'L,HLC('-"<;A:2^L ^:[4/;X3]T8-M1 M+'D(]8K>3LG&"FX#[2' R*_CM%AY,&B 63$6:F6)_CF_YWKA+(!B3[P%([9@ M--:.Q8IXM EC136HG6L*#7@D[H\RR8M9*8H5W[S2M_%VZK5,K%>' VOAC/QB,[ MSE;J>JM6^5G1]G.N" RU,UA)M"OVG+.L-6&3G;3ZH&Y]7$PSUR.^VS L%8NA M=AK3$--,+T3^I%LIR>T3VV0GBGQCM[68.0'UFF9.Q6*HG<9*'1"%["Z,0A4V MP#0)"E$$7:>.T[0+/.PUB"I4$1EJ9[)]NCTTSTUN(A#KO;4.UK33;8,+&Y@" M5R2&VTEL(I(7\7*@KMCD*OW^.E"+E0>;M@U<$1IN)[1-40\4$YLL1:"/ P.C MA75Z.9Y=ZW*=@,#D'N@^=C2>?1Y.A1@S>2\[!1"@N M05 P"8(?K&G\C]8*6%NT'P^T7XB*-#%IW>6GLZOA'U^N+LY'-]/?P.C/V_'L M'VNJK=S[YI;T)T7;3[KB7MS.O=?IBYR12LR_:27+4J ;TXR#=_ 80: %+I!+ MEG)P!%P(NQ#"S;T$+%-+D8;_\L4GD(B7IZ&4^:9L4=,AJOY*5WL '],9B$>;'B2S290P71V$"YFP5*F9M5; I*9#G(%KO5:QV M6&^<#7 K[8';M<<-5TP_TN*#I8DNO9U]3%6A>P 7UCL5FQWT:=,A!*[D!VZ7 M'Q=<2J!2SF2FI\1VENI),A=2Z3FIIQ5UN[ZWV=EQEU"OZP7E%/S!V61*E:- M-Q6TGKS%CE(]F W)5YH&MVL:+0^S.(N8XB_]SUS$>@-8YD??:PXB(>VC9LJ6 M(^(&QJ!9S##U/3ML4HD;TBYN-JKAM61$+,UX -2[XUL=A32H$'DD$KDD#>* MG$)$O!H^,DXPK:V=Q<[:VO5VSM_S'S\N6?H0)A)$_%X[PF-?1T@WOR=L;I18 M%4?R=T(I$1>72\X6/,T-]/?W0FN?[4U^RE_^JM/_#U!+ P04 " /@HM8 M!NMB7P0# "A"@ & 'AL+W=O[.O_]Q.#=84O;$(P"!GI,XY4,M$B([TW4>1)!@WJ$9I/+.C+($"SEE8I)H_*-8FS!_07,0DA0E#/$\2S%[.(:;+H69JKPOW9!X) MM:#[@PS/80KB>S9A5E 6.(8Q5)W5Q?C!XN+]#YZ&9T.[Y$TZO+RX MZ8A'(LNPG!;W\>'N=M-=EYIKX58M MW"KBV<<+;]-6!G/:@ZEW[8QG.("A)E\F#FP!FO_AG>D9G]N4_J=@#=UVK=O> M%=V?R-<$&(,0R=H*GDY1AAE:X#@'=$)2%-(XQHRC#%CYI#^V9:/L@>S6 MR.Z;D GG>3NNN\&Q3KK+H@'IU9#>FR#EL<\%3D.2SMM(O;VDNRP:I-V:M+N3 M=$R31![^_U"ZW;:R=->X]Q@UT'LU>N\(](,JM[>1/MLPVFKW ,,&<[]F[A_/ MO+UT^QL8IMNSY+>_QGN 88/7-/[^G1G'$^^IXRID \>V',NUUO/<:NDXIMO? MDFASY7_8W G^()LPGK.7)GHKKKD!8;D]M^NM9[G-T.YY7G\]R_I*_Z":MV^8 MS4G*40PSZ6ETNO+$864_5$X$S8J6XI$*V: 4PTCVD,"4@;P_HU2\3E274G>E M_A]02P,$% @ #X*+6"^*FP>2"0 E%, !@ !X;"]W;W)K7EP#T@N+%C;.LNK MR\FJKC=O9[-JL6+KI'I3;%C./WDHRG52\[?EXZS:E"Q9[@JMLQDQ#'NV3M)\ M0=?AM3IRFPB_@]9<_5T6O4-.6^*+XV M;ZZ7EQ.CJ1'+V*)N$ G_[XG-698U)%Z//UKHY)"S*7C\^@<]W#6>-^8^J=B\ MR/Z=+NO5Y<2=H"5[2+99_;EXCEG;(*OA+8JLVOV+GMM88X(6VZHNUFUA7H-U MFN__3[ZU'7%4 -.! J0M0*0"Q!DH0-L"5,[@#A0PVP*F7, :*&"U!2RI !VJ MDMT6L.4V#&5PV@+.N;WDM@7CNAV,WEGY2)U<79?&,RB::TYH7.T'L2O,A M3/-&N[=UR3]->;GZ:G[S\?;FP[7_[B[PT>T=_^^WX./=+;H)^;N;^3_CFP]^ M\/GV;RCXUY?KN_^@*?IRZZ-7O[Q&OZ T1W>K8ELE^;*ZF-6\-@USMF@SO]]G M)D.9B_6:B_>V+A9?%:7G^M+OELNT$7^2H4])NISRNLR335HGF8+EZUF?6:/:EM\'FQ.>:,YBL5UOLZ3FM;BI5ZQ$O'OX9+1J M9HDGACX4E:I6D9[ZLL0DF-_I'D;Q#%OR)B$*S2SQYE[5#-'/QT1:AE7\R>CF72 M#\(6I=@2PWQ%F&UC;(AA03]L2JD8$RIBL.%B,2I2)'1,*2CN!U%"3,,]A F= M3 ^=3,_KY%?\JJA6"1_RUV=U^!YK"WWI&,2S/:G3M?F;Y?9MM4D6['+")5RQ M\HE-KO[Z%VP;?U==G)"P !(60L(B2%@,!!/D91[D96KE]9'OJ-)\4:P9>I7Q M>>FU2DI:Q,C6SB%AOMD3.76):4H3 63*$!(6]>L_)19UI9E%T4I^*=OJB<4Z MC+RE'7F^6^1[P9SO2\J2Y8OOJ"Z3O.*K5K,+S=1+U'LM1=U\P\L<[5Y4*W%Y-^!+N M2+OKN3;SV,4"$A9 PD)(6 0)BX%@@K"\@[ \K;!:>Z':Z:MDFVVY6"4#DXJ6 M-';A@83YD+# 4^P<#>I(\V<(F3."A,5>_YNWV !!*=CH/##C15HY-0VU6*%' M+>(XEKPDZ?./%04H+0"EA:"T")06GS%<6 MHG#M7.Q)WQ9]59SKVG)78;F\ 0-U04%H 2@M!:1$H+8:BB3KK/%$,8(KJ&:,7 M 5!;%"L<0VIXKCP[@!JCH+1(T00>:LM3C:*AIF,,3>V=-XI_@CFJ9XY6!*@] M"DH+0&DA5MB5)K'DM0?4(3V54]1-9Y%B2(]4#QLM&(69YUFNO', M4E!:2$H M+0*EQ:=Z5Q1,YY5B*+,4]]U2^?@<]TT]N[=S!#5+06DA*"T"I<6JOATX@<.= M7XI_AF&*^XXI]6S9%9_K0$ ]4U!:"$J+0&DQ%$U46&><8CCG5(\:O1R! M>J>@M KW%/;Y=_'Y:_%H/8I*"W&"@-5;(-X4U=GH)*?8Z 2A2.'7@O53ZNZ3.^WNPU07:!/5I" MD#0?E!: TD)06D04EK#MR);PJ2A1/ITA3/2&L,^X6*HB2Y?[[]K% _K].E!/ M.) &Y1R4YH/2 E!:"$J+6IHTD1!9+7V[7H@2U=+9ND1OZPZ=UU"E7DS%>8W3 MV\FH7$I"#-EU4<01PW'EE@>*N*GKVO*]YJ$JCKB.M$)%^@X9O0HH&N$:KC=T M&7=N*]&[K>>_B86J:V)(/PN;Z&HR^8$'=5%!:"$J+0&DQ%$W46>?. M$KT[>]:YCIXQ>J& I/E$84(2*GN\ 6C2$)06@=+BDQTB*J6S98G>EGW1^8^> M.5HYD#0?E!: TD+2MU:G'I%OD ?-&9_**>JF,W2)WM!M9IAM7K(D2__+EN@Q M2?,*-;_J?4K2++G/V/2A**=5DC%4,2ZNM$[57IP^SV@M@5K!H+0 E!:2OC>. M/4^6$JC#>R*EJ*3.N"5ZXW;<2:(>-EHN?7O4-*W>KS!!+5E06@A*BT!I,>D; MMT+OBC\3[6Q;JK=M7W:6I(>.%0XHS0>E!:"T$)06@=)BVC=V/=,P!A8WVKFZ M5._J#B@LR9>H\>C*=-'\XGU_;K#-TYHO<76=L37+Z^I7E/.EL7AHM8B>TWJU M8MD2\?7PP$(;SF [X.[S(ELV)F"=?%,ODOKZCA:OPO8EIBL?H(,F#11)J27; M9R%HS@B4%M.^-XR-(4^ =LXPU3O#_U>QG9PU%;??&J;1!S?7Y1RL#DA: TD)06@1*BU7#1:AQ M/%RB@#I'G>H=]=,'\'K Z)D&U%ZGJN<7F+8K/;PG ,T:@M(B4%K?1\%8U8EN'(H]R/FWJ.15QYI5#$44O^ M=5*D[Y#1 Z-HA&=X=,#_H9T#3?4.]#EG8NI!4ORRGQ*36+*C.M?78/1%"^HP M@])"4%H$2HNA:'N=S8Z>'M@\K_*WI'QL/.B,/7"\\<;A2BWWCX#Z! M@O=%71?KWDBL%DAJT$.$<&[QF9MDTSNTU];)AC+ M;254^=XD!EIM_5I2Z]&?B^U<7\KN[].HBV>=1&(N[E&3[ M[=9/7[Z**'F^[)F]UR_NP\=-7GPQN+K8^8]B(?(?N[L4/@V.7E;A5L19F,0D M%>O+WLC\XG&[*" M?H;B.3MY)H64AR3YJ_@P75WVC*)&(A)!7KCPX=^3&(LH M*CQ!/?X^..T=WUD4/'U^]7XMQ8.8!S\3XR3Z(USEF\O>L$=68NWOH_P^>?XN M#H*LPE^01)G\2YX/MD:/!/LL3[:'PE"#;1B7__U?AT"<%##ME@+T4("J!7A+ M 78HP-Y;@!\*-W*0ZPLQ["/5K7J6\?J6]K.,%K]"1D LFR>D3R!-!LD<1!&@L0P M(81QD&Q%\7WQ*?"S#=FER5,(HXH\O) /^PP>PO@C@3DB]?,P?BR3;)B' AVX M5I==J$MG7D?.:FU@']O UG:A19X$?Q$(-!98#$M?]DDWX-RR ME![5-&*NVNT\Q(A;+MZ?G*,61ZMEO/'C1Y$5*=P/@G0O.T@N(&@Y 5UA_"0. MW0W3YC1JU&=#UU7$(5:FPY00>$TKVJ)M>-0VU&KS!#1^$,H6PFH_;+[1,)E2 M><3('2I&7M.(,=O!:^\>:^]J:W\C@%UT'#!@92^ "9V,\R@0^7@\_Z,*>JKJ:1 MTU35-!HZ1HLH6HFB6E&3O_=A_E+D@BC),O*A;+B/A;XLB?R40*.ECR]O987# M6^KM9Z@RFT9]TU2'GX>8<;ME#C4KHC*UB'%U5\R*Q3HE([!.(@'TTC"7HO%Y M4._NW(GPX.U4D]H+/,2&LF';F*S@Q]33SW2[\\.T:#FI%M6J]7"VUBZ]>0=O MM;'A&FU1J9C*U.+"U3S?B!2-A87D6)4&$2-';I3D<39/JFH2[,QI@98\WV0,QHFPA: M81'58]&Q;^W\%U_R @S55_8^\!&JCB)8Q(>-B14Q]D7PH C#<<57(0\SZS+2IJ\I![#@W3TBWKJ="(JI'HEDW"VF*()%I M#QL["XA=GQF&;:IZFW9T"'I;Y%9@1,_;:YK.?DX6[]AKHIT"4J?>O*Z\U4-: M(1?5(]?=/@TVL)3+)$9O8-G0A_7U]BV(IDW4 3ZV#*,QWA%#REW',M0^@QBZ MQJG#NL(*GZ@>GV[]?)_*KG^F1(2NK&;%QYA=O>('@4T[G;Z*LZA^OZ?6@OZ3 M'T9%WN[#RJ&?^9# ,Q$<]*,JF]LV,"EQWECXZ6MQ=J__?Q 4K0B*Z@FJ%C/( MG9 G\Y=/9!?YL/0H9CP!:\U=T370F&'(Y%CJY@9FQIBCKJ4P,Y/3MKFN(BNJ M)ZMIU;T+!J\MD4'RGR)HZ?<(1EFFH6Z;Z=]^=G_ 7FJ8+4MI6C$9U3/9*("& MS,+7?9 ;(_($0=T M..3&M\F!(:!F.[:A+#''J!TSJ3H8,#O'8"T;8JP"/V:>10[7T]EH-G['*966 M)\\^INK2F]>5MWI(*_9D>O8<)]LMC*I,'C>D8O>:4M$P8MMIL,94USZ8G3VD M3%W\8';4.,VM=5$GAYEO;+WY+V7&A&0A!\0J++BZY>28-;?!('7;Z@;\&+5C MKCIC>*B=9=LMZP1641[34YX79GD:/NQE'BP.X)*X'Q1KH22*BD'^>JB"BNQT MQXTAF&<[ZHY45^^LAZM"1J9'QKLT"818962=)EM 1C\5_>*N!JR$G_UT!4B5 MYY%H)4>&$*'A-E)BT\IN= C$$Z=MV;!"1J9'QD:Z7X>Q'P?O2/<(+5+;:# Q M9C>D0T/=/\?L&+?;#D!8!7A,#WB3Z^O)N+P5,OG/^/MH]FU"[D?+"2F?X8>9 MO"Z"BL2 S%3I#K.RF+KRQZRH:[?IJ^".Z>'N<$_@?C):3,@';U(^?83ORELP MHYE7/DS^_6/ZDJ*%MNBUGI:P".:8' MN595G\C7R;?I;%;,Y=#:=Y/[Z=Q#I2(GD@YS>6-<(N>-EL$;W([9V;;=MG'. M*QCC>AC32)W MUJ1'-F%L^ ("TP7/RXN[N1-RA'-]7] M21B4U_/[V]%R.I^APCI%PDZ]>5UYJP>T0D>N1\>QW(V'426[276W1&2?Y+4W M6%>D8KUO65!PE/<:Z(B8PN9X>ZQ*K,P8Y)G!9I4.K M-BN9*C0B5M2RU&D7L6+457= !B<7C+>0^N1%[8S(LZWRIN[QV^-E\)&\ JU\ M_]7\XI57NBLWY0WS6S]]#.,,9*_!I?'9@2JEY:7M\D.>[.0UYH,'QZOS5_P!02P,$% @ #X*+6-INTT]_'0 45D M !@ !X;"]W;W)K?>VP^0H.S=VMTOB44" MW7U?YSZ;/]^WW6>_MK8OOFSJQO_R:-WWVY\>/_;EVFZ,/VVWMJ%OEFVW,3W] MV:T>^VUG3<4O;>K'9T^>_/WQQKCFT:N?^;.K[M7/[=#7KK%77>&'S<9TN]>V M;N]_>?3T4?C@VJW6/3YX_.KGK5G9N>UOMU<=_?4XKE*YC6V\:YNBL\M?'IT_ M_>GU_?BHJ.S2#'5_W=[_PRH]+[!> MV=:>_UO_=RU]T6'IVDU_(-)Y;?I<*Z!4.9]1]\Z>J]_]>9R?G'][NKFW:>/Q:>W MQ[LHU=_^\O3OS]Y^0 1 MSR,1SQ]:_7^/B(>W^?CIYK)X6OSM+S^>/7WZLO@?[5J\L;[LW)9MLUT6_=H6 MKP=/.WE?G'O.3/^-]/7WY?E&U3#67O"X*GSF 13TMT M[;!:%XX^OE^W=;TKVOO&5H0X"^\J9SIG_:SXU1+^%%?MO>V*^<[W=D,?OG]_ M49BF*LQRZ6IG>NOCQK]>S<.V+XL;.N9UN[ =[7'1;K:FV>V=\^;Z(CU^WM>F MZ5U97'7M[[9,+Q7OW<;U=+8CFYY?Q57XD3D!ZMIV3?&!H+/&)Q=F4=N]O>TJT^^QI#"=+6AQZQJS[(DK!"J,FG>66$@H:;N.7NG; MPGB6D^ZFI)SJEL0;X3\QC+!M MYYK5#$^50V<)^?L9'[KO!H9P_+79. ^'P$_"Z?2V,4UI^35PF""9CMUN\;H0 M;\MUXTI3\UH$UO1J <-S)9V$B,()MZP-*]NH,M'2W6?;G[*\!89MYPO7E/50 MT>.=HP<<<<<1G)&#K+";+$+G(,VDI^E(PZ(FV0\]2;=GW=-'H!2%_6-PUPP8X< M!,ZFV*QV=>^FZ#6FTZ]>%=ZO&+8F:N%V'981;^DPX;N"(+^JV M9*&[AHF];5CSYKUH7";1V]-YD.;W(KIKJT20E-YUEC4O:)O^/=+3;/U_$:.K M=K.WP;].DX9FBD)T,!X279G&,,+\\-(KK<1LHJW;)?'16VW7PQ+HLQ68'5DFJNG2VKC)]61N1%[U0-!1TB"Q'Z[))5Y5C5!II:=$/ M76/H>$U%7_CUT%>$4")V$F%'"ECNBDV[((7Y4U&- J^<@@SODA;N"5C POB> M*%ME^ KQJI2(BHW9187&MTNSZ$BSQ-(J6Y/Y$ZOQN"/B3%V;@-6$F1:\W&S; MAO7.#^4:X+!U6[8N055^%U+U9,[%'?W?UC[)A\!J1CCMZ-6(YHO@ 6@Q^I[0 M;=D9X2S6F+?UH%S%B7L$=V0G0Z/GAH6.7HAR.Y!K@(N-:2CXG *;$=4@)1=D M#B#)5&4I*KEO],':7:^.#OE8%>92>]"_C.*DZYR62'D%/2=;JSQ0EZ /B'_D\.9PA M"Q11@%F'J.>0X1+WY.=8+=KE@)#=1Y4RT MT+K2'K[SG%6%P?C(*R'>F#[%C,7TXC30]J?J7)Q=).D/0 M5I"(K.@P*R1]K,>7&+,+5&6/GTZBTK'7$EB2"Z45 !7M0"??;46EZK99G4!J M8Y<<..)GBDYL*VM21%9*T>_1IM$2K.-XC$)6]\56)RIY?(#CGQ /3Z"7<,YL M/TZEF(X::647>43_L&?B9C5$5<'173,PE9F<@T"#0JD[ Z)V.)Y&D5&4UX&X M945:RZUC,F+1UI^YYLC$^:A*\"=,T2+\O6BW\8.*/@ ML"]1&A\>6\#[D[X]P?\+LZ75R2^1<2_I('"SNTS[PJ*145A0 MCFT06_4Z+1^C!HEPJ)E=YZA\[Y"Y1/MD^^.3\XOJ<1+FD;Q= M6R40=3WLQ@DD.64"7N'7S0;>DGP&.1M-Q#>XU90X1)"@7?SHZ%%N4"G.R/"AE$Z)J[%IJWQ1J;(=:?UN'RJ16)EH&'>F'B)2Y\8']UU;4;P"T*\Z/J.S]*T/7 54B!R MR..3/I,DD6.JEN/L]DO/*<$@8;S20@IL!F]'QB='TN"0=1X5!]Z*(X"@G@CG MUCEC-,7=%[SRHR@[)ZJ"55::O_LV"3$FQ*0JEK(:S[8=I*_(2<[.=!V P&91 MEWB9*1FFXXV2;A&C0^ M0'?1Z+B0%@/LC#!;DL_.+AD;9"E^(X;^P1!$FB%+'"@57]C@DDF5.LIR+:LR M18SZAY)QP"3F'>FDJ7XG/DF\2]$\%MP82E<2L!)$L;NNABYX'X7QD3_)[)'H M+5U7#AM*@S@7L'=M?9<@E\[$%N(D+Z:GUZA]17_A2XI]0]A0COP686Q9&[<1 M]PRW<:>Y1NW(+B0/J\R&0G.*EG\+#+P8,?!<60P]&1KVGG=(*M92@2/Q=SZ+ MA":R$-C(B407%1DC5P=%[;3200;(ZAIC#Z%)MJ 88.@9499JWD(G&4I;.B:! MS>C0%K+E[9)>UK@CPHAKIJ4M;D^\;8:J1,E"/%- !X/:6ZE*Y]F>";D78J-W M L5:L3#%IJTX!^1]L@!-,2YH&8[*E3>2(WA()L+I#-=0)\ZJ:A@MK,I#FA A M[)(!!$\\S@K(,[>!,5&SQMP\W)IVSJ.ES+3%_GOVP*!%?*UEN<-4C.AEBNY2 M?AA1\O>ADKH+4L5.!,KAD_$DT@40\%I_8JCB+K,.!H(F<32<^ MS8X('_#"(B2^@YLKI,Y,P#*&([(V,4>+2FH\$O9FAOLP^B.Y0/T7=6RR:2%N> X_0+% 64_< #M^]'YH1J3QS81T@>6A]CQ8=$B@L5>$!W/ MDC1A.H\<&70]132+G5HUF94C MOULQ:0#FQ4Z+X)/FR'?DN032\1EJ%\V)2[T^(2M< 18BH! ME5VBDJHVRK6].JGJ%+?.A:=T)F_[6),\$EWO)2?;ML<6 M$4:D3'"P2:86(?@EBM,N&YAK.KY#UJ M%$=#-I@Y1E)"BJ;]H57-9(_@K\3G )X=SH:H3'I="#PB*S\ALA@Z3RYY'+% M'!H/[)%DO]ARZ.U#D>JQN-0!B= ."UJ9Z8ZB>DQ/PW9-RV8K82S[;0\^CCTW M.HA=G3?U*!)EED"$;4E8E;8@;$(!F$_E$:"-82/;,&G-H:K,8CV"=4G0 M(@"N2YV/N 2EK0S3*(%R68ZE'[ KA)@4@U+B6NY2?78UU*9#K6LK^]M8 QUY M:OXS+\VHRQ:;@F:8KA$7+4,PL3/(M6>M%!EO]])Y: 1#)%<,I6LE76#*&_LI M&V(_Z]ER4@T2G:[0X)R-,<"G:'%K.C:+W'&EW&S.Z>6!OI*_]O9 @R(29-8F MH76[ZKBYA!2M@MZ@P6W8;D1#*]I])SFHT%3%6 MQ^)KPP;++XV@U=7!'OB*0 MQ!;H@5H/0A5F?I +'T3=7&X(<9?:;$*IV-L@YS:):"Q<]25CP58M4<#^BU.A M!Z. U$;"_VJ-J _#Z*6Y:[L814.,SBZS6-K42 Q5DGD*EIHDD-%70ES)F_UH M >9/J-R*F)>PGX?+OON91Z3X+@6!X_HDTZ6!U$P+D\BY-P-Z+W>(XOMR?3)L MBXVE/8C66ZT>$,/D(^U'$RVE>-XFHR0$B@]GUEJL$@S3(H*J@D9)*;-)2X]* MCJ>QF5(=2[@#L(QCK! _1%_'D7]6Z-;H4NI5&_"K=I_9QH2F4!T-LZ)G+%4TPP7XAV!_/RL>%T%1+%L[ 'R< G4J-JJ,1[2D2;/G[7+IJ>/J] MD_+RL69KCR[@*A-M.)[.G.S8*A?*#P__(=K)_B#"P0)6)=;"@SH [[7$*'OP MFLV3A +5:?&!%?F@O+8U.S&HR9H4Y_8!04-XLZ<>;M0WK'C :Y%*?3!EF)X2 M@I=3J)O&:(8M5*"Z8Q&"5)8:[8%9"E>31-HF?K'7LM0@6%OFH6>Z71OM.(8* M!;N,<1T\E=@^-:*[' 5W!?G@U:A+,G$(YH8$&Y9=]F3V'56(J=F+.+D&Y1+E MV?GSUC,D&GRDA" +*TW4D)5Q 3UD4#A'W(8IR:J#M0O=D-C#CJ?/'HK1;&5+ MC )J0XL',$#'@WFDY#II@R.>,,X)2(F!(2GEO<%,P6_!P%1OY9.Q$]G97@,> MM0OMKF3K-.3%8GJ"[#]4]),%<5">C"6:N3;/PW!#.!)O/QY>&OEMKI>H:7$^ M>UA\3Q2P&PP5^^ZP*3-+53+=)">&#<>W<#6,,FSWM+AZ!R+ ".Q*W_5B7PV< M/4J>5$WR^@0*\%(EGZ H51(#Y;%VHRRILOT[RX%RZ(*JD,,)>!W,TG5^,,E+ MCE1O(B.=Q31N:QQ[KJ0R$LD835HKP0?)A*/:MW%^+IT]I=AYITOMA"U""(*%+$.176/[S,.UWN53LQPYET@5LG3L.O TG2;T M&2F [=?B@\(SP9'" U%$L./WB1CH2W@_#\PEBSC:NF(DBD6_&B&WGI5+,<>% M]E(GR3(&)@^1C'JQFP#[(TN"% QN@9NW3>JP7V5QPJ=,K^?# AD&\K:'FW@' MS9;QX),@"PPA@ZJV$%^) "Z]MA0]H( 51:M(,=6C<8Z[+D.^I(N%1 &/K": MJ,@I=,ARVPFR.SR]7W/LK1%(7F#O(@>'C(/'*I=A2NOZ]NI3'-.*.=H1+Y%X MIPR"5/<8@WHSC[T !)%5^20K.@U!H*1Z9=D-V2Q49O<,D-"P;!<$1&FP"9;) M\0T=6/&3S,^P"%016!+B=&/0H(6N:*,D%W:V=9Q5/9$X1?T1:2V+ 7\JWQWJ# U5#9W(KR(8+.!6=CR33V;!:+,E-ZPLK&3=^@ASB@(J$H@_IY#BQS*I"\1VNP,5R"*H( M.#@'M627I;@>:<"):F"6AU?.6% M11$\=&0)?E!"(9W2TD:6XQ-W4.WDI(PUR!STD_?K+6&7E(M,\(VY8<)87(#4 MH0F%+9W^VF=N*OB,3QMF/U JDE6@F7-Q,3$-Q 1"":5X\TCGZ9V.RPWQ?T9 M0@+SQC6EV'D3\O(6#Q&'80)X"#3P>I+.51TRUG^E3(%+@KFR1W?E MF<&A:)XQC7F+"!YOQ)&,L068;.9N:%SF>L:?)V]%;F_'S&38T\FO!7#VF_E-967K_2ZL(^@P);CA,*.Z^LW<3.@P@1.9*> M9&_1KQP'N7@Z.^X&Q#/LJ\=>/=2$Q&<\#8B%4S8RK0_*)]0X]O=G'&OU>'O% MVG@R4X?K.+KIF+C3XAQ&SR/OK$]2&A8[/)AN),_I0U0J09EJ86@D\6!6B30\ MN H5A06EN-20Q5 'NCS%3G([/<]HJ4!S>"Y-#3WK[;=8X-!PZI=%8@0;,IV2 MS02;$5E"J5S'"1W4!SW*6$2AJYN,,8,KSFA#%!T$S>!%N MIA BT,V79$ZTEU\F/_X>0Q#O.6K36O5[F90;M3YKVEA1F'/!KI?!B5J>Y=8\ M_JD>"9=K' -U0T+5((P[0B'EN+>8@-O(M6]B9)!)G_I/L=J$X8\P4Q6C8C%1 MXE@MXL+9)U/@;)PHE$S92G$IRV-VF@>/V^7)((V?4*X7>O+*2SZO=\@"GHC1 MM#A.!(PBP9'O]J$#% XEZQS,3(]S=L/W9-F3%KWYPA,SC8Z3S@[NH6DSXBWS MU\3"/,)>[+B@D$[)Q)LDJA/Y*UW>F\DX,G\?NT&I%]#9,:#QY$5\6R\>W4GX MN$ .QN]C;"0Z/7BCRM0HF'-CA3N3<'3%#>@;S["%.K!,*D9QFB^Q[N6G$H50 M7AAZ 8*)*!]I64GN M)U0'1J?LS6?;S)@5XW9\^$+ 27P^ORNYWWZ-?%2?2)E!J.?MMT;9S6FN(M.' MTVP<-T[RF;_\GI?%-,,Q /[.G=I3B@O(_OI0:C;%BR=_U?XP]Q:^5ZH](9;4 M1SFKME],S-- "F;7>0B1K+.O9?<8PN'<9B WV<79F;UR'Y[XG<)X7[DRW*K3 MRX,QF\^,&]X=24]BOF4R\ZI7)AB=@WM)5D\JL$9"+J^DH$UXFXI0>S.JR&OX MSKK6,_62,,8_",C%A'07,H_YFMX_>&:MTX).'OV,W^W5MRL\G\Y+, 5YM&[NA[(3:RN[UX_>GG3S: M#/UHQXC#81R#,<\/.E76YYT$%_.=".E6\U96&O6M;1I9E:!.S:MV2Z:IL?>H MW>I8^XA\. /_^639V>QZ:2<&==#KIMV;6-F1AR0BP-LWXP#(9!/6,@PI^XI- MY\52#>^Q,S&VCR=$S)2JIU?7\UN?KM8?G"TUL[>8M5Y+"Y&#@;W+B9L-JI[" MA"1[GX0/5<1TEN<^(ZTJ(7.R89=-U:]=UZ,7$EOWY"IXPF7HYUR>@4X?V9@O;C-L])GOV>H@ MDFANPFFY_G!$,+]6";5Q#YP>>=3Q M7;-0+A&&]ER 9^I"]H_EM60U_>9L6@/&Y:^D#ZO.<-5'0QB>+_E&IDV?+DYZQ?Z04NHVWRC7F_\?N88['00_V8)33I$,5\-.X.1E'OS&V M.&[Y!.V(S/HVHSNJ(]E67]G('[!QW)I.Y9('("8->R04SWJ.16VV/EUTS>OL M>=(=A)]L@+D?8P,90\_#AO!(H$HK#!,ZM#?<&-SDN(=7.8J).Z[Z+RSEIMJ. MK&RE5\3E=U:R6#S>X V_6%!RG%N)A\-_LLLYV4S.! \QC8V*7[U+7!^G%!/; M92,\X0YZ$PI8V4$7I$*8^6T[2L/M?<.W8C?;4>\N+[GZ0EN1:9+P@=I* MQ)F#+K3QZQF77.0.ED2ZE>6\-WJ;BS?AA>1RIF;09,IR-+8SVT^]LP:X%"%R MP0G2QF1F?X3?=1D\^_QW'[+ZTVC^@&TQF@YC*07.37'!FY.QWV!^3!NBX1WUX*S^#A,^20LA/ 1T\ M\6P4T=('9Q,/G:5E1C--]U8M-QMP[U@"NV+.+@W,TOK8%7ZBD./MZ\N+RX\W M[_^S>#>?WUZ^*]NS')W38=](-C3<3KM./+(4WW\2:H\>(2+I5CZ%@O MIFWEVD;5;CFOWJ_,I]M4<9A"?Z?KZ],34S^&^CC[F5L>!L*/^6(Q.J[\XFW\ MM B_%WPN/Y.;'I=75LJ'=[/X Q(PAX"LP!&$O/K\[HQ%P\Y6Y7D@\TY@#[?ZVZ, MSI^M^^&72@7QLLJ-?]=;AE"\/3STZ5*MI._;0AF\F5NWD@&W;G'H"Z=DQIM6 M^>%H,#@Z7$EM>A?G_.S679S;,N3:J%LG?+E:2;=^KW+[_*XW[-4/[O1B&>C! MX<5Y(1?J7H7'XM;A[K"1DNF5,EY;(YR:O^M=#M^^G]!Z7O!-JV??N1;DRXU*VMB]KJ5_9-_ARTQZ=67S M/W06EN]Z)SV1J;DL\W!GGS^IRI\IR4MM[OE_\1S7CD][(BU]L*MJ,RQ8:1-_ MY4L5A\Z&D\$K&T;5AA';'16QE1]DD!?GSCX+1ZLAC2[85=X-X[2AI-P'A[<: M^\+%W?6WZZ^/U_?BX]W-%W%U\_7A[O+JX5[\\?GAD[AZO'^X^7)]=W]^&*"+ M=ARFE=SW4>[H%;G#D?AB35AZ<6TRE6T*.(21C:6CVM+WHY]*_*)F(T M&$U^(F_<>#YF>>/_N>=1[F2_7&+16U_(5+WK@29>N2?5N_CUE^'1X.PG5D\: MJR<_D_Y?6/USN5]O'J[%2/SZR\EH.#P3?TV-^*"]7"R<6DBFF)V+._6D3*F\ M>%@J,;)C@16J-M[G.9% 9J%UM08D1'[5/9%XJI_A-:AVT%]9D9$_A['?4!2^> MZ7UN4Q+REMT?C,_^[[_D7G2+?!&/1I,/]P%6^&;1&S$>3Y+19-)],CI)3J:# MSI/)]"A!RA#XHISE\!M)^.Q43O':5CL\/4F.!\.=YT3R>)@-HKZS[ M#7'+[*IY.QDDXY.3YG9ZG)Q.VMOA<3(=#<4-0N\V! ]'9Z_>3T\GXJH+C09- MK;_3XW$R'H\W(D!V=F,R'9PFX^/VR5T784WJJZP+;9J T3\"RV/_MSX!2,@0 MG)Z5M"Q8?E580 9[,M1FMQ;$;YU"M%<+]*K09^"OY'?29!W1PE-*:.N57172 MK-GKX[/76$!JG4KMPNA_X7E1.E]*$TC_7+^H[*!P4$B;@Y,,81V68F5]J/4X M1=V885Y;H*0S6\(">NL!'#Y :U-.@U>-R/YF%C9,VZ&=4Z2%^5W%@"+ZU08% M$-11VW!UKHTT*6GTA'C:$E6R=O&[]5Z@Y0I9YTK,%'NC'$TA4>WE[14))\'! ME5@CQ4+Z@[EVY"NPCO8X@F*3Z@2Y%LHC"&Q23CIE@+A5D:NZF'&^ M*Q-P*PO# ?] 5IRGM/J9^F[68-&VIP#/S!D*?,Y">@4M[ZX3%&2 MJ!CEZX2]H>T.O1*>L#E9Z-"\SRIX1 MI9G+)^LX63+[#@ASOB"H#<7"D7*(G>O0VE1I!O:0F'DT:0U4$=ZU;Z*$2_52 MX"H29J;JB+9)J]PB:4@64%M')SYI) L52S7Z?HEQL6[]4_%W(M!H<-8&9LI/ MAF?_Z*#HTGL5/#/Z=RUG! 1=M:5M'L)S4@03*J37F60DT%#@:^SP[B[BS/LQD-'2*5/JEF#O4S 9$ST:Y:)3ERA@G/#SK8USRH<-J MI_XL@651R#431 !@NWV,1EZ2#D+"7UH!$#--$7('M]K4K:2!0J9P9UEGT5%N2J90& M#6&?((6,(*.:>KCI2J?Z?.A"9 ,0,'L+#Q@3V)'8R8T533DK38EBEPL UAIU M0/6N WI?58]-QP"16,$CQ7P'%!O\WL/-S0%E' / 1E4,;#+1Q ["]UE J<:K M+4?C"!1G'Q:[Q?W3:7_:E"-:BFHP;"M40ADF9B([^;I#%*<(T-PE"#B$8JI! ME?]<0Y+-QK&=1QB"P8.+2NU.PK*(-H743/T&Z<+D^4#9+%U9;'/CK/8S'J E3&TF#W )NBGZFB M*CTVYLNHEIAH+5YO] >)%IN68$JS9A-!C6$(PG^N XA.%AD7VQII:HL"$+4+ M_PH6XXB*-Z-A?[2)@\EI?_@:#+Y)<(4R1QU?0W6H\F'J0.HO)@3+*%7BWC'3$JSDV5U#?K")K.F.W\LL3G4T\[D88SB,TY5'E&D/]DJ MH,/N.+5)G+MFR'Z$[J#]7,.@VSBB4GD7-SB.+2K;]\0BV6(-3CN/MS<4@3># M_C'780[C \^1Z,,^U/,\'[1I,35[;*:Q6G"SRVD>S_D8B5PKLT#E4=2J$D)R M6CK.;36E=$I,/5-=WU[5LU1[M.F4J?UE*5(Q3@WUE,XA0)N4S1$(33A2P"G% M#1VM]A,&=7 FQB*'O1!$75$Y*IK":_1;XH\)F[J;0QQ-9^HE59%UK> NJ6IR MU./11M\\.OU;39H8TLB&R*FU12X'\,V326-8MG?.\J],WD=[)N^C!BT5LX_W+#INQ_//7%_UBH^,<9PP=%+D M$+5YHJS.ZE[0Q'E>AI+FGIK:*6$LSR/"$IHGE'.HH-128C/ICGLDTZ:@0,40 MC@UWH-?S69-L.\1;IS=>5MD<54;IU?C1M/T,BM>13UNV(R7:QRIGF^65#\Q5 M'TD+9BEP B4,+<&DC/W8D^-I_]+^/7[G9Y_)O!%]1%C:#E:HZM*)O37CR0U3?!%OSM>V8#2CY?+I5$ M:Z<%>#^W0%]U0PJ:/X9<_!M02P,$% @ #X*+6&K^6(]C!P .Q4 !@ M !X;"]W;W)K2DGR$2$C$F"08 K:B_OL^"(D59DN-./=,O$@$L]@6[^^P" M9TNE'TTJA&4_\JPPY[W4VO)COV_B5.3<^*H4!5;F2N?<8J@7?5-JP1.W*<_Z MX6!PW,^Y+'H79V[NL[XX4Y7-9"$^:V:J/.=Z=2DRM3SO!;UFXHM%2&![*@!D&2]BX^S=P#\! M'&690U8L82)J)CP(-J5P>)NM?';7T8J$7ZF\Y,7*Q=K)J=G2.H:]TOD6FED0 MSU6&PD&.XT[;@XI]=,$[B$[?[-^Q=S9/X6U[!#_F6\HVA.]8,/C@#</1#?) MA88PC]W[$Y_]1O&R%D04C22_&W4,;%Q@2>0E)37,X3/IX /IE*HL<6 I_NNO)GL/9*;C+*U!DZ(^V423PQX=09)-(:,>.II1(TTTB36ZG MW;PZ$+M;Z+)=" I%!^.BH5Z!@TI%QX4@GMF&^:H.6X#_0A8[<6N7ZLU1Z*W^ M=P[CM1LG!,#D<6"Q;F?_T,J8 Z,;8V7N"M0.KQQ0(__=6;E"T0- -,.O!1R2 M;5'LF;KE7Y /'_R!?L,T@V\\J\0^-[]]J7CM_W4E7%H#WP V%"X$ M<3JHZH/C5Q_.H?F3DSV,H_!#7H&8;0_J[IQ6\K:AV[2VV;/G=+A!ZWTL1 S5J)S2!RP+L9A^OZ$ S] M8%,/WD7^<+M<1/Y@?[FH"S5W=XO]U=2C"X77&$V%064R<:"%FFC773E.0:PM M\@$T ,'":M>5LR_2/.XT%AS-^XQJJFMJ2@([D(*+I-Z6+C\8-DW16K;+$5=5 M:%2W-GKKCD/5]%D'U)!2=\%X @AU9V"?Z>-$_NQZA4(-O47)78[2=4;:BOAM M-TZ(5%PW +#6@6QSN[NIM#J:.*9$(?C3OH MXM#.^F#^[M.WJ4HZR;9K*87>7-(FGZ_\@V'.RU*K'ZX6H3\-PO<-C^=7$'=. M3LN]%]149.YFEBD*T#DJ/RZ"KJUJSVK'WM:"3[Q )^9ND(E"64()8C.12?&$ M(I#B\.L S&?2-8%M^K5]U)J94VT=.R+9CAAOU].TM.-K;V-DV\8U+JT;V?_. M.)= XD=,/3I4WER6C[#;W6D "VO?2B_\ 4$L#!!0 ( ^"BUB.N9V% M)P, 'X* 9 >&PO=V]R:W-H965TVX\05PLBXVBZ8;Q$[WF;9&%A&)5$G*KO]^AY2L>MO$2%LLT'T1 M.;>C,R2'G,E>JD>=(QKX7!9"3[W*=!U63)UN,)"[J=>Z!T5]WR;&ZOP M9Y.*;7&)YJ&Z4R3Y'4K*2Q2:2P$*LZDW#R^O$NOO'#YRW.N3.=A,UE(^6N$F MG7J!)80%;HQ%8#3L\!J+P@(1C4\MIM?]T@:>SH_H[USNE,N::;R6Q=\\-?G4 M&WF08L;JPMS+_1_8YC.P>!M9:/>%?>,;)1YL:FUDV083@Y*+9F2?VW4X"1@% MSP1$;4#D>#<_WBP^KY<0W!&Y=_$T+=-4 1<\ A1'<2F%R#0N18OIO )]8 M==2B([6KZ"SBGTST(0Y[$ 51<@8O[E*-'5[\\ZDV0,G30+9.+G7%-CCUJ! T MJAUZL]>OPF$P/D,SZ6@FY]"_A^9YH ]_K1:0P.M7HR@,Q_ ,+JQRA$P65)U< M;,&P=8'@TA)&@R'CM2PK)@X.YV*L(>."B0UG!7"AC:I+Y\DTR QHSVJJ[6[; M@(G43F)"8@:80BB1Z5IAZDP*-U*E5C"0,:Y@QXH:P9:KM=5*65)4=EQ?NDR" M>/R_&;]9C&<,\3>1[W&'!81?R=%7BJFG/VN%[M-=,YX"?:DX;9??] MU]L5NH7P0%>D>J0G+:OID!TMOT$8#7O#9'BB<:QS?#GN#P>#%[C^J M=Q3IDJBD8@;IP5V;XY(>7LZU%T=O_W.J*VE8\64!GSIN83#HC4;)B>:GCENK M>>K5\4]Z@A+5UG4^FE:R%J9I#SIMUUS-FY[BBWO3F=TRM:6K'@K,*#3H7PP\ M4$VWTPA&5J[#6$M#_8J;YM0@HK(.9,\DG:Q6L#_H6L[9/U!+ P04 " / M@HM8'9$31;,# !]" &0 'AL+W=OBGP+)E)\T2VT#L.5B'M0V2M/M,2R>)*$6J)&7%_WYWE*4Z MFVL4V!>;+W?/\]R1O-.\-?:;*Q$]O%1*NT54>E_?Q+%+2ZR$&YD:->WDQE;" MT]06L:LMBBPX52I.QN.KN!)21\MY6'NPR[EIO)(:'RRXIJJ$W:]0F7813:)^ MX5$6I>>%>#FO18%/Z+_4#Y9F\8"2R0JUDT:#Q7P1W4UN5C.V#P9?);;N: P< MR=:8;SSYD"VB,0M"A:EG!$%_.URC4@Q$,KX?,*.!DAV/QSWZ?8B=8MD*AVNC M_I:9+Q?1=009YJ)1_M&T?^ AGDO&2XURX1?:SC891Y VSIOJX$P**JF[?_%R MR,.1P_7/')*#0Q)T=T1!Y>_"B^73M.#R"K#B3Y"<@D@8]&^]+!1F>8O0:( M2=$@*^EEK9*SB'\*/8+IY *2<3([@S<=PIP&O.G_"[,#F9T&X?=QXVJ1XB*B M!^#0[C!:OGLSN1K?GI$X&R3.SJ'_JL3S()\^/V_@$MZ]N4XFDULX@0G/)<+: M5+70>RA0HQ5*[0%?/.K,06HQDQZ\ 7&X?MA=^PSX#6G G5"-""_*Y. )K#<+ MI.]O'>12"YU*H2 UFM#8MI6^I)I [_A[(ZW4!7BA"[E5Y&^4$IYUC&#=4]9B M3T_?.V8E%.=MTSUC3KM,V4M[2V_:@;!X%$C68""3&J9CCN-J#)G8.U:[E8H2 M5ES0LZ6BEK$*0N08-!;&2U*1 2FIW!";L732M>F,>\X1;%YJXQHB)@)EG,,@ M5*2I:5BTQ13E3G!TE2!-,L\I)I9&]HR[HP+(B*=21=0HTG+(Z^C5D55&2V^L M TD\>"3C<'('-4)G@1J=)QG2E7QVE"#3$A\"5?-_.0QG7 E-U9B3/QPH@4@J M@-AGA5UH(#S(H($J+"?.@$G3QH+94;!L9Y'; L>I9#YXU\)ZF39*V*/P!8GP M7:2BZI+8FUNSDZ$'_%-\OLNL.P.O36NZZE_##O&O-' M80O*(2C,R74\>G\9@>V:73?QI@X-9FL\7=@P+.G[ "T;T'YNC.\G3#!\<2S_ M 5!+ P04 " /@HM8 #@O.Q<' #&%P &0 'AL+W=O8(@?,]AQ4G=2UQ/3]+.X$Z") M[G21=,;TUW=7NA=@J)M.TGP!2;>[VO=#9VNI/NL58X8\9B+7Y[V5,<6;P4 G M*Y91W9<%R^'+0JJ,&MBJY4 7BM'4(F5B$/K^:)!1GO]H%49RS67.5%L M<=Z;!F\N8X2W )\X6^O.FJ D_YR! 3+#%(@<+? [MB0B A8.-+ M1;/77(F(W75-_9V5'6294\VNI/B3IV9UWAOW2,H6M!3FHUS_PBIYAD@OD4+; M7[)VL $ )Z4V,JN0@8.,Y^Z?/E9ZZ"",_0,(88406K[=19;+M]30BS,EUT0A M-%##A1758@-S/$>CW!L%7SG@F8N;V]GT]OW-Y8=K,KV_OY[=GPT,D,6/@Z0B M<>E(A =(!"'Y3>9FI9]$@4="/XR/T(L: M(2-++_HO0CH2\=,D,#;>Z((F[+P'SJ^9>F"]BY]>!"/_] B#<<-@?(SZ\Q@\ M3N+V]]DU&9&?7HS#(#@E>Q3)>RG3-1>"S%:,7,FLH/F&E)JEA)(O)17<4 P0 M0HM"29JLB)&$:LVT)@8PEC6Z7-C]^[M[",I"*L/S)2ES;CRR7G' XYKP/!$E M^ (L+' AUTS!)@6'5AN"ZN,)T[!80H #)M5(]U8^L&P.D,[T$:%YBHNP3Z:& M,&0JI89YEF8M0B+KR\R*&L(-60.U3"I&!/_,Q ;/33)_<\XX(JL=G6 MPM<;.<[ MKA-0&PJ_Z[SVVHICFGPIN>8U%Q\86 ?KE\P\9'= D%#%]@*WXM-F ME9-3\ /'3@;:3BILGB\4==Y0 H5=;W 7=R5KW,IZ;%&J9 6>7:L=U6MJGCP" M%JH$[*H-C)&2EWY_!"51""0*P;'R*O:MN6WI!.<#^Q@%M5];KZN=WW$%%^=+ MIFMAYU30'%FO6-D5OHF<^:9R/#H7K!;4LMH:.K;WM?N(0 I$\0!.0"NDW]A< M[4>GW_W_SF;C>G?3AG5]5#G=LPG>US;?7\RDH4*WQ<>EAG=LKDK,;2XUA VE MER08>_')J',P\>+127?O=S;AV/.CB-RTX2DDQN>3K ;ATR)\S?F.0-"Q6'FB M.M?MXNV(5?]O"]><^GM'/ZB@\7^UW/?R^L-PV%5> M[$6CX2%E12-O,O;)-$G*K!0NR1_TA%>QY\>3U]W]>#)^O<56U^*OQMXD/GG] MO2P]?9*Z5Q7 8P)B@GU&-PFY&2D0+85M(Z1%FM[MMCE] G,=E@RH$\30Q\YG M*$J%U.@MB!H,?]XPJLCOL%&0+PU4#8Z9?^IJU>R)6L%;*%?1/"(MNNUJZDKB MU;P6BL-,S%MVG]MLU;V4YAJ55E4N5V)0D@.VK%JQZ/\K0M_J_Z#;_F.*OM8& MC(!:; )7@>.UCMMQSOKLEIFOA/Y#LT4IR >^ #_*9(E=-OR#__UE&ZONX>&/ M,T531G(*'MQ4FB%!;VTY>4EB+YY,NA'IQ<.M",6$<10^V(&/ /ZJ;K&L#V,O MN.)%>VW@[_#15+=@OPZ>Q./]DCG:/WL*=S3 M,!EOB0FQ? 0^],;^:&L_\ENUV;:W,I.+\K0.;M-:S"Y94,ML>G,]+2'2P6Y1V4,".G2RP M$ZZ&,2=<#L-JFG(W6P"TRYI[Z71?.3'9ZK^C/F3JAI1-Y)TK]HO+CHFJ6W9Z M>F_+&%O?\(VB&Z$H?ZY9E^Z^$$?);\\/H>,=AIZX'GH\W)TT(Q#"P\&D_8SC M+[//GF+CW*/2?>V78$O:9?I)9K6=#-N9;8XON4TQ=K[ W)#=YMCG%Q:0;8C! M-PEQV<93=#+$@S8 (]_'@_'NP62/)'ZP+D47IC/I#(=54C@4XT^]Y TZ;ZN0 M[);V!1G'?E"@>V9M3IM'ZJE[FVW!W0OW;Q1G<9C3V0)0P73#'E'NU=AMC"SL M2^U<&LBL=KEB$)@* >#[0DI3;_""YNG^XF]02P,$% @ #X*+6%Z N_,3 M! (0L !D !X;"]W;W)K&ULS59M3^,X$/XK MHRS:3[DV<=K2 JT$2]%Q!VP/RIWNHYM,&PLGSMH.A7]_8[=-@PZZTFIUN@]M M/,[,XV?>G#E;*_UDK'+K M-KJ3LXJO\ 'M8S73)'4;E$P46!JA2M"X' ?G\H=^Y7TG7Q;@?PDL;KQ.,E/^QUYSVW M-Z"]]T%=^YR8BJIZ M4:Z 6Z DUM3W31Z],2V2$\\@2DY_VM/#.^AFY\8=YGZBJ+1Z1L?7-&^/8#A( M/I N:B$S[\)'UL?A*(Y:4K\_;*2K6I?"UAI#ZMHTIP10!-Y&;:<:$TXR;(LL M'C7B7-?IDPG!:BXD:N-!% 59PS/F(I6X)]0/1Q%KI$$8]=B'H4I8.(CWWE)R M!L.]]@T: [_0W9G612VY2VV&5-VIX/Y2;0(>A_T1:XNLOQ43"! MTP<.N'%U_!^4[;Y<'ZE8B,R#)4YORC,:Y2.65,^ MX3 9M*1!W-NA_TX!RU2Q/WYXO%^/>C\W79?MB M;YZ49!K"4;*7O#)M])H-AW@E3,JECV;8$A*OO9=92-.$J=#/ Y+.7U/&<^"% MJEWIK%$CI#G7*PJ5J1?&$CO!I7P%JX#F";I%5R$5"[4R ?I[):,O,UU\FCO( MG9<&!'E,30^OR'7'%VRJC/55Y>8EBR4O4_00&BLN]/;TH[@S:#G.6GYZQUDG M_G\[WGCM>FA-EIWWOH#=UMA2(!WKAC-#,2(ZFPFFV6WFO_/-V+-7WPR/M\1: ME 8D+LDTZASW ]";@6PC6%7Y(6BA+(U4?IG3#(O:*=#[I5)V)[@#FJEX\@]0 M2P,$% @ #X*+6%^><;+2!0 _@T !D !X;"]W;W)K&ULI5=I;QLW$/TKA)(&*:#H=!PW/@#9L9,4B&W8:?N9VAU)3+CD MAN1*5GY]WY"[*UD^T*!?)![#F3=O#G*/5M9]]PNB(.X*;?QQ9Q%"^;[?]]F" M"NE[MB2#G9EUA0R8NGG?EXYD'@\5NC\:#/;[A52F2J(..5-<+1[+@S M&;X_W6/Y*/"WHI7?&@OV9&KM=YY\SH\[ P9$FK+ &B3^EG1&6K,BP/A1Z^RT M)OG@]KC1?A%]AR]3Z>G,ZG]4'A;'G8..R&DF*QUN[.H3U?Z\97V9U3[^BE62 M'8T[(JM\L$5]& @*9=*_O*MYV#IP,'CBP*@^,(JXDZ&(\H,,\N3(V95P+ UM M/(BNQM, IPP'Y38X["J<"R<7GR\GEV>?+S^*R'%NF(\[(K18+3W MC+YQZ^DXZAO_;T^3GKW']7"5O/>ES.BX@S+PY);4.7GU8K@_.'P&Y5Z+/7B8#0<'HK'U8H/E5-F+B:E4YIY!MMA0>+,%J4T:R%1 M?0BF4,&+23V6)A&!\WW-H),>>&^CEC5O*+#1&%J*];7]V-UM_ MZL.[8'OBZV,J"YNKF:KQ-F>:W:Y D- WE5YW6:]+U$=9%='ZP"(9N]A2#QL5 M^W&U)&>X08D+9:2)0C=,Y^O&A:N+FQ9VJ2LOAKW]WR*+,";S7+ $>G>6D??6 M11:%EF9>H7\EA;:2)T_LLRZW*6K2W5 M2289@ <0%Z5R((>0U-OF@*BJK0ZWK'9!P_0;KA6F)B,7RLJ3SN)**=*J[".6BP"E'P76:)1&1](O]-KAIH;UR/I;.M/)H%-YS9'!W89PWTH\G:>,&IYC)?'99BK7!@;Q$(N2?!"2YX7>&&@ M"Z44J9!B[@DO/MD5@=SNAKJ%;!GE+ N!J9]M>(^2P08DP[:1K6SXHS=N4U ^ M](:3'3E2EM:%IF'%YP<2! 6 E5,AOUG&&0BE'5'I/ M(>: CWTE+L[:AB*=0S^(M-?8F>XV,^&7YWQ0/L;4T8]*<6^*)9AAXE/]=!'V M);J9JOM")OV"EU0>,Q#27LT-.F4F69MAV50F@*^YA^#_85D"'CRB\'BO:N!P M>P)QVTG( =#KU%,;M;73L5TL"6.V'FH^?(;U-4GWADRZ,+%%$DVGWON!H"!8 MO/U+G3/U!YPLF):-85A BO,0@:J?I,D/]CDE%J=!9+I)CYG,4ONI@^O53XJJ M3&R3W9W>&MEI;EKXHF!1E)9CQK69?X,5!!->FUB>4X*US=6$\I-W',V<\&H" M<^E-SMP4J!+U,RYTM_I25\2>&'ESN"YBTJ](+^E-P2]-Q%+ZJL94$CH/R)Q$ M"OYC=^%BB"F"^"J$DS;WYH;<)]X;VQ'J/?;NZV^]R5'5\_CEP46 >DW/\W:U M_;B9I#?]1CQ]&>&=,L=M@!*?X>B@]^YM1[CTM9$FP9;QA3^U 9&.PP4^T,BQ M /9GUH9FP@;:3[Z3?P%02P,$% @ #X*+6#2<4B/$" >Q8 !D !X M;"]W;W)K&ULI5C;#ZTM^=^>N+VT=C"[5G1.^+@KI-C?*V/758#IH7WS1RU6@%^/KRTHNU5<5 M_E7=.3R-.RF9+E3IM2V%4_G5X-WTS=2MK8_]U*_YU]AR^)].J]-=]U%E97@_.! MR%0N:Q.^V/7?5>//"AM.)\\ MLV'6;)BQW5$16_F;#/+ZTMFU<+0:TN@'N\J[89PN*2E?@\-7C7WA^OWGV]N/ MWVX_?/KV]7(<()!>C]-F\TW_*^Y%S?%LI M\=X6E2PWO.KLK11&)'@/LS)@E#0ESLH,1LJE4XK6>A1=6(&8DE:N=5Y8MZM\*]K7 M566T"[-822]*"XU!.2V-R'7)GD1+1N*3+5M+#Z.NR]34&7YXO2PUPBZA M2!:V)O,0%%H W: P/P0;XN/*&IW)#1N*=$*1\JDTDHR%MG=!H)IJ,&U74)P0 M_)A# K'5LJLYN0YE1J'46>Y F$4[)J0C3QJ8;]!#4*"FU/ Y9&:0ACX7^NA(+S MNR;7VATU^/Y:/&E489.+F;=\RXV@TP,\3S[ MZ-NI"W+C)$?:6J \V2=B^7%!9"@@JC7AF.V9C2#R ,;R!K^ZG]6P\7^ MG6D_]SB&-M]07?:_)4.!LFM85\*%SW2_%\8>)]0[WHM_\:6643<'P 1 M&J""IQ\C#9:TR( -:^>Y6)/:HX7XN)XL:">-0O[)'='^"2UHEOTYHYD&'(69 M@A"LL GO\N#ML.%>VK,HL0UJ82NJ5)$U[7[II>\"W!K, U28E6-G]-!$!]>>;D:G_FCOV&I.%V1S;=:DR&N(V M=':JB7\;%MI0XX-QL)E'2!RD3&S<3<^*DP_-0#Z@+B*>TU@H30O#Z*@(=LAA M)BHDM::!!YX\14C-7BKD/(YE?B*Q9E:'_C1 M6$^5W GH^0GW$N)DFY# 76C&]7%:@@OIJA&$3.$KOVAKF,>%)Z!,LJ7F+*C' ME&JCF3;1 77! T2TD@ #M<"NZ@43VV :"(2*ZNG1@N!1VM (A ^,HR=6#O?T M1M-;>_;S6Y<>.?*YIA&G243_*) 8O8QS[3">3 @)TI@6Y'T(#\4:QLL*KCRR M<@#T: (V2R);/6/Q/%H,B "R<63:VIPP,76:8\*=]O?0%CLVO5Y+1X#:].U% M?@P'H!?R+-Y%,)%':RFD[;&!S@FA=0YLMX5DD^J6E$:'+:3A"2CHE6"'\R'% MB42Q,0U;;KM\2F*;(-<5K<$@O"5YYLB*!I4=]LT4>-S&EJ5RI"PTB-WFGG#< MCT-8@3XZJS@ W2$AJSG"O8:!HHYQU;NG6K%4)7HPF*IUVV\Y\3AL*M4F1#.N!K-U-E"E'0Z^@"XV TB= -/VN?5]4J#0G:;X3W1,$*-U@?7J1K8>YW4$;SM@*B M9]U2(!I: +U6L_$59[D&=" M4$Q]=+T@71DO1N[59AM6IES"' ]M>9Q/ TW 0_/'45->Y="*(Q+OG:DP , M&^+=8/>VNUE]%R\4M\OCM>RM=$MRVZ@<6R>CLY-!O#QH'X*M^'HQL0%=F'^N M%-VOT )\SZT-[0,IZ.Z;K_\+4$L#!!0 ( ^"BU@]P^@31 0 !$) 9 M >&PO=V]R:W-H965T?>-6ZL M>_(%41#/I39^DA0A5.>#@<\**J7OVXH,;E;6E3+@U:T'OG(D\ZA4ZD$Z''X8 ME%*99#J.9P]N.K9UT,K0@Q.^+DOIME>D;3-)1LGNX(M:%X$/!M-Q)=>TH/"U M>G!X&^Q1)R&DE:QV^ MV.9/ZOPY8;S,:A]_1=/*IL-$9+4/MNR4P:!4IOV7SUT<#A3.?J:0=@IIY-T: MBBP_RB"G8V<;X5@::/P078W:(*<,)V41'&X5],+T]OKF\E;,/M\_SN]OKN]G M\^O%>! S->#K .Y:D'2GX",4G%G32B\N#8YY3\"#,!H3RO=T;I*WT3\2YJ^ M.!KU1#I,C]_ .]J[>13QCOZ?FRW(\>L@W!_GOI(931(T@">WH63Z_MWHP_#B M#8K'>XK';Z'_5XIO@KQ.\?[SX[48#<7[=V?I:'0A7K$DYD:$@H3A2MF%-+G0M 9"Y6Q&Q'>^ MOP.WE3+8#D=_],3-PP((&CA2:-GX6H'4 M&N/2!W']C*EHQ#?"\QWE#<(ZG_?$[>TL.M-=WY AUX:E2T K\FNP:^* \'0D MA"(Z"&*[Q88V\ S+_?P M\1ZC]1^,UBCU@CDZO?!BB460%2R%B 6'&1N)KY"\&H$''8=XY5NQD4[9VK-8 MKM@5+YI"0=6@7'@PZZU0\*U-$ZCP^LEKSK_)NY3X&'9OD0J6:E0H]LD*KF[' M_'(;(PY&4JRE_WVE."Z5;1"F2DL3#MS@D-P!$2[4GD)H2W5!%9*\A#PR.FH3 M&-V,*>1B0"% 6L=*B):T%H@0![[@H5@NV-1RB<^ MD!#:1DB$C8UV"9.EK5L[OZ2G_1-L :WA::\+8(.$0Y*>,[0I2T5SCC8<;T35 M465=6_R!ZWV/YB@CM>$>:UOG)8,>[B$6CP7M8#NMUE:F:TQY-@HK9&KH%/!^ME"K?C\4K("9A:ARJN"Q6HYE63&:ZDUY-@X\;S+.*2]&%V=Z[+:Z.!.URGC! M;BLBZSRGU>8#R\3Z?.2/VH$[OEPI'!A?G)5TR>Z9^E;>5O T[E!2GK-"+_DGK#KH\4LFN1/8;3]7J?#0;D90M:)VI.['^)VOTB1$O M$9G4_Y.U61O$(Y+44HF\V0P2Y+PP?^E+8P=KP\P;V! T&P(MMSE(2_F1*GIQ M5HDUJ7 UH.$/K:K>#<+Q B_E7E4PRV&?NKA_N+GZ]>3#Y?WU1W)U\^7V^NO] MY^0P NB WAAIVNH\<+_@JX&*=J/A)'R7I8T8>O?T5!+PQN1I);*459+0LJS$,TOU2IJ*4D>96.AGQ"#WN)S<9K0@ MQSB(.(%WJN=P5#_[I^\<0HL&)LM$0EN@V/,=AS\J.@58K8*:\@80DX/Z<;^/?$#/ )YAZ090WKY#Y9V# FC0#;?14K,W#EM($#=QF\.)BS+^YTKQ%IK5:BXFJ#$FD%&J'+ MND*S*!SOSM*GL)<2Y 7]\9:R#?'G^I9\$%4L&=ZCLZ-LZS%;#+ 1P0OG!5TH M, YD=U8A*)Q&);'TV*HGW485;9(%HZJV/,TZ#; ESWE&*R.\D(SP(LEJR'3P MHR^*2RZ-PGB#S2I2B.+WFF9\P6&'<583,G!9L(856)UV)U!+$$A5/%%HG@HN MWGK6J\UURI(E@)T0]%F.)=-X(J/)RMA?*Y&*I(:2JHS4E*SAGA2#7\N*,9P@ MCTRM&2OLF]V&)^(P!OIE65_49BJU'-.R,EE1T(V]L"KA8+@2Q -- BNQ]:1O*DHZE$HLRV($MW%+DQ4)4L M ULY^.2U3]J1CL+MM#[_$Y=@Y<9.VX=0K]X^!PX:IF2:QF4;<$(U;&<(^*.) M=3 X.T9.(I8%_S<(#N9 C4Q&3P2XGJ42<%>IX'!>+/OJJ15XJAT8D+= 'HF; M6&,BJ!C&? 5[48U3-/YD[NVF<:++E@CC]=C^99@JYL_]P;1C,_ 0HDF(CNI' MI-GDN+EXG9E$+4$9^>Z]SG]>>/JW^?N;YLPL/?G+2)=@=>@A_@3RZY5W#)L9 MO/PA]#^2XKK-=.W$%1#C"JX5LUL[]@],2B MD4^45^2[SH0W6^]T=@,@)+X315X'>$2BT)U%)':CB37H>RZ4*BT N$P['OCV M/M^=1&\V?ZOP%NQX'KVSX(*I&P5OAH-^:\&X+=MQ8*.%H)3_9K1#!MNJZ#OA M)+8-$+GSF$3N9-HW7!2VVF("/0@83$,;,';#$ ![UP. $Y]\AY)NRKM)*"8- M/4#)H&EG#PWTC1Y"B0!X@8[)!NJ)W^? MC/3VN']K3.\)TYUPM6+S:V>^?:$YCZP;FKK!M O!7NC-7+C?QB6._:#G^5,W M]/>%AV\OBMW)[) H$9D'/O9$T[0%6E%S/=DG>TR! 9?WX+Q!Q/[GI6"UH MQK:I;?9H6G'9ME":P)X@"P'H D2LI%5'M&'=UTDC;_+=3P-LF=EO( M!QQ)=Y,8W#:XG1(&8F2WPJ,__8]+_/^CM'>$]*WTN]T0^C;+"SUWYC7AORW: M?C#OKP&._AGNQZ[K4:_Z(YGW]I7_:&XO\V,WGKZ1]H;1K"^$147^B OL<4P=^-7[PNVO,'& M@)U#=0&[_88,(ZJ6E)L+>DT=>J\NG$$B,;/>C'CN?)=6S :JW+ZO"F/KJT_. M(*OAMRV\ <@UY@-0-]I]/KLT7XVVR\VWMR^0%(&(D(PM8*OG3N.1J4WM@Q*E M_H;T*)02N?ZY8C1E%2Z ^840JGW [J/BA?_ 5!+ P04 " /@HM83DKV M"ID4 *1 &0 'AL+W=O7>A#+45.@_;%13J=+B[V0I5G;U[1NR_UFU=5VQ2JE%_J M2+?[O:B/;V51W;\^2\[LBZ]J=]O@BXLWKPYB)Z]E\_/A2PU/%VZ67.UEJ555 M1K72]#GZ.<" MR:+ B4",W\R<9VY)'!C^;&?_D?8.>[D16EY5Q7^HO+E]?;8ZBW*Y%6W1?*WN M_R[-?N8XWZ8J-/T;W?-WD^PLVK2ZJ?9F,$BP5R7_+[X;/00#5M,3 U(S("6Y M>2&2\IUHQ)M7=74?U?AMF U_H*W2:!!.E7@HUTT-GRH8U[SY\.GJ\\?WT;?+ M_WQ__>JB@1GQ_<7&C'[+H],3HY,T^EB5S:V.WI>YS+L37( H3I[4RO,V?7#& M?Q?E),J2.$JGZ>R!^3*WOXSFR_Z;^^/1L_'1Z!$_Z(/8R-=G8/):UG?R[,U? M_Y(LIB\?D&WF9)L]-/NCLCT\^M/G;^\C.("__F65)LG+*)PM^E!NJKV,OHGO MT?OOX,!:1E_EIBHWJE "W4%'WVYE!%\Z5*4L&QU5VZB!-V)?M>91\1P-S"'- M' "T8]*;T1!YQ,'#UDDRCQX3B-1RXBT5C8RCV[0_W\@::?9RW_9_R@6BT,R M7+5U#>O_>>O^*'-9PP[M\[,HF<:KY31\D<;+Y:+[C76:1->-:*1[G<2K;!X\ M3QB!K]'^P?F.Y-Q7X.ZB/$9Y M6ZMR]W1/ILG*JH' Y(H44Q(1#,=Z6WY4H\!AMU%KK9@3R#)MJ[V #L@E0;D MR5$,^QT$H[9A:<7A4!SQ0Q1[:RP'AAVJ&FTB6(F>04EI\F^HB890K=15H7+2 M#L\>X-F-!!23797],5S3__NP=@K>K,I0WQO\8>0,.D"4=I!I'2\6T\[S:I5% M[_BPRHT$&]- ;_ @\.#^O'W^7-80CG:E^AT-&(0M*JU!F:7S5>C M #=R,;!D/\"LXOZLTM39[+.X" RL4]K.A_<#"7L]/E7P1)ZODY+>_LL/0 M88&!U8\+814_U.@I"2"XS;+I:5U_!GBM(01!.H2LT7D4F"S)X3=M/&&PP'SD M),'%@C7/DUGV9P=4M,+/(+8@*/L)L>8SM4N4QG$BAY#:FG;^'H%/MU2:Z!K^M57.,+L'E MSW&@6>CJ\BL0W%$?;IH7(![!2J-^%-:0-^P8[/6ZEEB_ M%<5-H2"MQ&4V3BV@0E7EA!5V& (WDHXJVB):'<$H->^")@05[=1-P:F#GZB% M=+$>WUC(5!RUR,$8= /JA4E[T1J.Y_Y6P5&A.H$WU-5WA3RE.$;/LO5D#EES M4.YP%F(Q9B48<@-0 DF]!,6 ?]ZJYI<\^(' W8*3OI-E*^%PZSL%8=$: MSX>OU^XT:_E;BS+"!'Z?M=S"5GOI%*CK(!2K$9!_%V!N$,A\?-71NQ[/3M9QAX=[J05 .+@3*J&6=UC,LODX5JT4\7VT MH0;M9*=**6EF<-/M%MU[+WX!-;__X&B4*.]&=[ MI!V $8Y"_%3M+>C&84'@9R!O#D/;$51&AXOP%=G:B.N##K,R^TR0.>9-5J M<,N [!HW[IM@Y:*3E13]!HTDT& M >[I2[QUAC2,LQX/+/'$36CBIW^ *?0$ MY:4#Z- ,(M):@$&_'XG$!(, H>VC3/5'*:ZZ5ZAQ W@;'.D';:E#20#Z(@. ME58\#Y#=0.%%@(M=?=6 O3 A=A MF*,V0H%^WF!%PTP/^T -ZB"FF..2M4%B@F!R3H1SX/;1+6@-!KG8Q"<=%AP MR;HR$1N!G;7E5MP!HT,,%9U$;22OM_)YJ4('"=STI8DD&_R0?GYS4FBM8G-K M2E3W%4.61DJ',!KJB"E"Z(00GJFY8R*#@^& U)[T+>-7,=LT"643-P/?('=U MCR?Q0-R_,F,& )3&>#P" PR:L 8RC@FO*5"!-BC)SZ7>U.H&;?&FNI/_[\C! M$& 'M;BT5WY+>IXUM!!+YAY%[TI;_&9P-<'W*5@\RL0A)JT\(/B'&#/A-/8X C@P2D*ZEJ.E$[DAKDS'1C[P M-!T&QS)>,^;NJ^14)XB_A-F]!&06#[@[:@^9 1JVJ %&P*1W2!X[Y<.@U_76 M0L"5R9Z- @V&,32$X!8FNB?IB#^/_W/]KXZB1B@K!BY C!(M!\ECD"7Z8DH: MKU9I\#R+UT$+"I]7ZSD> V"Y[C8FF$$:HCZJ4CO-T^: M_M3<:9S-UX-/WW\_J-HS10Q*;/T=PV(=.<#[/GGRB?ZNQ0-8^LB3C'WP&F+1P)0=+C!^M-X#S0(1%D0U2 M5FT!X,VE\C%FR55TK#'UNS]J&^0M72:25Y(+!-P@(2AYPL9,]2W,_0!]$,$- MH)3R>X/-]SW=?ICTB[,_^D+Z*#SUR5)NNJTD!R&39O[P6+4G\R%GZ':D?*K" M&79@Z_O(\U6N@!PCU8(O[^''@D.]241Y'Y? &8IJ(QJ?N/X\^EN8[':ZXE3E"M70[-ZQ.D*\B J"8*T4G4 M5)@28,QP 9;D'IK=P(V)NIN\+)P>'39$[)NE>F<&-(AIHIL_F,Y-L:;B4% M2K-MBT[GA)WH1G)"84[L4$$LAH=M+;AXA\(8!DFGZ7RVPF@E24*6.7Y807XY MS'T*]:LD(X)$!EV.OB4<%>^>Z:C)N_D ZPMVYLL-TAO8:G'L,Y@[66LZ\M[, MO>ZR,[4A01KE5PN?T_P=- >K\,)MZ9JLV/90FY;;\,3KJI+;SJXX:@M92 JH M'(^0RO4A$12V(.LQQA-V\R$]$501"^I3V!_@@VRTJT[UKNU0 &!CPZ*0,UGC MR;!*AX5#SHL<"">DKJ7S$Q*6BMA@$O>BSO4#K%N9T,S[].J&K8$V$P=/H.N M.DU"7/QJJN27)&H_4)@"BJ6P(9>KJ!]E>8 'SL$M )O$\D5'5TSI\%J6@9DQ M9^!XW:*65*OOI"@C"8 >0^?5)'/;Q\F>)7/_)D9M'CBD%4?&SA%YPL*//69G MB'"(Y"V&S'?*%X1/BNI!E#,^I1".\:K?O+"U%V?*)C$U'D?F&'!V9Y##DOHC MF5TD!AGQQ-U#0CN1VG7'F RP^;LF6-B-9/"II2T2< +00=;E@_;6U?WVPI- M&]SCSR/QGJQ?DNG^\9D_/>*W84MT'2^7(>E+LGB]F$77305G+;I?]_1X.=(6 MY[< S75K[IZ42,V'%P[&KE\E\6PUC7Y"R'"U8#4Z.AMIOR=QLEJ?[L!SG9*/ M>>221Q(OTG3D+?:A3L_))?)QO3[644\7:],U=ZO-?*:3C5SE2Y?Q8NIUGD[C M]6K\'$@@9M6]'+F5D\2I9C]V,B1=X(>1+C7;9<#$)$$0= M.GK;-T9E*;P3!?)7U3;%RU>..,8,) * MK&FY&I$6[0FD[1Z1^W0QNL-9-G8C:!G/9\$*^#R'[_US2'K'Q%O&R_786N"T M>#GBW9 M=2]88$Z7!IGLLPC.8>6? 3X/X@B,R=0W[PG656TR:7$ 9HJ4B\/$ M'AG5[[W6!/IYC1?R,>HYIP>4KKGU#^@.;L05-:*4("H_^1H#8#!!/WR,=*?N M$;Q>?:47^5U2IWQ_COH!COP0L7>B,3EGSN(3F"'Q])3"EVMLB&N5CU.0_A!A1)X7E!C4'@<04;PV MO\B00>IN^R3]"PI754[-\$%^@2HWGO5H9)\$BL,89J)Q+?Z0.C6C".&'-_ MS#7X3HO,33T+;4 1VS>D'WP@=;=2>E >,&_#DO/*U@S@B'OGCFT-3&T[UV:8 MV,..D(Z=5 N:AV[Z]U>'QA':A$V)L?C9;2)80^/4>.P^KNVS4L&=O7LDZXJ# M\C<7Q0.%-/8>3PY>V6KM6Q6Y!"_+=5 ](,*) W:R#&H(NL5D22'XCY\CV@=" MH\M#^_M 7 ^('J[E]I&CG;*K$#_%XA\X<\D-$"P/[116C#]8<'"9$P&=UNW^ MP,--R:=CN_TNW9'IM@=.KKY'(L^I]@/',5+DT*[*H7&_V-?GRI=JQDL__M8M M%H'\W*>;@"RN:84J,"' Z9A^72GO69$Y(]!-!?.[%!&@G9IUF"2=2 YL'2%O M8?#1]Y*\!6NYP_#0N5=AB@;:%0U NM/E@E#=Y$_6<(,&'QE5IS#WL#K=G=RQ MH^GEH9RHA Z/MU0\4@YO5XPEAC]/KB?E_^@%]J\Q=+D7U%US:=>*U+3-B M7S3Z!>!+Y\K\!EL7M?D^%@0 B%I-)_ER#HP7J\6]O3" MMH&Z^@49I)!E>+N&4$26H M;4.]EYQ-8Y@5^_<,IEB=@=%@/ERCHX],Y\QBFE%Y[/5-AV>&0AK'2$-1VDT22-Y+ZXI M[ *0N[W)4(=5!OOEH"$Z<@%GUN^&C=QW"#* M1]UUL:+[+ NJ,K7$7UPUW:^-T+?!G*@U4.3>7*H)RG.ZO[IM]Y+.NL494ST* M=#$?[7[VN&X@AKFXX5DJM58[M34N+H47L\+:4BA=4/HRU;.G5LVTI6I]XPLW M3-WM7)H&'"8%Y&:%JP%1N@ +J=J/*^"+>J1Y4+AID0&8BQ.FV,N%-\Q2&+/V M$K E=\[TY?*C3*PVE#&HF5!QFA<\>+^-L,_Y MGZ4"D^AS61Q'1W>UZ)H,H=NS3BW"@TK'P&%P%\%VXYZM J/N7K)TUW.PL4.& M.]:ZZ]R(>+;TER5XMG%]=_BNZF]S$OPZ'LY25N4+O_0+.]C^W_>,KZ39+3&S"X*\>F9ZEY('JK M[<4K$^B,"R*4^ZMFA@0AYKA?$,1W)A'MI1JAZY7=8_Z?&/0W;S]TLZP,;"XV M56)[6Y7;''GWCGNWI11(:1&2+_>4)F$US48["28XIE9J;_\?30)$JJIS/X>O M4( %L$;Y#+D/^H=.9P#4'W;/T)1+ D37Z(WL(T24&6;^K M^_"EFB%RT*GALOI6<%_3F!;^)+GI5D;/IAY8G&)PRTDOBOK!,&1V*I[:1LOP M1"9C?Q?@(OC[#'M@3_17*-!V0?'\IQK<6_>'+B[Y[SOXK_-?R?@HZAVDDK"U M+0R=3I;SLZCFOSS!#TUUH+_V<%,U3;6G'V\E '6-7X#/MU75V =

\?^<# #&"@ &0 'AL+W=O6F;!&BZ%.L![8JVNWU6;"86 M:DL^26[:?W^4G+A)FQ7#K??%-B7RX4.1HCE>2W6O"T0#CU4I],0KC*F/@T!G M!59,]V2-@G:64E7,D*A6@:X5LMP95640A^$@J!@7WG3LUJ[5="P;4W*!UPIT M4U5,/)9:?:?P-\>UWOD&&\E"RGLK7.03+[2$L,3,6 1&KP<\P[*T0$3CGPVFU[FT MAKO?6_1S%SO%LF :SV3YD^>FF'@C#W))DOMGK!N=6/R MF#7:R&IC3'+%1?MFCYMSV#$8A;\PB#<&L>/=.G(LOS+#IF,EUZ"L-J'9#Q>J MLR9R7-BDW!I%NYSLS/1J?@<75V??+^=P/;^!VV^G-_-Q8 C9[@?9!F76HL2_ M0(EBN)3"%!KF(L=\'R @2AVO>,MK%K^)^!<3/4@B'^(P3M_ 2[HX$X>7_&&< M+4IZ&,7>D&-=LPPG'ET!C>H!O>FG#]$@/'F#8]IQ3-]"_VV.;Z(4.> Y"XH='>PLC/T[3=R?WTW4G>Z0/J*C9 M@FBJ!6644K4Y6&K8VM"ICGUPU'R>KGO#Z,^S)=+ MZL/.GRT58&NF*(,V9:\L#J <'0"F<_MO86VK^T!@_71T*+!H.#@4V%'TFM:? MOJ_>X\J]%YG97@%\A+B7QGMBTM_?3>#KB\-U6D?[8K)O%+HR.'_9)KK^8.^3 M[V)>'\ZWWDEXC@85_2A)R?[TVV33C]\5LVL999.C0T-7D\Z8"<,[S;9"96W' M!NT8$# E(+.>V\U&<#+,)-&PE<7(TVJE<,6H#1'<8-3WDR0%'XZ&(W]$7Q:E M/PS]:##L2G-I.UU%+!VF;[W4Z*:4\JD'=\1PRZ%@.3%'E7%-94%,R/RY.JC_ MV4ZH':0-;'LZ-&;=4SDY@QU]VY"=6EV7/',U]81,]>#0/RS8F2TJ5"LW0=G0 M&V':,:-;[8:TTW8V>59O)[Q+IE:$Z.BW! Y0P M !D !X;"]W;W)K&ULM5?;A=,$L+776-J5&EGJE0K3C3F?0 M+AB7P>C8O[O1HV-56<$EWF@P55$PO3I%H98G010\O;CE66[=B_;HN&09SM!^ M+V\TK=H;E)07* U7$C0N3H)Q='C:<_)>X ?'I6D\@_-DKM2]6URD)T''$4*! MB74(C/X><()".""B\7.-&6Q,.L7F\Q/Z5^\[^3)G!B=*_,53FY\$^P&DN&"5 ML+=J>8YK?_H.+U'"^%]8UK*]7@!)9:PJULK$H."R_F>/ZS@T%/8[6Q3BM4+L M>=>&/,LILVQTK-42M),F-/?@7?7:1(Y+EY29U;3+2<^.)N/9.4PO?EQ,SZZF M,QA?36%R?7EY?06SN^O)GW![=O/]=G(^GIW-CMN6##JU=K(&/ZW!XRW@40R7 M2MK"?B-R9#Z$8MB#MQ;P=>=^-^U^-U?X_[-7CO M;7#73X>F9 F>!-0P!O4#!J,OGZ)!YV@']=Z&>F\7^D>I[P:_NKX[@Z@'7S[M MQU%T!/_#&%Q+F&%IL9BCANC YZK;@K'.F/1XPR,#<\5T"FH!*=?4H$H;X#*A ML6(P!9LC3%11,KG:*/RLF+:HQ0H29G)2>^ IRA3F*\+_# NM"MCKA'$?K'(/ MW0Z49-_D3*.SDZBBH"E #97< Y-IBP9"HG3*9296K:9):J\4:>!DE6!ZJ]V2 MK6@V6>.PWS/')5R3CRX>+A;./% E$_+*%W((=PWS3!CU2QS(]YT14>#4WS]=1>!V^*_50 MUS3%(WHC9KV7!IYQ4XB[G1:U?<- $YQ*40B@E5-WQRW%5]^C;0$=NN0UL"RC M8#.+Y"]/?/182:X_%,%>;QA&!\!*CZ@3 M;IYTJ0+:;H<]TC%I\UP)U[\N.:0NUP>]VUD34*5_\X1B? DI EY3^&/NT\.6 MKE8,6BO0E^Q;';$]NU%KO]]O#6E<;LMOH8S]6(('^Z^3UAV$P^'.I,7;*??C M86O8CW]?0<:=L/>*[WXX>%%D=*O:7F&5#VRWWXKZS?*R[H2H:&S6^:7VK;/V M"_DVKQG4,Z^.FU3;C2Z1:M?S:YBODISDF#3,%R&!7]# K3*ZP352<2$7HB[P M6TRKNES'B84E-8#AF21,+@E5L&4+ECDG4%IK1;*.-D2?R3??#ZX%7+IJDLW4 ML@4-8YAB4@^K]64I_E>\7TWX=7TWX!TIJ2RXE&K.1/C6I:7=N'H6J#-_P7;= M7$E;WT(W;S=W^'%]=7T6KS\ +IG..,UT@0M2[83#?@"ZOE37"ZM*?Y&=*TO7 M8O^8TW<(:B= ^PNE[-/"&=A\V8S^ 5!+ P04 " /@HM8:5U6*^\# @ M"0 &0 'AL+W=O@G MU[+EI$D3VT"V1A;".*IW<:NM"BRX%2H M.!D,/L6%D#J:CL/:TD['IB(E-2XMN*HHA-W-4)EZ$@VC_<*]W.;D%^+IN!1; M?$#ZO5Q:GL4'E$P6J)TT&BQN)M'-\&IVYNV#P:/$VG7&X)6LC7GRDT4VB0:> M$"I,R2,(_GO&6U3* S&-'RUF= CI';OC/?K7H)VUK(7#6Z/^D!GED^@R@@PW MHE)T;^I?L-5S[O%2HUSXA;JQ3/-_>)F]ML<%G>K M^?W\807SN]5B]>?=]-8?A.7QX=YD,A]?P5CA8:. 25-RK M7('A90\H1[@U12GT#FKA^/1C@1F0@36&S=)*W]H\U;B1J?1CLP$!CXLY&P@* M;B5:?YM(O6V=S%_[C1EJV*TV--GA1G\GS;9*A%<&+270EA7Q<7#M O>4\HO4$ MAKYK>X;KTF4IH:FW%&U XDM8B^!D;)S//IP])*GU#S8H/S MW'#Q !6K70M6[\4=(T N,@Z.^I@_J5^M3#=@MRS$"_[K=0X*+H%Q(/IVTZ[5%\M+Q1R6#9Q^^5.%0'!.=]%[4W]2:T^J3 M4VFQ5NBS8=8D6CD:6;CSZ?68M-M+8,C]66R1FJ1W:VC1%R#4'20O21O$*./^ MU2*GA8>\2]WGU_T?_,3XU2H7:\4.%]TC_?+P>)@LC*==4) MK(W^&,ZL82L6)35Q@ATG[K5;,>Z\6@7:;7B;?8V91_. '58/S_]-\^H=S9MO MAV_"=N*)+S-C)_S)J&1+?$;SI7Q4-/);E907*#27 A0N MQMY5<'$=6WMG\#?'M=YY!AO)7,JO=O I'7L]"X0Y)L8J,/I;X13SW H1QK=& MTVN7M(Z[SUOU6Q<[Q3)G&JG)AM[0P]27+ J-T]R_1&;>/I6+Y&Y=K^P MKFW#V(.DTD86C3,1%%S4_^Q[LP\[#L/>$8>P<0@==[V0H_R+&389*;D&9:U) MS3ZX4)TWP7%A#^79*'K+R<],IE^>9P]W-T\P?;B?WMS/GJYFGQ[NGT>^(7%K MXB>-T'4M%!X1"D*XD\)D&FY$BNF^@$]4+5JX1;L.3RI^9N(,HJ +82^,3^A% M;:B1TXM>'VHM%!\6LG5RH4N6X-BC0M"H5NA-WK\+SGN7)S#C%C,^I?XGF">% M#F/>/\QN(#B']^^&81!D)/&)56Z M@77&DPQ*)5>2'%Z5%H);KA.6NW3I[@PBY_TR#KOD MIDMT]T&^.8/;/_(]M!--0)R,+)Y157WG_"<^A>XHA&4/^QV;VW5PP8?CP?V2 M]Q!2(;4!S9>"+WC":.GZ,J'==P=$=#KCI45/\LKNM]@OU%+\>LW>-K#X)%A]V::6R>;2/M,>TJ#W%GMTZ/OF M[W0?M.K2]5CVZT!G7#=T#WC&UY$)#C@MR[9T-^AZHNJ^J M!T:6KI>92T,ANL>,6E%4UH#>+Z0TVX%=H&UN)S\ 4$L#!!0 ( ^"BUA5 M%@,-CPD .0F 9 >&PO=V]R:W-H965TI3O90E5J:Z M6H@&PVHVJI>5%!-[:%&,6! DHX50Y>#RW,Y=5Y?G>M44JI37%:E7BX6H'E[+ M0M]?#,)!-_%)S>:-F1A=GB_%3'Z6S;^6UQ5&HPV5B5K(LE:Z))6<7@Q>A2]? M1V:_W?!O)>_KWCLQFMQJ_<4,KB87@\ () LY;@P%@<>=?".+PA""&'^M:0XV M+,W!_GM'_4^K.W2Y%;5\HXO_J$DSOQAD S*14[$JFD_Z_A]RK4]LZ(UU4=N_ MY+[=&V+S>%4W>K$^# D6JFR?XNO:#KT#67#@ %L?8%;NEI&5\@_1B,OS2M^3 MRNP&-?-B5;6G(9PJC5,^-Q56%)U2X(=(!$R\EZ7S;PF;\N)G.P2&$&>C5"L$^HU.TKQGZ(\)3RDA 4L M.D*/;Y3DEA[_&25;$I&?A,F-E_52C.7% ,%?R^I.#BY__RU,@K,C D8; :-C MU!\GX'$2'S[>O"5A2G[_+6-A>$8$E$2 MO,IJ6:E:$B0\N9^K\9Q,5#VN9(,I58IRK$1!5-G6 Y-8JB;B3JA"W!:2-'/1 MF!EY)XJ5:.0$W&:K0E3% [E]P+(D;\!4E ]6T/2L)N.YDE,BO\KQRF0H))FJ ML:PHN&M#RIQI]Z 45>!9SI!W8V7KPD)\,5M5B2F(C@PQRW.8O]%$%(4>0PC( M4.M5-9:0M)R8S:*N95V;K2!I52G'\I3<>,2#M7356.7JK07'>E:JOPWE.UFN M-H3'JPJ:H&*"/"6B@C;53)B=EFTMEZ(R MVNP!P2D%6I0.]>-<;,TZFLC%L@ M#0JB844:*1:@U%8"6>&U$865P3 T<0A;&588+<2#$:%83219Z,HZHR3P;\]P M:Q5.R97Q]'JTJX6Q=R4+Z[RQKAL3&MV&5J=2-F91S%#TL6X=I"L8&<$T,5S$ M0J_60646MVS&4MV9#696]27H-#DE*+;D3T0Y508O[!")1AM;0H_ELM)?E2&$*!T&IPDJ;5'8I@$20W::=1/4A-)2VE92 M/!RRHDD=HZ' BW4C3H(/G*#TI";(+S1 !5Z=F1&KG0&PJN\4ZFB7+JJ

H$%U(7$DRS:Y ML4FWZ7Y(['MY.V9M$ANZ+#C["%:5?4=%1*M<+4J3AE*@JJUA2).0)L=F5YZ05Z(5+'%K%V3J<5%\N:CK.EBRG61H>-/=)C_0) M1.BS@J!1&N\I?2M-F>XX-N+K;O1F-.Q%S7!?V:%5,^F-3[ CSI(M5Y#($;A7 M&P:=GY^L5" #8^C] 59$,\KC[,D8'GJ^ B)JU-\M9$7Y "00Y4RA MX?2][98=GK.CZ_X3?QB(C>YGN>V+$K/4DRM!ZDE23_ZXU0 !&7)R79G$;1XH M619BW>?E7RNU;+O^9*+\.1U2EB0^>4*7TW[]M&GKD2>-78I/_7RSJBR8-E"_ MZ?N89YS&0=:;B7,:LGZ.FPK3=WL8!#1)^TD>1RGJ0K[A4BAQJPIEX))KCSBA M>1J[U@QIYBO8-,Y#SVS&7!*HQG!?0-YI/;D'1'6/H5.EKC-RM HW"'.WAN^' M]T:GC :H:;;K[YMXJQ]425U5T@3!Y7:1!-W;#:8PX#2/W/DXSRACKO6>Z_F$ M:(S_#!KC46(]MYT![DE[&&-HN@7;V>'6N"B.;1<\",98FM*H!Q52$R];)NCA M+#J,Q7B2(=\.8#&SQGNP+J)IKQ\SFN^%\0X62RA/PA_$8@Q\W11,:1ZX>0.L M&ON"&;C74U8CFJ!I?!\6BV)HZF9V0C,/%#OAB0=QG;3RN NH3 DJ4Q^*[6(P M%,B]W-MQWY90OMT%[ BW?1?VRG>*WG!/N:%1*WC1'T,A'L0]Z(5@AW>>$WJA MO\)-SP.]D!J><'OJYX]"KR3L-^DPC([N3OFW8)>GXX5HS"XVC;@G1YT95)KL M9V!7%/M^,J6A1\K,@Q+ 'G+D=O%HLA:IL ML3:0Q%-'#,!S?\0F'@0*RW#?I9R;ZR?6!!Z\AXH1!D?P M'LI=%!_5I3].^^?B?6#[#@VM1FG6 WPI#1+VS("/Q\\% M^&)4[>>_>GD [\BMF8QQ&K#T%\5ZYA; <]F*@AYX_E&3 M0$//U2(LGV4ND3CF--YV3-]W+J/>ET<+6M5^ MN;3=WG[_]5Y4,X6\*>041X/3-!Z0JOVFJATT>FF_8[K53:,7]G4NQ4169@/6 MIUHWW< PV'S8=OD_4$L#!!0 ( ^"BUB,-]K5W 0 , + 9 >&PO M=V]R:W-H965TM;5U\RR8&G#1! M7>2&Q-L^T]+(8I<279*RDWY]#RE%<3;9 $5;H"^61,^<.7/E'.^5_F8*(LL> M2EF9DUYA[?9H,#!I024W?;6E"O_D2I?J92#:#@<#THNJM[\ MV)_=ZOFQJJT4%=UJ9NJRY/KQE*3:G_3"WM/!G=@4UAT,YL=;OJ%[LE^WMQI? M@PXE$R551JB*:HOPZ#1Q\E[@5T%[<_#.G"=KI;ZYCV5VTALZ0B0IM0Z! MX[&C,Y+2 8'&'RUFKS/I% _?G] OO._P9=V/( ML_R)6SX_UFK/M),&FGOQKGIMD!.52\J]U?A70,_.[[_>WEZ>7YU?KQ:7[&)Y MO;@^6^+M?K58^5.VO+ZXN;M:K)8WU\<#"XM.;Y"VZ*<->O0#]#!B5ZJRA6'G M54;92X !J'9\HR>^I]&[B+_PJL_B,,$K>P8L[_V./%_]'_C?HR=OHKJ.. MS):G=-)#RQC2.^K-/WT(Q\,O[W!/.N[)>^C_F/O[Z-4+#^,N_]O3P#IHMJU25Q"Q_2/ -D M<C5 M:1@&LV',;EO;]("); [LCH-A_*R5!*,D;$/^/5(2S";1J]-Q,!K';*4LETR] ME:IG?^)9$(UFAP?3((Z3[F#9NB:H2[!+KW[A?T$R0[8UJPTA&#[Y2F>B<@E/ M5:UQ#*5U;5"2QOC "\-V7-:H%A2'4T"I@"C$4N5L:%:AT' M2?&GSY:7[K-% MFFJGU07M?UAV3QRW6OV.R\I[=!CT9!:$!PE&54V"))EV>BA%YQSWU]PK,V$0 M#<>O:PJ5.AVS2\*-QJ3@:R&%%0=%U>D'D^@-=93,Y =%-@W&H^2U1@25<5ME M_/NL//LV#6$P?.G]]*"G&IN7"G5Q4[$KKM."37RRXL#G\PS1X-4CKF;4&VY, MF+$%4BLL*WC&UD38!=A.8!TH70UP'S])#RS5 O*@YUI=E2*ES]XEW2!CR<-!887X2@^;@&*J$W!;#<92)2A"X7NO2F MC.\VD.05?C-":#/7Q.@TMT2E?NX8*S9-H;3ECTDFO)@SX@XHAX+U[#'\U [1 M]FWBQF'#W#8Y+)TO71>YP* IVW9U1RCG'.T+6Y#.B4S@>W0O;,&ZX>KP*0M\ M(K;0>!!N3LA']C'J3[#P2.FX"B>;NTVN24,SI=HAS&&RL=S.$M?B2HJ,.VEC M\2BI84I<5^ATXZ?/A3 IF+D^[+]U&P\.MJJ2],;OCL8GQ38+5G?:K:>+9BM[ M%F]V6Y3I1E0&:L\P30@, "D' 9 >&PO=V]R:W-H M965TL:S6Y.4F^F41H=%AY%63F_$,\F#9:T)/?4/!B>Q3U*(6I25F@%AM;3 MZ"Z]F8^]?3#X(6AC3\;@(UEI_>PG?Q33*/&$2%+N/ +R[Y7N24H/Q#1>]IA1 M?Z1W/!T?T'\+L7,L*[1TK^7?HG#5-+J.H* UMM(]ZLWOM(_GPN/E6MKPA4UG MF[)QWEJGZ[TS,ZB%ZOZXW>?AQ.$Z^8E#MG?( N_NH,#R,SJ<38S>@/'6C.8' M(=3@S>2$\D59.L.[@OW<;/DT7R[^>EI\_0Z+'_Q=3F+'L'XSSO<0\PXB^PE$ MFL$7K5QE8:$**MX"Q,RG)Y4=2,VSLXA_HAK"*!U EF3C,WBC/LA1P!O]GR [ MB/'[$+XW;FR#.4TCOOR6S"M%LT\?TLOD]@S!<4]P? []OQ$\#_'UV_<%I+_" MIP_769K>PK\@8=FN++VTI!PX#9SCEKNP3_, 7$5PK^L&U0YR+JA0+17>U%#3 MFKSBNP^V0HX>]!J$LVQ5U]Q9?$GS9V ;VV('[J&6WA0>C[X/TI?U+GC?-49( M2-^<7: CO^?'$JUCH3@2-J@LAD9^2[3"XH1? 1>#RR0YT+1"Y00[0O,+J6( M*"4P7^_O58W[R#R3&P!K&R K1%D:*CT+9I<'+M@T1F\%=S_)'7Q,AB-N0BD# M#7;Z.!X/KZ^@(=,=.0#:YK*U+#3>.ZR=IH]W!?\<;H?P31VRD+Q3@5#&JUL+ M:)3Z1KYI,&43:WR[FW"E9O]J_ W>=_!W-NT?D"YI2* N2 MUNR:#*\N(C"=,'<3IYL@ABOM6%K#L.*WC(PWX/VUUNXP\0?TK^/L'U!+ P04 M " /@HM84E#H\Z\> !28@ &0 'AL+W=O[$P-WZR:=JL[^+5=/W:[UNB2%FVKQ^>GIS\\WFI;/WKU$WUVW;[Z MJ>F[RM;FNE6NWVYUNW]MJN;AYT=GC_P'-W:]Z?"#QZ]^VNFU69CN;G?=PF^/ MPRZEW9K:V:96K5G]_.CB[,?7YZ>X@)[XU9H'E_RL$)5ETWS&7]Z5/S\Z18A, M98H.M]#PW[VY-%6%.P$_^EI '9);:F<$-Q]$4+[1G7[U4]L\J!:?AMWP!T*55@-PMD:N++H6OK6PKGOU MYFIQ>?/N^O;=IX_JTUMU^[[CU6*A+CZ^4:\O%N\6^,WUS=7BZN/M M!3WYW753V<(:]_U/CSN O=Z7,B)K_G$\R,GGIVK#TW=;9RZJDM3YAL\!O # M#N<>A]?GDSO^7==S]>1LILY/SY].[/U4T==D7G5-@2UJ- MFSC8HFWZ]499^/AATU357C4/M2G!/"R=+:UN0;IFZA<#QD)=-P^F58N]Z\P6 M/GS__E+INE1ZM;*5U9UQX>!?KA?^V)?J%L"\:9:FA3,NF^U.U_L!G+;&UGK5 57 )"%NS= 0K!HIFUA M2=YMB0>J55]5JM7UVB#S3;T& MQIO6UNL9/E7TK0$SW, "=2S8&_!F)9[&FP <()GP-(#4+\&DJ;X#[G8D>_(("H4RO_>6 MP73];E=9/ !;I#1A*II"PMPKVR[!8FVW48YNZ[M"K )Q[6X#5-+GO'@>HHX M534%,=W6A.Q=39*WZ%CB$H[>S1>>F]\SZVZ,( %<>M<:DCPO;?)[)J?)_O\ M0I?-=G# /^910A-! 3S(8 %>B<3@HV?/7SK!%8@-N+7[R#Y8U;0=:@)\MD8B MS(,8@B(R#K+,B@AX<9K:)8KJRIJJ3.1EHYE?L$#5$" P+[-]2:7+TI)5RJ14 M=7U;:P"O+N$+M^F[$BP4LQU8V(( %GNU;98@,/\2JP914HI!8N^B% X8S,9" MNPXP6R?V%=DK7 (LMGH?!!J_7>EE"Y+%FE::"M0?2(V/6T!.5Y7VMAILID%: M;G=-37+G^F*#QF%G=Z1=;%5I+7+5@3JK>_C?5"[R!XS5#.RTA:7!FB^]!X#- MX'NP;JM6,V5QCT53]4)5A+C#0 STI*\%;M30;$'@VP%?O;G8ZAHBQ3%CDV&- MJ*2,3 U(5-49<:)2ZP9H5P<3M#(E,"W[.-J4U)805A]L>1+\QB$#)_SXL^#' MGTVZWM?:68=[7K/*1107B7VY* H05#*7/C0;\_+_1T>1Y1V:@95U2-Z]T2WX MC!(VKA5$:CWX1 C6R)-H$"?\7DQWZO-6%GF'2N30]+')3#5 ,Q@$KX0@7XDE MM+J'G\ARH&P CF#7 9%N'ZSDK^^N@H4$7H,V@\C@MJ6)T"%1A/VKIF_!BO\. M2*$O%LY[E &"B#!%IT_4=\X8];'IC#I[AGX?/&OJ)PBP0ESP4E]I(2' M$R]4*N"U.%\Q:? !T \<- .GP5PP*Y!8AR;:4>94H@C@)J#'-;D(,2E1KU5I MG5ZO09/(WXVYEP@GGX.PH-W=]>VN<8:@V.K/^#%1LXZ&&#X"1EJ,2=R4;OX0 M=/.'286Y36]Y 3%7W& T4#0@6GR#7\OC*4\3-Q'J3+=F HI+2LOYGAP9+82P%UY!_V"^F/!'.XP<( M_@G0\ 1U!B,MLB]6N!A!#;A2O'-$_O#,2,VR#Z*"H-NZ)RP3/GN&>H&2V 0] M3HO@24H06'GCD5NU$&"GN(S2ADR:Z(41LU"J==LXLMDK"](^X(UV49+P*V_: M9Y&61>/8?_:4'E(,&S;OFH[#;8)&GL7@;BUT<-U)UYS@_TKO8'?PVZ#<*P $ M8Z9](GU^TT HW)#!UA@H=Y2%801(;DU1X&1W!$:%*&+ D>AUZK4>+*:A03]) M_PAR6B@>.?H$X+=MRNAD;(=Z8]DD62$"+J'E>HO1!/A4<+X &N,!'FS(OQ'1 M"VP<\N4!E3C5R5$N'2K_6\PB8+NILW+2 &*<#V/L0XX7-J7*)Y^/I4EDH:WO M&Y2\'>Y!>;;YLC.EE5S,NK%OD));@B5WVPU*GR87A3 M&18\A='>+*$%)CO#4$4S A2+"0(YP2!>A>05XX(.\:^"M3V,'4:TC[B!1@L@ MD-H)Q5=:H0I4QWP&>APP9)@=;;%2L:N(IUOKQ*![FX$"#]CUE%2@]4\M/R9V MYHMU+.M[@J5N.K2KR 5 !R(BD&?@)!8,1,H1=O.EH_RNYYQ,< $!UKTSF?(Q M2!(\D\QC^8B.H@C)BR>&NYN4,%*O&#)>Z*&*UK*HX"YK*<:X)C(Q5#= 5 RD MJ(YTVW-?+"U#. 2$0[D$E=_@9TXGP LAW<<*LAG8N& M%4P4N>NR;[WW$3.>^9-$'P'?PK9%OX4TD7(E<]]4]]'D DRD(9:+'/#T!@N9 MP5^X G(#'S84F=\"&UM4VF[9/:/;N)=.F@LI!8B=([T&2SWDG7TGDVQE)^TVC8EY.;&$R9(5D[-PZ/AY#1:2E2; M];\C#XRXL*\UQ'=4%Q/%G;;^T4/&D7M-K;L4.X_E _!=V9#*Q(VI>CR^ .* HNLI M@'9=!C^*QJBY"7Y@U/>@EB'K:Q?B)8%-BHD6*MF]PE88?MCT MW0Y,-BP"6X;EU;K8S]45UDHSBRD(E&:%57AO$*63(?$3,TT/DE314:I]5E%4 MQZAUP30%F)SI0LWV2'0]2$YV38='!#/"98*#0Q*Q\,$OL),VPCHPQ0:CID;G M&^VPP<8P@A!!-NT.MFO$9WE^QST'S M;!$VC,JX<8F!1R#E)XPL^M:!2\XC%F2'Q ,#E,P74_2=F8I4C\6E%BT1]C:] M5":R(U8]I*?^N+HAM>4PEORV0SKFGAO;P=2N03Q;IZLL$B62( N; FQ5/ )L M$Q;("2J' 5IN-I(#H]0(-K8QLK; %I*YEI+!%368ZX[VV7 M#S$A!H7$M=C'^O6ZKW2+M:X=G^_-J\L]-?V:EF;$9;-.H63HMF87S=-'HCE0J]'W!NHQ:-F"N^)&=LV0 &Y+\H%9J, F*;#?^K)*(^#*-7^KYI0Q2- M;+1FE<32NL+$4#B9IF"QB80\^DJ(RWFSRS8@^OC*+;-YA?HS7?8=9AX!X_L8 M!.;U2<)+ JF9%"8QY][VV)NZQRB^*S8G_4YM#9P!N-Y)]0 (QA_)< '@4K#G MK1-,?* XG5E+L8IMF!011!0D2HJ93=PZ*SG.0Z.G/)9P>\.2QU@^?@B^CB+_ MI- MT277J[9(K\I^)AUCG'QUU _Q[,!FV:.G)T7/E*_8)&3;SPB[XUEY7@B- MM62F#/KC:$#'4J/R:$0[QP2;?[_@KB,^_=YR>?E8,[K#+NDZ8:T'3P:(]J25 M2Z&'0__!TDG^()B#)6H5:PM-7:'QWG",,C"OR7"0+U#-U0<2Y(/RVD[O6:%& M:U*4VWL+ZL.;@7C8K*]:TK3>,I;Z4)51]0017!Q#W3@3U>]0!,I[8B&B2ER# M,W PQE; D:8.7PQ:NA($R_R#[RGO-EHZLKY"02XCKX/'$MNGFF67HN!6@0]> M9UV2$2"(&AQL&'+9H]EW$"'"9A!Q4@W*1LP3^-/6/'+4^T@.09:&F\P^*Z," MNL^@$(YP#&&25 "M%L:0KLT$I#BZ9I$(_)/))SG7C $4\8 MYBBXQ$ F*>:]7DV1WFP#8[V5(",GLC>=!#RB%])=2?:IP8N%] 2S?U_1CQI$ M07E4EJ#F,ES@AS\\2'1\/HF6^6VJEXAJ43Y[6'R/&) ;]!7[]K I,XM5,CDD M1884QS7H:LC*D-[#YN(= '-9I?[KI=#,;#F*'I<-4GK$UB YRKY"$:QDN@Q M#[4;(4F9G-\:"I1]%U28["&@?7 PLG6]CEXR$[V1C'06TKB=MN2YHLAP)*,E M:2W9/G F',2^"<.0$?:88E,=ORC,KI,4 LV:065-(#\H,B\JTV7>+C&V70$FB+G E.%)!V[\32-T/@^(P2PW89]D'_&.U+T0! 1[&D] M((/RXM>G@3EG$4=;5V2)0M&OPI!;8*52S'&FO92QP(2 T4-$I5[N1XS]D2T1 M%9S"0VK>U;'#?IW$"9\2N5[T2\PP,&^;;N(=-%ORP3"V+*@(B:EJ%/M*#.#B MLA7+ 00$6&61"G)HU4BL0Y[KH"]I8P&A)X!%19E/OD.6ZH[GW2'T;D.QMT0@ M:8&]#13L$PH>JUSZ*;:;N^M/88PMY&A'O$2DG1 (N3H@#-:;:>P%C2!F52[R M"J !$\BI7E&T?3(KEN@]&4B4L.04#(CBX!=J)L4W +#83U _32P002!.L-,- M08,4NH*. E_(V59A\/B$XQ3Q1R"UQ ;\5>B^S%1((YQ@2IU(-T0;)UN\KS*0 M&P2H[%N=:D$R7)#J6U:K 7L59F:H[[F6XJ/4G+&%CB-38/J0CX/F]FQ2(Y*B M5G!723DT#.:(&9SAAWZ2."9^9!X3(4Z&G9.A6DRV^P[M5' ^G$PGPWRA)#9M$Z+$YRL^'K$P(0@!RD=/E3ZI$$<@JPXK>.?0E 8 M1.^^.58:1&&C=5 TXG@=@2",A0Y?[Z%:3-%Q"$MA8%L29[WH6*RM88&:%";K M>""23$T_:-YFO$J[J$%;4H."#P04T,VCZ&\TJI^GK"\427DU)AI?F1*>JXDA MRA=AB/+%Y!#E)4:E5\!58"5N.C9!^4=VR(#Z:P#JKY-;7OB.W'B[0)L1=AKB3=" M4?9!'/_EJSPTQD?.%93,=B?):(I,YG%P+=5IZ]]#5 &Y8;$C;6Q'%H_)H.UL@IX MQ6:_'ADN^08D/,*0?=#A@4YCIQU6YL+Y9&T]\?+R6VA2,GII-PR0P[F+2=-P M=AJOS)Y.ZN%UBPW3#EA\7?G*P)7W *,78O_ ?F#C[LT4V,E-W[/)8WZ!;!'+ MPJ,03BX=-Q5^O\PJA!#(D23Z1DPB722$F!7BBC#FDYL*G6E.LLJT[Q)LW5>!-%\*8THG7TG%:D@@ M3Y;CB*)!+(W9AFX6,Q'S;H%DL.E7P,'Z3H0=[^,$&(;B,:BQ:Y],YQ.FN'', M<,?E0>B$=;/A^63P&P%OT (D.G*W]>30W/DYNH"K2-=,R%YXG8#&ZR#B5F( MQIS/=#C0%RGTS4D:]BNPM.-]JK#"(*9XD2B)RP]D>8RL$?)8#!:WV6W%4-HBWI#?5:?3+_8'"V=,NOKP!Q\I+9Q775X*X%&^IO52<\M5=\(8WS2FF8Z M"7M( IHUDX)3F+7)<9#_K3]Z'/&KMLKLXTE!CNT'@>R@NM'GUSJ"EM1U+*7@,.4B4_A**VFZL"N#KR:ROE@_G'N@>$,*$3Q:/$[&O"N:#O2FEUP-CBH=\X3?V;F9 M0X &)J#S?22MGIW^688_J''XO6#MP'5P\X-*9N:+#D481 4OIM"$,1B(KN+3 M0RR-<.L>XI4V#,8-:OGXQ&^0>+K2%OY*L=R<#J6ZQ+Y@F(5I>B2^(333DG;" M&!ER?0F&!T1@@]4V7A*C9Z9MK# /!M Q$Z>WBTBS0E[G@+-=X%%9B^64:0V- MM_'/IN_(+S8 P\EK8O*U6)1139W<9CRA&ML[+[F$,30JA],;I]#, =FQ$)M' M<*YKBL_B@\*%U5*FS>GF21BE>5WIXO/)H@!UQ?!G%T8Q*%II2C,8!AJ.6CKL M<7;9B<%5^5DP<@NNEY'6+FUCVE!!"%[/2"6(A%J"L";.RW/T+^I?V17A5)L' M;!S)G9H,??27[O/)JC7)W?^6%?Y@T 9.KT-9F1_BT!%7W^:1LDZN=_ D-I_+ M-B?MU$@>B"<#8;L (0;7L75S?;.X<_$E+0>PQ4F:'5[TV/#\ D6-@YO1VRVV M7)@(D?1)(P':%\"/[]N6A[R1#W@91^? MX7@G\>+%_-F?0]/2OVC DS!+JCML(W6J[K=+(/5W](Z9$E0-Z8TW[TZ(CGXN@UD>GX[#8,UXAT2RU#OCW2*3%DB!6CE*!*DLJLD MGV%*A)(]\$NA1R.E,O\JE^S:*,LWLBL06\IL4=0.Y7E,B*]R(:;>"B@GJ34> MM][_[Q7C)MUSK%@318,%V8VS.-[:H_XB,S?R#0W:++E$%QDX\Y=V>?P2K\P9 MOE:2>?S\HJLO0#)!.^K^$7:^3(3;2Q%X?.5L7 +R@G*4AW6KJ8XJ(18-MWVC M4*3WM@ZG3,>A"V.FH3DMF-KM-_+U]O^'K_Y"&9B?9,,QIPB*RNHH?F0P>9E/ M1H1[)S@SG?>;O70$8GV;TAV5D>2HKQSD#LB8S\7$NMJ$B8F39M&*)P,/JM([ M%V_9ITV^M#KCF1]U@*@?8@.^ Y.&#?X1CY64HD9D:#!9[=UD/D!06HC96VHY M+@VD[S(+49I2WD_!;^Q*#@KO MR="-[QGLS)'9D>3EA"%K(V7U79ZI8#N^7N=L^NTX;U&$?_66X&T@VSN:8S@> M>T_N.AY[?\-1:J:2ISXD&>U[NKMU1B_..SM["8L@P&%UZ^LP\OQ[W_"U=QJ6 ML.%."%LP>7DAQ"\Q"<.=XDP M?[S8RJ:'QA ME2/STE =(7C'RS=^07218P.[/)*>S3C.AJ6,9%J(BSHIX]@SA.1K>-_)MHD[ M<>E+01DU!/_! M2ZZFSE#^R\)_F;V5C8DHI2YR&)[48+_Y@A^EDS),G%ZE23O@J^$A=+>+5(TN M\L[51],=>RK>]STHEGC-0WL_P\G6V:@ )^_;RRRZ1"<&UI2M3B_,_9]/C.;4MLW*L% M!ARCPO6?;Y##%,=_SJ;G?Y#M4N*]QO(@,;KSY.65"RKA8VC]NL%D('WU[=N+Q>L@E18< C:YQI;>T071^";H MQ5U8AL>?G)[C6Y\QF"6-(AM\_A*'.[H]A!#<*P:I_WMCP4S\"L_TF*Y\=]OL M;*&>G#_Y_L?T8/0FR7:HO[<0N,E(S<*_2A7@"ADA#I?P0!"BSU-#;,SD>'I) MY+VAA"DA&5 @8+ZX$VR>S]1"7LYZ$T)7 ?;\Q2D ^XXG;<(%P9OX+DB_\DVH M[CL\_ VXL6\Z_*\SE34XY-SG3\?.C4]FY]W2&"2')>'^,+[;!>_>\(%)KP.V MK!NL\\NVX;H(&AR\],*W)\MF1Q6F81LO7FH.,XWR.M&O#S&.*>3CY#7_-).+ M?\P -P-P^8W_X5/E_V#"!?^9@/@X_[4%T) UNHO*K&#IZ?SYLT<\..]_Z9H= M_=& 9=-US99^W!@-R. #\/VJ@3!1?L$#PI^1>/5O4$L#!!0 ( ^"BUBO M[RO+TP( +8& 9 >&PO=V]R:W-H965T^>>^ZXG4IBR)?!T!$]N!$SA[Q8SFA;8* M;]BO2 YST,OJ7AK):U$R6@)75' D83UP+H/S463M:X,'"EMU<$8VDY403U:X MR0:.;PD!@U1;!&*V9Q@#8Q;(T/BSPW3:D-;Q\+Q'OZIS-[FLB(*Q8(\TT\7 M21R4P9ILF)Z)[37L\HDM7BJ8JE>T;6P[/0>E&Z5%N7,V#$K*FYV\[.IPX)#X M7SC@G0.N>3>!:I8_B2;#OA1;)*VU0;.'.M7:VY"CW#[*7$MS2XV?'LXF#Y/; MY62.KF9W4S2^NUW,+L>+.7J\65RC\7*^N)M.9G/T?4%6#-2/OJ=-4.OJI;L MHR8 _B) @-%4<%TH-.$99.\!/,.VI8SWE$?X*.(OPL]0&+@(^S@Z@A>V)0AK MO/"?2O!9Y@UN]#FN;:=S59$4!H[I%P7R&9SAZ4G0\2^.L(Y:UM$Q].'V M88#$&J6"*\%H1C1DIE.>@6] H8PJDN<2\EJ]>D4YB%R2JJ I88B8%OXLI^-1 M3T\2[(<7Z'_O]FGM$MH%HR6G-H>Y-JFHUN@;"L/(Q5%TJ,&)F\3^@2:*.RX. M C2#:K-B-+4%NY' ",\^A UZB=OU@P_Z3F+"X _J,'9]$WW'[C?E>2;*]C;R MW3!)6C'NNKWH30RZ;HP#=*<+D.^ WSQI1SW(C0^?.S9_K'?\HV[H1N&X;L* M6)Z'-8G]GAMV_<\^0^]@EI0@\WIB*O.);;ANQDJK;8?R93.+WLR;B3XE,J=< M(09KX^J?=6,'R69*-H(653V95D*;.59D9_/%;2E_ M6-!E"O+CT%(85+M:T2[ 517 /1' <(Y)7-OU._"\^@B\$L_[7T?0MO,*UV_'U>5T(3ZMG=)WFK5F= /C\P3+M29 I$1 M]L*P-OR+./:YZ8?G34W@F('CD,D39:F^9F?8:\XD38%(B K!% -Y%-*Q S,, M_59*CGM)%ES1] 0'UPE,;^ =<^C(2U#G)>@\VCFVS;A [GQ%:->.VK+6#?W6 M67NK%0NRP(9>U^2K'2:5H >>C->V2!$++ MW>=<@;SX8TFX1D(L)SP'HCA16TZ>@8KFK0]LL^_Y#<6^5%XTGATBU$FY&K7M(_]C6<<,VV($35HR"=O_5AW-*/QBT 'ON>=7^#OMN8/;=9L\[3G_0#QN29P]^ M\\=^V]8AK<;XD8%8ET.6Q.04N:HFD5I;SW&3:GQY,:^&P%LJUKK.4EBAJ]T; M8$<4U6!5"8IORF%FR16.1N5K@K,H"&V WU<%[3C2D33J^3Z6Y4KR-3PYF &T5T&L=4/0Z RTW7 M\9VM8LR6*V,5;J^3T"5,P,R2&X626Z*$+ :AF11$0=1U^GY[4+?VF<$M@XW> MF1,;R5S*.RM!H6;R&YSKYDD]N>HO$BU4;&A3,RB)G( M1_I0Y&''H>6]X! 4#D'&.]\H8_F9&MKK*+DAREHCFIUDH6;>2(X)^U,F1N$J M0S_3N^Q?CDFS?@B]-\$#&*8*Q,!H/Q4(JS#&AAD24*;*F/$5[+':[EBK%Q-(6+=/[@CN\ M_?%1*_!JY^1_&;%*4KQ6RD)Y::'VB^2.H.&TB4BK!<^4#\H%EIUIL[&COS@_.# MFF8+G4Y?Y=1?4\;M/76"W>E$8XZ(MF7/#(-_,%>SZJ1*IM@Z=8KE**0!O==V M-]CM>-:L-!J-5YN_5Y]1Q$LED8H:P/8V-]N4/KZ>:Z46G/UQJE-I*']*X+YR M\[U&I=6J[VA^J]P*S;ZKW=WIP#&H9?;.T)C)5)B\&9?:\BG3SSOXDWG^#AI1 MM<1+GG"(T-6KGC8&ULS5=M;]LV$/XKA!IT"2!$[[*4V@;L+&TSM$%0N]MGVJ)M MHA2ID52=[-?O*-FR'-N:T2'=OIB\X]W#N^/=R==?"_E-K0C1Z"EG7 VLE=;% MC>.H^8KD6%V+@G X60B98PVD7#JJD 1GE5+.'-]U8R?'E%O#?L5[E,.^*#6C MG#Q*I,H\Q_)Y3)A8#RS/VC*^T.5*&X8S[!=X229$?RT>)5!.@Y+1G'!%!4>2 M+ ;6R+L9QT:^$OB=DK5J[9'Q9";$-T/<9P/+-0811N;:(&!8OI-;PI@! C/^ MW&!:S95&L;W?HK^O? =?9EB16\'^H)E>#:S$0AE9X)+I+V+]D6S\B0S>7#!5 M_:)U+=N#&^>ETB+?* .=4UZO^&D3AY9"XIY0\#<*?F5W?5%EY:]8XV%?BC62 M1AK0S*9RM=(&XR@WCS+1$DXIZ.GA_<-T]/#A?OSI#HTFD[OI!%U.\8P1==5W M-. ;*6>^P1K76/X)+,]'GP77*X7N>$:R?0 '#&NL\[?6C?U.Q-\POT:!9R/? M]<,.O*#Q-JCP@G.]/>9D#1$>AS!%WT4:R(;ZIYGD-J28M:PIJ9017XVX 0B3TTX#C=3H3%3Z,,F2 A7,7M/ M9K*$OH/J=/(;I OD)7;8BUN,U [C7IMV6X2?V&X0H/N\P%1"?]*(":7@WF.F M>OYQ%WZ$_\(A*([*GTU]! =Z+]S:KOO.-5SW@/4_=33\MR_WLW)^O*E8^\"# MFU>_NPEARWO?CORH';S0#N+H5+""V$X3%XWF\S(O&=8D0_1D)ER&MANF5VTZ M29.K/;/:+WZ9V&G8NWKEE^YHR%'3D*/S&[( __GS+PH5I83NK$Q(N(8N3>&+ M"2XHHN&Q!71K"2T;\\X^W7WO?]6G7VL]^;+_V,7NE*9YE7Y-;DM(OH9J)^B6 M]P#_9G],^JLBBY*A3W1!T"@7)=?*K%+3OW#U-[+%/'TXE3@CB..<[)IQA)X) MECM++E!HAVG:3EH[C/:2V-14I[SW0CX ^=OJ3R-DH"2LLDJM:+&[UG-?V-%\ M +S#3T4O3 Z_*O$A[YAN'!WR_-C=?IU/)EP/;29,]-W^MUR/MV MXL9[=.RF':T@;EI!?'8K($\%C!600[C]_(;+%3E6[=W0YU81%$AD(I+Z9KMS M,NA%AK&+2N"ZAI&\9*0'D.9@"@V+X(5N_4.+HLU+G0K\L8 ZK3D$,G!935L* M^B8413V2--QFH!O5<\Q.O)X&/V.YI%PA1A:@ZE[WH%W*>L*J"2V*:JJ9"0WI M7FU7,)02:03@?"&$WA+F@F;,'?X-4$L#!!0 ( ^"BU@6G%\'2P, - ( M 9 >&PO=V]R:W-H965TWQW M/.HTV4GUI L 0[Z7HM)3KS"FO@H"G190,GTA:ZAP92M5R0Q"E0>Z5L"RUJD4 M 0W#45 R7GFS23NW5+.);(S@%2P5T4U9,O4R!R%W4R_R#A,KGA?&3@2S2 #S6"\5HL"Q9+R$2G-9$07;J7<=7E=3P=']B_MK%C+!NFX;,4?_',%%,O\4@& M6]8(LY*[7V ?3RLPE4*W_V2WMPT]DC;:R'+OC I*7G5/]GV?A__B0/<.M-7= M;=2J_,(,FTV4W!%EK9'-#MI06V\4QRM[* ]&X2I'/S-;KGY?+E;KOWVRO+V^ M7Y/K^R]D\4W,G* M%)HLJ@RRUP0!*G5RZ4'NG/8R_LJJ"Q)'/J$A'?3PQ2[\N.6+_W?X%^?"[D@' MYTGM/;K2-4MAZN%%T:">P9M]_!"-PD\]D@=.\J"/??;071\BMZ16>#F5>?%) M+5AE"*LR M\:7N.M,>=T]S-__)#0,/Y$WNMIS\C^Q6[FUBJT/UZB]F>P.K5; M_8$DH_@--&^XR'B5O^U]Z8^C\ 0-AXE#7QM5<=,H\/'NI 7&C0E\E2UG&B%/ MG)Q"&HT=7*LF?=(^,8IQ 4JW)-(4H,@S%#S%>^)LA_XXI Z-_'! WTQ53/U1 M=(P6*WR4'*UO06OR,[[!TJ9L!#.0X8L'2ROEK'VUN81'_G!,3R$='N&RKUI\ M4H$YR7T4^2&-3B="?Q"[_/;4\=#5\;"_CK&_9(V ?RWD5II/,JY9GBO(V_@W M+R0'F2M68]8)PWYTKM[[%;Q_G3]BE:&X!X,:7]6UGXR35WA(*5E!W6P$RL<, MW"@0-FI7=WX2CT[0*!H,L=E_$8V:^N3F:;I7^ M:3:(%NY*(/W#-\Y;LW!'IPG*Z5^NL.7?!9$SB 4F%F' MP&BYQ0L4P@&1&;]VF$&KT@D>[O?HG[SOY,N*&;Q0X@?/[6863 +(L6"UL-=J M^QEW_G@#,R6,_\*VX1TG 62UL:K<"9,%)9?-RNYV<3@0F$1/""0[@<3;W2CR M5GY@ELVG6FU!.VY"0.OEVPE MT+R9AI:0'3W,=BCG#4KR!$J:8_Q,@))-:NY*]7>?)2<0_F>Q# M&O<@B9+!";RT]3/U>.GS?AYSKQ$>'!=VC7%F*I;A+*#*-ZAO,9B_>A&/HG;1:9U+0BF4H)9T*-P _._S:!+9F&+)*DQ4VO)?V,.7'KF3$FC!,^9 MI;L5$TQF",V[PXS321FOZ5EHD]ZJN4>F#:#,G:8'KC-X]6*21.F[)U="&<(? MD/0F2>H.HPY'W!N,8D<:=X7'0T>8= F)EWC;)<0I4%SI:2PLZ@YY1,8LE67B M<3@?,PY[HW@"EV@,\+*JK8\A(:*Q'=XTBN#*E:2T<,M$[;/W+'ZZQ\]JK9UH MI;1_(U]SF8DZ;[+&LDS7M,4[F@"4WC==CWMC"NI7)4_BR >ZX&S%!;?\$,UE M:/@V.=%)P[:3AO^ZDRY]$):H2V RAP_<9*HF$ZZI 'V]?6NK][*I7B]D#.*Q M=CJM^+E*_*^K[P/ZI/##CQ<**+LEL]>NP]S(;9L/K//TL?P@AK)YESM%,'E, MZ6C(]R&C,&$7H)_ RXCJ42]]@.8"L\!-U.JO6UG_/MFM#VP M-S\("Z;77!KRMR#1J#^FG.AFZ#8'JRH_Z%;*TMCTVPW]IZ!V#$0OE++[@U/0 M_OG,_P902P,$% @ #X*+6(&IJMPR! 7PX !D !X;"]W;W)K&ULU5=M<^(V$/XK&E_G2F82O]M #I@A7-*FG21,H+G/ MPA:@B2VYD@S)O^_*-L:T/I=>9_KR!21Y]]&STCXK:;3GXE5N"5'H+4V8'!M; MI;)KRY+1EJ18FCPC#+ZLN4BQ@J[86#(3!,>%4YI8KFV'5HHI,R:C8FPN)B.> MJX0R,A=(YFF*Q?L-2?A^;#C&8>"9;K9*#UB3488W9$'4+]E<0,^J46*:$B8I M9TB0]=B8.M:*>^?Y'4L43:+R( M)[+X1?O*UC90E$O%T\H9&*24E?_XK5J')<3%2P_8X4G(\'W2&AK M0-.-(M3"&\A1IC=EH01\I>"G)HOET^SGJYOIXO8SFCT]S&\?%]/E_=,CZBWQ M*B'R8F0IF$8;6U$%>5-"NE^!=%STP)G:2G3+8A*? EC KR;I'DC>N)V(/V%F M(L^Y1*[M^AUX7AVT5^!Y?S'HMEA+)+\=24OF6F8X(F,#-"&)V!%C\O&#$]J? M.GCZ-4^_"WVR G&>4(07R/(A.@5\>R8RU2]HQQ66""U)6C&TPRS]^]E99DE MF,FV@+JG_/AAX-K>)_1?^?]2R(K$5W\;:;HC LK,-R#_T?*9Z'I'V>:KZ'_& MXO:-B(C*H\,,)"-@7W.CZ:+;88L@S-!8'N M,!7H!2(A!/#N7VH!\/.9>^;]> WR'?,P<^"DP_; PZMNDX M)0$2U^.NT_1SS- _>_D/ 1_!>D/_H@'G]DW?/1L.2O*:T":WGMM$\R HYVRT MK@4[ANA<>F'07 #?' ;(-\/^Z<+YWB%:74([ =V^UP0,3,\#P)/M <#002]$ MZF"Y0.0M@Q,-VHJC'8RVX)]/M*-(!761"LXN4M$6LPVD)V5%36)YNH+R!!\8 M9U>[*H2BA$E-/\L%>( (9)G5&H&G*12XHH:U5:]N+O]>]3E7_RV2_IVT&SI^ MK%>M3<9#O[&;?=/MUW(]D>G A%RHTJ?GN"TR8EIVD4F.&@BXJ/ANX) MYB#H2*NP3JOP6],*KC\TS=-&>K7G#Z)2YEJ".M&@Q91..G[4.MPJI8)*JF,O M/7)&5>NIV4UV":S^89((+N3HCLH(SHMB$P <%7>0(@56^KJ->M6>2T"4 M%]?_:WG4!\"YQ]W!P7.:5=6SS8&-IGLLXD;B.^[PU ;.Q'O8GZ8V_!,%ZIN6C MX6A>/KT>L-A0*,D)68.K;?:ARHKR.5-V%,^*)\2**WB0%,TMO ")T ;P?(1LA@8 +X6 9 >&PO=V]R M:W-H965TQ8 MC]WPV3&K9)Z5](8C414%X4]G-&?KDY$S:@9NL\52JH'I['A%%O2.RB^K&P[4 MM.629@4M1<9*Q.G\9'3J')V%:KZ>\#6C:]%[1TJ3>\:^*>(J/1G92B":TT0J M#@0>#_2C:(12.B=5 M+F_9^@^ZT<=7_!*6"_V/UINY]@@EE9"LV"P&"8JLK)_D<6.'0Q;@S0*LY:XW MTE)>$$EFQYRM$5>S@9MZT:KJU2!<5BJGW$D.7S-8)V=7'\\_75^BSZ=_7]ZA M\6=RGU,Q.9Y*8*TF3),-F[.:#=[!QL'HFI5R*=!EF=)TF\$49&H%PXU@9W@O MQS])^1:YCH6PC;T]_-Q645?SV;Q6-F\?]]D=0"VMT9@^ M B8%G:![6M)Y)DWZ[-_Q]6\1MMUWZ*6>RFGJSU5_&)U7G(-*1[^,_WN:4D[R MEGZ%'-N*0KL_@*TP#+9GQ-A!=Y)(V@X[5N3Z/-9/HXZTK'\P$,7=$[!=.G+66X<8W?249'=IUS/ MF?Q@,-=V.B.XG;SN;ELY5NS[@]$QMCP?3PZWE^6Z;D\T"[N]U6-L1Q-TU8%D M@Y&^_P/+#_W^@&/A.-@>#<*,.E&+YGU MT-8+?AQ[P^ ?>PIQ@U%7 :7&86=R*BQ40ML&,3;?@%H[ K9-.JT<*X@Z;:*> M P+'0Y>/"053T$>:5*H]T@4'_$ATRS2$H&U(< ":>)@*:VR=IO] #P--G$22 MH0>25S5GZ";53UOLXZ]83CCZ M#,8YAUP*W[+R@=9B#7<>!UYP>%9JQJ\IR04B)8"CE)1+:(>UUC_"HC4^#@9C M!H4A$&^AW2 \66KF*7V /GI5&Q3T2;0^L'%GYT,E#RPGH( Z]D40W' /=JSXE[#I>@H]I7CX"@J("!Z<%_QC.FXR=C6_BLF=$!W M$1I&.X,46C,C\Z1N90]BOXLWAG")!U\O'U<9)S4',(N = _55K_G69%)LLU\ M[-GA9.<6#0VG:IG38:;KSQU[EN=X0U[/^Y$""O=XT/?=YSRZ!S1A"YKP8-!T M!5#;35(X3''"G[9RAUP2B18$JAW/ .G@U'339NOU1 @JZPR39^0^R\&KU(BZ M_7+]>G2=:LE^OB]299%!P!+=6^GF)R&BIY3G!A.37TO.:X5PT'D M3K+D&R+;T[MX#@WEK!X]31)>;7K&4F%IV"B83@>.Y44V^J#@U_>"J?DPE$T' M:EN\NW(F3("#:Z<;FC-HF3 VC-J.OX=G703-=GVN$N(@WE2[=C>O2TVNX:2) M0RNP.YMC.-M&YK/G(<\/G85_/KJN2DG*1:9NCDPE/G)B4T=K!:J1N^$J+N53 MW3E]K[+55@\SCN+^<11NEM'+GQUB*,@=;7C6_8 M_$VE3EXUQ =2032%D4%:%4\@[;:+VJ^!44//-77RH>5[O1T4[<.\KVUG3/*< MK8G.4T,Q0BN,37L!:%53]NX4"\H7^N84 M\H8ZLM;7B^UH>SE[6M])=M/KF]UKPJ'<"Y33.2RUWX9PNN7U;6E-2+;2-Y3W M3$I6Z-O8?4$L#!!0 ( ^"BU@F";*UNP, M (* 9 >&PO=V]R:W-H965TJB62#9($FWS[0TMHA(I):DXN3O=TC9CMTH!K;;?9%XF3D\ MAS-#JU+HJ5<84Y\%@*M!-53'U,L=2;J9>Y.T&[OBZ,'8@F$UJ MML9[--_J6T6]8(^2\PJ%YE* PM74NXC.YJFU=P9_<=SH@S98)4LI'VWG*I]Z MH26$)6;&(C#Z/>$EEJ4%(AI_;S&]_9+6\;"]0__BM).6)=-X*[7Z9AE. M/:H%C>H)O=GOOT6#\/P$QW3/,3V%/KNGTLN;$D&N()-5W1AF4UC;/J4@SX") M'')>-@9S$%2Z7) =0HU4;P53V*7HY)KO*1K%87(.__??QM9^$ON)X>95T<[B M R2QG_1'AP.)'XZ/!D9^G*:_G-QW5]FTT>P)%1U4()IJ21M-P7![36%IC#84 M$B[6SBN*SK=Q^A$K2OQDT'\[G/KA*'D[W/>'41\6JQ6=86X]([-'8!NF<@T? MHT]O/3I0QAW M&\_)VN7=!W"^NFH2U@T''0)&T=O:?W7_TU')0 S1O$EE1 = M:6 DF +;?2QDF:-R176AUDSX<"6RWB\C,S]*@ \0]]+XJ)OTCV<3^/S#YCJK M\7$W.78*71K0!05?N,Y8Z4K);VO)'A*VGGRG>=,=;WT0\!P-*KIDR,A>F&VP MZ=)TR:P!G[.RR=&AH""&.PX%RXDYJHQK2@MB0NZOV<&%E87:05IAN]VA)\HCI9-S.+"G9U!K M5M@Z]H.#>[E"M7:O#RN]$::]HO>C^P?.17NOOYJWKZ-KIM:< MU)2X(M>P-^Q[H-H71]LQLG:W_%(:>C.X9D&/-%36@.974II=QRZP?_;-_@%0 M2P,$% @ #X*+6#;_V UU!P V2$ !D !X;"]W;W)K&ULS5IM;]LV$/XKA&MT+D#4?!6I-@G0M%V7 6V#)-NPCXI-.T)E MR9/HIMVOWU%^HTS:35HLZ1=3/)''.][;0\I'MU7]J;DQQJ(OLZ)LCGLWULY? M#(?-Z,;,LN9Y-3FVS<3IH50T9(,IQE>=D[.6IIY_7) M4;6P15Z:\QHUB]DLJ[^>FJ*Z/>[1WIIPD4]OK",,3X[FV=1<&OO'_+R&WG## M99S/3-GD58EJ,SGNO:(O3H4;WP[X,S>WC?>,G";75?7)=<[&QSWB!#*%&5G' M(8/FLWEMBL(Q C'^6?'L;99T$_WG-?=?6]U!E^NL,:^KXJ]\;&^.>[J'QF:2 M+0I[4=W^9E;Z2,=O5!5-^XMN5V-)#XT6C:UFJ\D@P2POEVWV9;4/=YG 5A-8 M*_=RH5;*-YG-3H[JZA;5;C1PITM>; \ORM#[JK0W#7I;CLVX MRV (@FVD8VOI3ME!CK]GY7/$*4:,,'& ']]HRUM^_*[:QI1Q %C:D_F][)TRC&B\*@:H(@\.K,YN44G+\! M)VM05H[1)"^S5[-Y5G[]I8%)\ZJVSI;H>M' M.DV#&C.%@+)-3.W#@CU]HAGA+]%CMW^;K%ZZUX9T7MV:>M,[*\<0-;7;H#7I MRN6 :O9-WN!M"TA,&X=#EV#=?&2:R,-'V.P:754V*QIT83Z;<@'4-:<^$C3! M3%./0@7#FG0IF$F?X)XH>^E1I.*82@,#N49+ 5Z M%C('K:1>N5/NRX51:;:VH!QK1?=N]\!C/0 1_*5 4*'DCM+7!@JZ6:]HLR]= M[]68>E[3WU6VWZJ9>/T!C) ZV:X*+%)PW+/- FL[/UBJ@ B4H/<'V,65F@^U MN\"U7S&:%UEIV_1B_EGDH3-1PG$J0KI,-68LW+W':A\0C?$?06-<)*WEMA3 /,.%DLP3^AW8C$&ZX8AJ'!*PK@!K"ICS@RX-Y)6!4Z@:-P/BPD)FH:1 MG6 =@6(#GD00UV I3_@",E,"FC #N"V>Z%O=). MTNOO*-=W:I%G?A\4XD1ZT N<':SSF- +ZBN8Z7&@%X1&Q-T>NOU>Z)50OTA3 M*@Z.5OQ;L"M2\2@4YA";"AZ)T8 "F4;_".P2,G9D4C0BI8Z@A##T(>>HL*P^ M=+L?=Q$XGPL?5@DXCFG?QKR32_M("P 0G1E<@TNS.\$NJ@BF2<1N*9;1K>>Q MK0?X%.XI%&& D/SGA%T#*F?,M5TPY/=P.S MX^N=FS!@GX"G1-&7)CB56P4 *_HUG@7753[C-,4N2W\?^M*8LXB?0HB'[L@P M%6'T 6[46S0!!SAW.W@VFV=YW29K!TDB><0!O/ 0LR]"[TM?_K_QY&?!Q^5B 3T+6?ORKE[L!/M:Y@TF2^]ZS:3ZK*KCMN@1 M//)Y[HY\R-/H(.0WM0/0Y+GDE1H[.ZWK2\]3^0Y*JBY$#17.;(0LJ<:AW'JJ MED +"RJY%_I^ZI645:L@H4D:E^65'Z_ BX.8R=P7@R/;+O3 MQN!-1C7=PA+TEWHA<>1U+ 4KH5),5$3"9NQ,@\NKQ*RW"[XR.*A>GYA,UD)\ M,X-9,79\$Q!PR+5AH-@\P35P;H@PC'];3J=S:8#]_@O[K"_\T* MO1L[F4,*V- ]UX_B\!G:?&R N>#*?LFA69O$#LGW2HNR!6,$):N:ECZW^] # M9/X[@+ %A#;NQI&-\D^JZ60DQ8%(LQK93,>F:M$8'*O,H2RUQ%F&.#U9?EDL M[F[N;^:KZ1VYG$G@8,\S?OR0A7[TB?RLUAR2^41D5N6B M!*+IL[G3^ZI0V.; GHRT"*T*@AM44U80UJT$U1']1H+,#=-!WY"X43@@C_2 M%T.#9)0K!#]A_D)^/PIEZ ZSY,@:!.[0C\BB]0W/^.JIGM_4]:-75.PF<4 > M[%;_R!2[PT%X9$W=)(W(2FC*3QY1+Y]HZ(;)L&_(W"@ZI_&DTTGROW5"\USN MX3734QHYS_;K-#)M8ZNE^ =?;Y(+]6:'XJ$;]$X#)3!PXSCK<*@;DQ2U[_Z1 MF\ -_?18 "BK+"5W@$\\X8RN&6>:]130X=U!> *.YSMX1Q&9FR;Q,2)$2-I* MXL?3Z.66!>@P>)M]E@Y.R<'KU8$2Y-96.X7;L:]T4Q(Z:U=0ITT=>5W>5.-[ M*K>L4H3#!J'^Q0"U()L*UPRTJ&U560N--&ULM5=M;^(X$/XK5DXZW4E[#0[EK0=(T+):3J)%I;OWV20# M6$ULSG:@*^V/O[$#":M-31=UOX#?YIEGG'GQ]/=2/>L-@"$O62KT(-@8L[T) M0QUO(&/Z2FY!X,Y*JHP9G*IUJ+<*6.*$LC2,&HUVF#$N@F'?K#@ ;'A4>^WAB[$ [[6[:&!9C/V[G"65BB)#P#H;D41,%J M$(SHS9CVK( [\87#7I^,B35E*>6SG4R30="PC""%V%@(AG\[N(4TM4C(X[\# M:%#JM(*GXR/Z1V<\&K-D&FYE^B]/S&80= .2P(KEJ7F4^T]P,*AE\6*9:O=+ M]L793C,@<:Z-S ["R"#CHOAG+X>+.!&@[5<$HH- Y'@7BAS+.V;8L*_DGBA[ M&M'LP)GJI)$<%_:K+(S"78YR9G@W6=P^3N=/TX=[\O"1/'V:D/'GQ?1^LEB0 MT?T=&8\6TX7=F3].%I/[IY$[^<<=&,93_6<_-$C"0H7Q0>&X4!B]HI!&9":% MV6@R$0DDWP.$R+XT(3J:,(Z\B/\P<46:] .)&M&U!Z]97DG3X35?NQ+0L>); MYS1R1$CK.G,+L.MZ,!M4-WK+8A@$:U Z"X>^_T7;C;P_5ZY+J MM0]]^+ %Q0P7:Y("NJ;^0*3CK8F1!%X,B*2.LA_4J!P\W%HEM];EW PH=&9F MH(Z>'_<,O79)K^V%F8/B,B&YAH1@GY-4Y MQRL&83 C8M)+\B)W<>' M&QP6''/!C<:C3IA8Z3J^7L47AE2O-*OWGM'?^P54::-*WHVW.#$&U!)BF0'& M/+H/UVR9UD;6&;CF62^F)W6%OM6/#]>(58MG>4;TAN%=N*"SRX:I-;X^1.Z\ MR'ISL<_V3/U0( YF%*I[WSGT*^Y,HXIQY&4\X\+RJU7HE;ST,U<%B;YK1:*_ MHB31JB91?_V8:,/QN00NN:[RE*3X[M)'XDQK,/6T_;#G4RRM2A/UUY"?3?YG MX-X0-U59HOY*,BNBI):%5_+2[UH5)MIY5R_TUKE+V5;5B?K+T\5>Z(=M]LY_ MZZK44&]Y^'DW],-Y(B0\Z1 RP(1K^R!-8ID+4S0+Y6K9:XV*#J,Z7C1J,\S7 M'%]Q*:Q0M''5P=A01>]33(S&PO=V]R:W-H965T!*D-F=8[=:WRL+UV@T/0 MP,YL)]F^_6R@)!""&LE]T6!SS@^?/S[XZ(P.E/WD&XP%^)UGA(^-C1#;6]/D MJPW.$;^A6TSDG35E.1)RR!*3;QE&<>&49Z9M6;Z9HY08X:B8>V;AB.Y$EA+\ MS #?Y3EB?^YQ1@]C QJO$[,TV0@U88:C+4KP'(OE]IG)D5E3XC3'A*>4 (;7 M8^,.WD;05PZ%Q?<4'_C)-5"AO%#Z4PT>XK%AJ17A#*^$0B#YL\<3G&6*)-?Q MJX(:]3.5X^GU*_US$;P,Y@5Q/*'9CS06F[$1&"#&:[3+Q(P>ON J($_Q5C3C MQ7]PJ&PM ZQV7-"\[,'@!3UI*F+@HQ"V\9?DK4>Y\+)N^FTD^$L^GWZ;?E= X^ MSYX>P>3IVV)V-UG,P8^'Q1I 0L-G3'$8GYR!1RK>J)YJI:UWVY+OO"NJ - M'BD1&PZF),9Q$V#*(.M([==([^U>XO^(W '_@MLRW8[%C1YN[O3X1Z]W=WN MB<:IWYM3\)P+O,NOHTOKDN5VL]2GY99OT0J/#?GMX)CML1'^\P[ZUG]=.NF$ M19I@#0W=6D.WCQY.*.$T2V,D<-PK7XGQ"HSZD.Y#;^#(OY&Y/Q7FW,SU/,NU MFF91!\T:.H.C62,8KP[&ZPUF25(5QES(:#J#Z'6_=@_HA$6:8 W9_%HV7V,> M^3HUU F+-,$:&@YJ#0=Z\JC$^"<[WW%=1A9@>!U\ZCH.9X>WN)4M7:BL\,)S)XZLKE%[(M3M!)RS2!&N(-ZS%&VK,IJ%.#77" M(DVPAH;0.I9DEIY\JCBG*0"'P<""K83JL/,#V[5;"=5AYLCSR^U.*'A28L*W M'$U?4Y+$-.\,I!=P[5;02HMTT9KBV4?Q;(TI5<%T":F3%NFB-84\%LRPMY:\ M(JN<\SK.28)46+BH,5W1%1]A[JV;H-=E78J#( P $ X !D !X;"]W;W)K&ULS5=MCQHW$/XKHVU4)=*5?>'EX I('$N4:T,. 9=\J/K!+ ;<>.VM M;> B]<=WO+NW ;*L#I4/_0)K>Y['\\R,1W9W+]57O:'4P'/,A>XY&V.2.]?5 MT8;&1-=D0@6NK*2*B<&A6KLZ490L4U#,W<#S6FY,F'#ZW71NHOI=N36<"3I1 MH+=Q3-2W>\KEON?XSLO$E*TWQDZX_6Y"UG1&S5,R43AR"Y8EBZG03 I0=-5S M!OY=Z'L6D%I\9G2O#[[!2EE(^=4.'I8]Q[,>44XC8RD(_NWHD')NF="/OW-2 MI]C3 @^_7]C?I^)1S()H.I3\"UN:3<]I.["D*[+E9BKW'V@NJ&GY(LEU^@O[ MW-9S(-IJ(^,@K#6RV8\TF"D:Y3-A\SXS"E<9XDQ_.OH\^O0TFL'[Z>,8 MAH^?YM/!<#Z#+P_S#S!\FLT?QZ/I#-Z&U!#&]3OX!9YF(;Q]\P[> !,P9IQC M_G37->B-Y72C?.?[;.?@S,XM&$MA-AI&8DF7)?AA-=X/*@A<#$,1B^ E%O=! M)>-O1-2@[M] X 6-,H?^&SQ\/;Q>H:9>9+:>\M7/99;NJ-C2&YA2>_Z96,.$ MJK13B(C"XX*S-;%G[P9&SPD>0[J$.8NMG5S!#)?TBF2'\X^/R T/AL;ZS[)$ M9XXTRAVQG>M.)R2B/0=;DZ9J1YW^SS_Y+>_7LB!?DRR\$ME1 AI% AI5[/TA M5J?"",)'1A:,,\-HZ3&I9+DT>AD9]F'+9IO^KM]IUII==W<8ELRJ>6#DU_W" MYDAMLU#;K%0[M0U"8 V16&Z%T;#X!HF2?V%A@=P+JDJU-W]T-_!KP;&[PU=9 MA256C4[MC*Q6(:M5*6N0J\$CL16)8A$JC#9$K"E(M415V 0COL4&9+LAYEOH M_-"DQJ6BLQU]_\#1=JUQHODU1F&)D>_76N62;PO)MY62?V=<26E@DF?O'QA, MAF4Z*FDN+=QKDH57(CL*7[L(7_O_TG?;UTS - M"#&L7.K2 ]CYL?UY)\>OZ"HWNK3@@7_3I.]E<9$K9G0P.D**;W:+1::RIX?V<#( M)+V0+Z3!ZWWZN<$G&U76 -=7V'U?!G:#XA'8_Q=02P,$% @ #X*+6 K\ M9)>7 @ ]04 !D !X;"]W;W)K&ULI51M3]LP M$/XKIPQ-( %)T\*@2R/14@23H%73PH=I']SDDEHX=F:[+_S[V4Z)RE0J3>N' MQF??/??<8]]%:R%?U0)1PZ9D7/6\A=95U_=5NL"2J'-1(3:Z47/ MN_(@PYPLF9Z(]3UNZW$$4\&4^X?UUC?P(%TJ+[3N18WA)-XDB*-4CK;=#LPI7JH@TYRNVE)%J:4VKB=#P9/@^?9L,$ M[B:C1QB,GJ:3F\$T@9>'Z3T,9LET]#B<)' &$[173'D!,ZZ(IBJGF,$8I7L8 M/$48S1DMB-5:P?$M:D*9.G&1*^1+/-V!V!]V"L--96[+X$YI:?U$#HG+1=+: M(=%$:C"5(OR\V5#UJPMA$';.@O L:,$14 Y]RICE$/G:Z&.K]-.M%OU:B_ 3 M+7X0?@[MUJF#A%ER"\=')Q]A?"-OHW'8:!PZW/9_:;R/;XW;V8]K^[6K*I)B MSS,-J5"NT(N_?FE=!M\/L&XWK-N'T..!X%H:W&PO=V]R:W-H965TLFEJI)20!2CN(1(&IG4;5C;Y\=I,#K#DVLQUH__UL!S+HTFB;^)+8SMUS MSW.7L]U;"_E#+1 UO&2,J[ZWT'IYZ?LJ66!&5$,LD9LO,R$SHLU4SGVUE$A2 MYY0Q/VPV.WY&*/?BGEN[DW%/Y)I1CG<25)YE1+Y>(1/KOA=XVX7O=+[0=L&/ M>TLRQRGJA^6=-#._1$EIAEQ1P4'BK.\-@LOAA;5W!H\4UVIG#%;)LQ _[.0F M[7M-2P@9)MHB$/-:X1 9LT"&QL\-IE>&M(Z[XRWZ9Z?=:'DF"H>"/=%4+_I> MUX,49R1G^KM87^-&3]OB)8(I]X1U87L>>9#D2HMLXVP89)07;_*RR<..0]!Y MQR'<.(1O'5KO.$0;A\@)+9@Y62.B2=R38@W26ALT.W"Y<=Y&#>6VBE,MS5=J M_'0\'$RO3\$^8?SMX>9Q\'5\>S^%P>T(;FX?Q]/[B9L?CU 3RM0)G,'#= 3' M1R=P!)3#A#)FRJ%ZOC9L+*:?;")?%9'#=R('(4P$UPL%8YYBN@_@&QFEEG"K MY2JL1?Q"> .BX!3"9MBJ(#3\>_>HADY4IC9R>-%[J25J 82GX ;CGSE=$89< M5^:J@&I50]E6OE1+DF#?,[VJ4*[0BS]^"#K-3U4Z#P2VI[I5JF[5H<>#))$Y MII#2%4V1IY5J"XB@Z3#L1K.*FXWSGK_:55%I%)5&>^S:);MV+;MK9.F9%F>F M_W-)]2M,,;$#BI4\:\'^M2H' MO3W2EU=P[W+W8.J?I 8'NJSTO5Y[75GFRK MO$1)15JEM1X@@%4 ;N8/9_ MFQ?7FPF1<\H5,)P95[-YF>Z6Q96AF&BQ=*?NL]#F#'?#A;EEH;0&YOM,"+V= MV #EO2W^!5!+ P04 " /@HM86GNZV'<" "D!@ &0 'AL+W=OBJ6KJP$X+D%E=0-/._$+3%A3IK8M5N1)GRE*&%P M*Y! M@_*55+QLP%I!25A]QT]-#EL /WH#$#2 X+V L &$UFBMS-H:8X731/ -$J9: MLYF!S<:BM1O"S"EF2NBG1.-4.AIF5T?(7-'E]_O)P_#;Y[L)='4F;2]#F$EB^\)]RZ;)9\T;= MO.:E/)<5SF'@Z+=.@EB#DW[\X)]XG[M,_R>RG0C"-H)P'WN:%5RHG@)1ZJ-M M#[_+OPJSL"/ MP]/PA8_799VINUL]Q/3O:RR6A$E$8:&!WO&I9A!U3ZPGBE>VK?J>6(Z5?MA2G\#4$L#!!0 ( ^"BUAR1O@D6 4 '(7 9 M >&PO=V]R:W-H965T$:X!YN[D'82JRI;:62G$!__:V<8(7:%I"!ET2RI=UO=[7? MEVBX$O*[BAG3<)Q2CH8BUPG/V*4$E:GCPC<]C;1ZT M1\,%G;,IT]>+2XFS=FDEXBG+%!<92#8[;(W]3T=!QVPH5MQPME);8S"AW KQ MW4S.HL.69Q"QA(7:F*#XM603EB3&$N+XL3':*GV:C=OC!^NG1? 8S"U5;"*2 M?WBDX\-6OP41F]$\T=_$Z@O;!-0U]D*1J.(35INU7@O"7&F1;C8C@I1GZV]Z MMTG$U@9"&C:0S092X%X[*E >4TU'0RE6(,UJM&8&1:C%;@3',U.5J9;XEN,^ M/9J,IU_VP'S"R=_79S?CKR<75U,87QS#V<7-R?3JO)A_A/&2\H3>)NPC'H6/ M4YHPF+(PEUQSIN#],=/X7GV =\ SN(I%KF@6J6%;(TCCJAUN !VM 9$&0#Z! M&2!Y"/").BW_1;!\"?P^(1SIP/3V&]^\^..P&9>J" MPF[0E#JJ8L @H1B<_,CY$K.2Z=J@UZ8Z]:9,ZWU2"QJRPQ;VEF)RR5JCWW_S M>]Z?#J"=$FC'97UTEFF&5C5V4<@0)!:Q#N+:2+S#55#-D"0UB!J<\P^6<)G I%"^Z_M^3.VTX!#WB@/3*:@RCW7H>Y7RD:;J'90@#YP@+Z4(&8L0CQ0I*-/SF.7(U%1MU90^ MJJE95H=O[:JWA:\!7;]$UW>B&ZH16:- MP(1*"#&CDL7F2"P94A7.:]'VGXMV4*(=.-EB7$G2$_4^IY$I= M',V)4+J6QKU*BGROVR-!?9[\+47RG:X_2RPB7-OF^&RJ6PO!KT#H]OH-_HGU M3U[F_VMQJ&H!D J P#MH &!UQ7>JP>B4<@DW-,EK3^9F\R]Y[_<[#6ZM2OAN MF;B>PA7&K')Y#YG0#1$[;>QZ+*V<^-W7[2+?2>J[XK4L[[MIWK91*(RP'>>& M=$!D#+0 O1)PSZBL1]ZK'FZO%S25V7*Z[R;UQYU=0C)8#*18,N8 567Q3K?; M;^IY2^6^F\OK>_YE^:I2=N!U&X!9UO:=//L4L&=F;5"!1GH-.2.6HHF;HAMX MZD5)(W4D3AJ0608G+V3P7Y ]+VNDRNX^:6!W8MF=N-G=DNO+$E5E^J[7#QJX MGEBN)\_E^I=FIRH#G>Z!WY0?JP+D"178G^XC6"]XFV$4UEVQ6KU(7#K M@[-I ?_ZUR;X":.D[C \!FA%(G"+Q#F]:RJS>^>NJ=NZWN'4*K)0$ M;BG9LAF.697M^(ED_+"^7Q^AK5+E_?1I]3.3=7 M"@F;X59O_P")1*XO>-<3+1;%I>JMT%JDQ3!F-&+2+,#W,X'_H#83XZ"\9A_] M#U!+ P04 " /@HM8$C%SG30+**V0QDOB:Y]S?.^U67)18Z5"L7%D)P+DEE=0-/._<+3%A3A+;N1N1Q'RM*&%P(Y! 4+4/?5C="1VZKDI 0F"6=(P'+HC/R+-#)X M"W@@L)6=,3*5/'+^9()9/G0\DQ!0R)11P/JU@0E0:H1T&G\:3:?=TA"[XYWZ MI:U=U_*()4PX_4UR50R=;P[*88G75-WR[14T]9P9O8Q3:9]HVV ]!V5KJ7C9 MD'4&)6'U&S\W?>@0_/,]A* A!&\)T1Y"V!#"]Q*BAF!;[=:EV#ZD6.$D%GR+ MA$%K-3.PS;1L73YAYM@72NA5HGDJF8P65Z?(/-'TU_WL8?1S>GVW0*/K%,VN M'Z:+N[F-OZ I%HRPE43ZL&9L U)!CB[7+)?H. 6%"94G&G:_2-'QT0DZ0H2A M.:%4'ZZ,7:53-1NZ69/6N$XKV).6'Z Y9ZJ0:,IRR%\+N+K&MM!@5^@X.*CX M [,!"OU3%'A!U)/0Y/WTL(>>OI\>'*@F;(\MM'KA?QU;7]]KW:A?UYC,A:QP M!D-'NX@$L0$G^?S)/_>^]_7L(\72#Q)[U<^H[6=T2#WIWFZRN]U+<[O[>EAK M^9X5,\:Z2?QHX,?NIMN<'E0XB%Z#TAITUL6TB+H2M_-QER!6UB0EROB:J?KZ MM[.M#X^L_;R9'VM_KNWTGTQM[G,L5H1)1&&I);W!5YV/J VS#A2OK(4\&PO=V]R:W-H965TSC=@PD#6'5LUG9@*]V/7SND@733;*FR$B_$=CR? M9S[/.!_N;H5\5"L C;Y'C*N>L])Z?>ZZ*EQ!1%1-K(&;-PLA(Z)-5RY=M99 MYHE1Q%S?\P(W(I0[_6XR=B?[71%K1CG<2:3B*"+RZ0*8V/8<[#P/C.ERI>V MV^^NR1(FH*?K.VEZ;H8RIQ%P105'$A8]9X#/A[AM#9(9#Q2VZJ"-;"@S(1YM MYV;>@\)8:1&EQL:#B/+=DWQ/B3@P MP(U7#/S4P'^K03TUJ">![CQ+PKHDFO2[4FR1M+,-FFTDW"36)AK*[39.M#1O MJ;'3_>O!S1@]#&ZG5VAT-9A,QU>CJZ_W$W2&KBDG/*2$H1NNM(S-WFF%+/-H M#&$L)>5+=$$45>CC)6A"F?IDS*:32_3QPR?T 5&.[EQOPFNHCC\CW_,;!>;#MYO7\^:NH2CCR<]X\A.\^FL\$2K1 V$Q M?$8#I)"MY3,**.:@D(C("J6,+<<[1FRL[X*+E]0]N^M60#=:(C4?T7D M[+QI%'MC:_MAEZ?[ QF4%F M#,[,F7.F" .D+!<)9T61[^":"9P]A#9][#7;;9,#F\.82E=]9TR-+*9&:4RW ML &&L"F,=6P2X7^49,=FEQW93A<%5XI[[+96!):CH)E1T#RI>FA625Q%8#GB M@HRXH#1W[H4FK##Q=W;!8>+[0= (7B1^\%-]!.V@T&F?5)JWJR2N(K <<9V,N$YI0@V) M6B4DA+8!WV)JDLDJB**H.V_+_,XQF8^]O0+RWI#[_CM.\W+@8[>K*K0\#0=" M$)]4JJ?N5$5>16AY\O;J$)=JJ))3/34,?J5GRA=X;P![E8;+9=K;BL",3VN3 M&KJ7228\(2YTL8HK7^[HW?T=:@_OY1YNG%9I5"H3JT++D[<7BKA43AW_!R#% M.ZR83M!L-E\6S.]0<7@OXW"YCCNN8$(AUT(2#6@.,_U,P%-A^*7K'KWY%:'E M6=K+2MPZKT?EM']22)VZWWE9.)7J0O?@[LE>_(V( M7%*N$(.%@?=J+>.-W-VE[3I:K)/KJ)G06D1)V7#S)'$"AYX(RV7=RIDT*0UP M?[QCO[.]ZUX66,*(TY\D4WG?N7%0!DN\IFK*MY^A[L<6F'(J[1=MJ]ANY*!T M+14O:K"NH""L^N/G6H<]@']]!!#4@.!?P+$,80T(SP5$-2"RRE2M6!T2K'#< M$WR+A(G6;&9@Q;1HW3YAYMAG2NA=HG$J'HQ&W^???LS0=#P:WS\.AE_'Z#(! MA0F55^@]FL\2='EQA2X08>B!4*H/2_9MTPRK-,&1-'Z 'CA3N41C MED%V2.#JFIO"@UWAP^ DXQ?,.BCTWZ' "X*6@D;GPZ,6>'(^/#S13=@<0VCY MPO./H4WDBB1J)S$.<2M+G$+?T18@06S B=^^\:^]3VT"O299\DID!^)%C7C1 M*?9X(OB&6!_2-HA2 1E1B'(IH?6F5F2^9]F,+6[BH*/OP&9?G),97RK.*Y$= MB--MQ.F>%&= M;-CEH(59\VT85C/75#0IIOR-5.M*IUD?>E5Z_XON=^Y.90\ M:0WZV 15W;M[5E> 6-DG0R+;1^5ZS6KS*@VL&;M_PZLG[0&+%6$245AJJ-?Y MH L0U3-1310OK7$NN-(V;(>Y?EE!F "]O^1<[28F0?-6QW\ 4$L#!!0 ( M ^"BU@LQV.0Z 0 (DB 9 >&PO=V]R:W-H965T$JDMVZZGVU0MW=UK%YP$#7 ..\WNOS_S M(Q!#ZH#NV9L$B)^O[8^QGZ\$B%O\XW)=SDE41F4)B:V+-=,29P9RWGY[#%?SME>)'%&'W/$]VE* M\G_O:,(."\,VC@^^QINM*!Z8R_F.;.B*BF^[QUS>F8U*%*=F99\+I/4O^CB.Q71B>@2*Z)OM$?&6'WVG=H6FA%[*$ MEY_H4)>U#!3NN6!I'2Q;D,99]4U^U"!. FSWE0!E)9JQ44)LXR6W8^S8MQ7(I>_QC).+!^^/-U^^?1P M]^<'=+M:?7A:H2MTOR79AG(49TAL*;HC"<_6Z!-CT2%.$O0VH(+$"7\G MRW];!>CMFW?H31'QM&5[3K*(STTAVU?48H9U6^ZJMN!7VF)C])EE8LO1ARRB MD2I@RHXUO(?)+M&$_L]PA;&9QIT/SS<.1,># ^?:'HS:<9J4NI- M7M&KQJ6 O*F'X1SC2L,YKU$L(S=\1T*Z,.0ZP6G^0HWEK[_8KO7;.3Z08@&0 MF,+.:=@Y.O7E0[HC<2X7+($2QCD]^WI6$M-2HE@P7Y97,]^RY^;+*1-M16.9 M (DI3*8-DZF6R7$ROR_F6YQMCC/]')I*R3U!@SUK,NF@T=8W%@V0F(+&;="X M^JG&TAW+Y-M2KGJZZ>9"3C=(L0!(3.$W:_C-!KU:YXAI(\<2F_6F[,3U/4M] M+P.@*A447H/"TZ*X#<-]ND^(H!&*AZQ"6KFQ?+S>O+WR?&?6X0-4I<+';_CX M U>AC(IS//Q!2\^@4H'?>UW44DH/;*LU49:V#X_L0'.TDF3B\/R@Z@7&CBJH M6@"EIL([<: V@*VI1: 0JH%4&HJ0-P"Q&!YO)8ZG2>VY\SUS?8%WSPXF=N@YAE4+8!24R&V_MG6&VA=1M>'CL;F])=R/,73SE(.5:G* MH_7.MMX\CT[K>KW1D/J&_,JQ'+\+Z6>8:+MUT;;69%[.[77\Q>5H4+'@8C&U M&ZV9M?5N]B&+]ESD,4GT.1[4V8*J!5!J*L'6 ]L>1(X'M;Z@:@&4F@JP-3G%U_$75J-!I8)+I=0^M-X6Z[WM4_$W%$NUR5TO,7IL03>1H=14?*T5 MQE. Y(Y!_2^H6@"EI@)L;3(>:I,O)W?<][B^U9U,H/O(4&HJG-9\XQE4:@?U MWZ!J 92:"K'UWUB_":U-[:"N&_=WG+OO9P!5HPJC]=+X?^XXX_XV<7^.72X3 MZ,M4K3=/_KM/:;XIST!P%+)])JJ_\9NGS3F+V_)T@=D6KPYI?";Y)LXX2NA: MAEK7,UEQ7IU[J&X$VY4G 9Z9$"PM+[>41#0O"LC?UXR)XTU107/Z9/D?4$L# M!!0 ( ^"BUBQ.U=&L , .D/ 9 >&PO=V]R:W-H965TT!75Z,MXU_$!D"BKW&4B+&QD3(]-TVQ MV$!,Q!E+(5%W5HS'1*HA7YLBY4"6.2B.3-NR?#,F-#'"43YWR\,1RV1$$[CE M2&1Q3/BW"XC8=FQ@XVGB$UUOI)XPPU%*UC '>9_>J9&EB_?F)_GR>ODGD@ J8L^ILNY69L# VTA!7)(OF);?^$,B%/\RU8)/)? MM"UC+0,M,B%97(*5@I@FQ3_Y6AI1 V#W , N ?:/ IP2X.2)%LKRM"Z)).&( MLRWB.EJQZ8O()J@NPW+!$F6 M8F1*I4T_P5R4.BX*'?8!'7^1Y PY^"VR+=OM@$]_'.XTX:9RI++%KFRQ@+X(QCA M[[]AW_JC*_,CD35\<"H?G#[V\ -G0J!)S#+U-71E6L"]'*Y+QF/HN=@;F8_U M#)X):BAS*V5NK[+)8I'%642D>D%*'Y?T.]&%H4MDP>37GN_@8+@GLAUD#RV_ M6Z17B?1Z1=ZH.MQCGM?RQ;;Q8$^7U];E6T&W+K_2Y??JNN-D"2@A,73)ZL6^ M].L]$EDCS4&5YN!7KN+!,7TX$EG#AV'EP[#W=5\)2>-\I=P+6&41NJ8K0">J M8G\#PL5I5_+]C-@KH%V9]B)?F6E091K\7+T*6DO.=8-@;\D%K277"&HHP]9N MI[6.5K%*JL:J=SUK3V=7%*Y%-8766@+\,U6K1#?*EN7N>UA&-;0Y[B$3=_LR M[MWNPFG>$@%7+624NR=1-^%ALS;1WVS!V?F4EP[V[_(N].!);TXO= MQH_[=_[75+-G*+%UN)SU0U^;[:Z#P/TMQ+,5#;>[B #[^ZNQW474@YK:=ET$ M[F\C7E31_):"@;O?@W4$^=XAF;LN /=NKL_6LT'+0.RWE+6#5!NVI\RLGN ]3]%6/R::!/ M>]7I/OP?4$L#!!0 ( ^"BU@6?)>0MP( '0) 9 >&PO=V]R:W-H M965T-/(@60Z#G/J!@:J92K M"],4\Q1R+,[9"JC:63">8ZFF?&F*%0>8_[G$C*V&1H]XV7A@2Q3J1?,*%SA)<0@'U?W7,W,QB4A.5!!&$4< M%D-CU+L8!SJ^#/A)8".VQDAG,F/L24\FR="P-!!D,)?: :O+&L:09=I(8?RN M/8WFEEJX/7YQORES5[G,L( QRWZ11*9#8V"@!!:XR.0#VWR#.A]7^\U9)LI? MM*EC+0/-"R%97HL504YH=<7/=1VV!+W^.P*[%MB'"IQ:X)2)5F1E6E=8XBCD M;(.XCE9N>E#6IE2K; C53S&67.T2I9/1Y&XZNOLZN;R]1J,XOI[&Z#.Z(91( M0+>JO@F:4(GIDLPR0#>%+#B@4@42DTR<*8/'^ J= MGIRA$T0HFJ:L$)@F(C2E M:W->U MW%1E:FIE-[6R2S_GT%JU9519]-LM]#MY(59X#D-#O70"^!J,Z..'GF=]:X.YV/Y'8;;GG\Y'<@X9[T,D]34&UZX4$WD8_>$/ONKOTG?Y'T@<-?=!) M?Z<.)JJ!%%2V]H/@S^8'YDE"!,E@HF77N M*SVO>GPUD6Q5MLD9DZKIEL-4'8N ZP"UOV!,ODQTYVT.6M$_4$L#!!0 ( M ^"BU@,;A%WQ , &@0 9 >&PO=V]R:W-H965T=:>(7&)(%9B!.N^RDG4Q)=S\K]@4TE257$B'97U]) M-N81X\".]PM8\CW']YPK"UT&:RY^R"6 0L\997+H+)7*KUU7)DO(L+SD.3!] M9\Y%AI4>BH4K"8CH) H0X'UUQ/< *6&2>?QLR1UJF<:X.[UAOV3 M%:_%/&()-YS^0U*U'#I]!Z4PQRNJOO'UGU *ZAJ^A%-I/]&ZC/4W##%V@<9H24Q1, MT9052\N4Z *]CT%A0N4'??U]%J/W[SZ@=X@P]+#D*XE9*@>NTDD9:CL-Y^>*2+O.ZPQL)#K7P#;)XH*L:\G,KOXTBCQOX#[5^-*M?.DV^P*"\!3Q M.<(9%XK\6[SP>KS@/%T32JUEA"4\ Z3P,\I7(N<2ZIQK?I3?12^ 1=VBO6E$ MGFM32V1[?D:5GU&CR,\;US"E/,%*O[4'_@G(C=%LL7&R]BV.7I7:C[H[Q2YL M:\SE7-M:(MNSK5?9UCO)MCHK"F2T8T70]\+PP(K>*\-JHN*WN/:2[U?)]QN3 MW_QH2J0XXFH)IM[53HV/[M3]5\D35DG:EJ%MLL5M ML>T;NCVY^HV'N7..6\U,9[O8ZHFU9&L^<;D[+5@&8F%;68D2OF*J:%VJV:I= M'MLF\6!^8MIHV]IM:8H>_ L6"Z+W60IS3>E=]G1&HFAKBX'BN6WT'KG2;:.] M7 ).09@ ?7_.N=H,S .J/Q=&OP!02P,$% @ #X*+6')8,E"U P 4Q$ M !D !X;"]W;W)K&ULM5AK;YM(%/TK(UI5K>0& M!@RV4QLI#U?MJDV]B;.K?IS M1D%&#HSV.V_WQD@V#@8Q2OR(3&/>X_/.7/' M/GBZ9?Q11 2_4[B5,R,2,KLW#1%$$%"Q!G+(%5W5HPG1*I3OC9%QH&$15,2 MF[9E>69":&KXT^+:@OM3ELN8IK#@2.1)0OB?2XC9=F9@X^G"+5U'4E\P_6E& MUG '\CY;<'5FUB@A32 5E*6(PVIF7.#S*SS2#47%/Q2V8N\8:2D/C#WJDZ_A MS+ T(X@AD!J"J)<-7$$<:R3%XU<%:M3OJ1OWCY_0/Q?BE9@'(N"*Q?_24$8S M8VR@$%8DC^4MVWZ!2I"K\0(6B^(_VE:UEH&"7$B65,V*04+3\I7\KHS8:\## M(PUVU6"_M,&I&IQ":,FLD'5-)/&GG&T1U]4*31\4WA3=2@U-]3+>2:[N4M4G M_<7MC\7\=OES@!;?+FZ6Z.+F&LW_OO^Z^#Z_60[0S7R)/J*[7X,D-!8?5-/]W35Z__8#>HMHBI81RX6J%5-3 M*M;ZOU.L]U47M6&V;5A=H'G'#.L M-B"K#8 G P8H!=DFL<0X,]ZU.;X)[ &O*= M6K[3A5[+/]2]YDRT+FX)YQ9P^C-EXSNVA]5*;/8EM51A;VS750VNPYKKL)/K M-Q!"#2()@CS)8R(A5!M<>1)0HC]"VMB6@-X>#QN[$_N ;5N5[1YAZ]9LW1]I@N<^H8&S9^(!P2Y4U=*QVPEY-V.NV5S/4?S3).-N YMDZ ITPIPY_3V - MQ:-:\>@5]OZH3_D]@37DCVOYXW[W_OC9V(V]PYW?7=/@.:EY3CIY7N8T#FFZ M?M%P=D*=NCH]@3548VOW56Z]PGA6H#TYT!=:TX*]-(/['=$*;W_^1A-L'0QI M6Y7KCMO'%.^B!.[\JO8_YSRE,N8 MV?Y X\FSOAP:-O*;#PY,K6[G(*[@\J2Y\&C M&"#)5=0'+@K>3$; T08B&L30SKH3]>0UZPFMZ<$N^F#O-<:VUR34%UK3@ET6 MPIU9XW^,[>A9R'F?33$$*N)G=H&VG\_.PDIH2EJ MJ_"%V,X]AWNN3YR;SI:R.QX@),!#%!+>U0(AXBM=YXL 19!?TA@1>6=)602% MG+*5SF.&H)^ HE"W#*.I1Q 3S>TD:QYS.W0M0DR0QP!?1Q%DC]!4(MZ&XGABLT06(6>TS.])S%QQ$B'%,"&%IVM9YYU3"[ S@)T(33-+9 V@@&Z'T2U@*EJRJ4%2FP0MU6"B MMG$BF+R+)4ZXWOB7-QQ/_]6 ][,WFH+>: "&OV M+H''I(.8>)3Q(20"0.*#X?T:QW)K!9@_@J^(KAB, [P />DK<#Y N*07TB> MV60 SL\NP!G !$P#NN82SCNZD$)4.OHB2_HZ3=IZ(>GOD%P"VZP!R[#J)?#^ MZ^%V$:[+\N4UM/(:6@F?_5(-\YK$>4W0KB8U0) HDYARULLYU=-[Q6.X0%U- M/IXM/-W6T73'*%[/0WEPRG/VAB&9 MLE^6WU&2MVY/160%O4ZNUSF!.YTJY5=$5I#?SN6W3^#.]C/CF8[=/'!G25#3 MK)>[TS2>6@7C->?F#TQ6/HU*7]M'"=ZZ.56Q%>7N=4;F">R9D595@HK8BB5X M:FS,HXW#>TM@/7MK6T[KP*)E0>U#B^I[C:WZJKB%;(4)!R%:2I1QV9)PEC;J MZ430..EUYU3(SCD9!O+C!C$5(.\O*16[B6J?\\\E]S]02P,$% @ #X*+ M6)AT^D&X @ GP< !D !X;"]W;W)K&ULK55K M;]HP%/TK5E9-K=21)[3K(!(0IG4:+*-TTSZZR8583>S4-M#]^]E.R"A-437U M2V+?G'-R[O7C]K>,WXL,0*+'(J=B8&52EE>V+9(,"BPZK 2JOBP9+[!44[ZR M19_1I"S[H\S$&$Y8+\T3;&NM8*%D+R8J:K!P4A%9O_%C788_@ M]EX@>#7!.R0$+Q#\FN"_EA#4A,!4IDK%U"'"$H=]SK:(:[12TP-33,-6Z1.J ME_U&#)?_#Y'\;?A;(&&LPA-?MQ>Q]/);'&.9I,%^H B4%LJ M(=BLU.11;3D!"-,4C9F0B"W15.TO"133I(K/H<2$"W0:@<0D%V=*Y/8F0J"XY=#TT9E9E $YI"^E3 5NDW-?!V M-1AY1Q6_8MI!OGN./,<+6@R-7T_W6^C1Z^G>D6S\9D5]H^?_]XIVVHI>B0;M MHOKRN1(E3F!@J:T@@&_ "M^_@[R_=Y% WKBOMNX[QYUKX^GT.>S.#B? MO#J?;1EUG_E0I70.,GH.\H)#4-0"XB39= M9F@NUX/X2'6?JEG\DZE:UQ3S%:$"Y;!4DD[G0EGB53NH)I*5YH*\8U)=MV:8 MJ0X*7 /4]R5C&PO=V]R:W-H965T]\0/Y\2. MAP,AWBA(&#P+)79IB\7P-E!]&CN^\="S(>J-,ASL>;O$: MEJ"^;1^$;KFE2T)28))PA@2L1L[$OXK\T BR*_XE<)"58V2&\LCY=].X3T:. M9^X(*,3*6&#]LX#><02IIS^1Q*U&3D# M!R6PPCNJ%OSP"8H!]8Q?S*G,OM$AO[:O+XYW4O&T$.L[2 G+?_%3 :(B\+M' M!$$A"-XK" M!^%Y!MQ!T,S+Y4#(.$59X/!3\@(2Y6KN9@PQFIM;#)\S\[TLE M]%FB=6I\>S^?S*?W\SLT62PF\[N;V$K=%40$(4NL4QH40]-X%IM3*5?26W M.(:1HTM7@MB#,_[S#[_O_=V$R:999,FLAC L$8:9>W@L]0C#+#8()T)@M@;] M.%&-B17:Y&?3++)D5N/7+?EU6U-PDNB\T[6(*8IYFA)E^"&<\AU3311SMU[F M9J:#_=CWANZ^RJ8UX*EL+)G5V/1*-KW?*T_T RTAWNE.]&4/@IEI ;UFX@(K M0&?++[>+\R:$K4%/342;9I$ELQKL?@F[;ZF0^S;YV32++)G5^%V4_"Y:D_6> M*="N"@F3?7KYM=83;;ZL F$RU?0WXWW]3U*W!3^5DR:S&:5!R M&OQV4=\\;8F.:+#-\'/;0N&Z-ZTK::TW/:RZTQA#$>[UVQH\4T(XE(-"J9(M_P;8(49VD>V\GZ?;;.)69 M+; MN5(\S0XW@/5SS5R@SZ\X5R\-LR51[EF-?P)02P,$% @ #X*+6&T;%L%2 M! 1A( !D !X;"]W;W)K&ULO5A=;^(X%/TK M5G:TFI':YHL [0)2"YW=60W;JK0[#Z-],.1"K$ELUG:@*^V/7]L)(4"P2H6V M#R5Q?(_O.;Z^OG9OS?@/D0!(])JE5/2=1,KEC>N*60(9%E=L"51]F3.>8:E> M^<(52PXX-D99Z@:>UW8S3*@SZ)FV1S[HL5RFA,(C1R+/,LS_N8.4K?N.[VP: MGL@BD;K!'?26> $3D"_+1Z[>W HE)AE001A%'.9]Y]:_&?DM;6!Z_$E@+6K/ M2%.9,O9#OWR)^XZG/8(49E)#8/6S@B&DJ492?OQ=@CK5F-JP_KQ!_VS(*S)3 M+&#(TF\DEDG?Z3HHACG.4_G$UK]!22C2>#.6"O,?K:A"6!N&>@9*RV:!5&ABIW8**T6&$)1[T.%LCKGLK M-/U@Q#36BCZA>MXGDJNO1-G)P?!A//[R/+[_XWF"+M%74!(*]'$$$I-4?%)- M+Y,1^OCA$_J "$7/"O!QO6[P(KX.Z97*/0O4. %K0:'AF\W#QO,1V\W#RQLPFHB0H/7.H+W ML 2.):$+E)I)N$!LJ5>&0)(A>)5 XR;1[:"2Y]"DC-5*IYH;L<0SZ#LJEPC@ M*W &/__DM[U?FG0Z$]B.:JU*M=;[59/ U8K!LDF".SON,>&L5J<*=R:P'>&B M2KCH%.$N$-<)\I+-+W,!" L!LG&1%ZB10=5[RFH0A9[7"_=.&_8MB?ZO97Z")5*&CMCB)V!Q]5H%$9P2GZ)$)8K:L M[_=Z50HR34'EM#PSD(S^U23;2>X4WJ"'.:IYH[(N>I )\**A:7*&_\LH(^LH M[YRX3C5QG5/"5B5&50")Q@7>.0A"_]IK[T7J8:<@BEI[D7K8*0RO_:K3#I%N M1:1K)?+-%"00([Q2C!90\M$IJXF,':SEH\SLK4U!83>-NL=-1U;3=\[T=270 M]6D"Q43,6*Y6(S^2T0N\;FV:O"LO"O9FO+%7V-F;]N:S+-R?Z%" M!;F8$T5_RG2YA%388[V]-^>$G8G3MW,SH6V*UFM MC/6MDOWZ.$'_UK+T(L<<4PF-D6+'.I'Y\*QHHW.A[>H8;'4,[#H6NC%>BS)] MWB!9GNELRT3.FS4M<-OU+-D^C#GKZ"=K=2:T7:VV%;MOKZZ'3$BABX,G6 '- MU<'I^QBR*?#&$L .=G+0G;6$/Q?:KI#;(MZW5]N3A'%YJ?<^Q%6]A5-AV]A+ ML'I^NXX.(^VPE^\?E*JC)K!ZV!:,W-H!6]5Y"W-1(9#9CXH#:]5:78;E==91+O+BT*%XD6YIC_)1)R3+SF ". M@>L.ZON<,;EYT0-45T>#_P!02P,$% @ #X*+6/^O U\D P >PH !D M !X;"]W;W)K&ULK99=;]HP%(;_BI554RNMS01^K%JG4J+"MVNW7 JXZ=V0ZT_WYV H$6)^RB-\2.<][G/2?XQ/T5%R]R M :#0:TJ9'#@+I;)SUY7) E(LSW@&3*_,N$BQTE,Q=V4F $^+H)2Z@>=%;HH) M<^)^<6\DXC[/%24,1@+)/$VQ>+L$RE<#QW>;\Q4QNIP/',XZ 0J*, M!-:7)5P!I49)^_B[%G4JI@G<'6_4;XKD=3+/6,(5IW_(5"T&3M=!4YCAG*I' MOOH)ZX0*@PFGLOA%J_+9J.>@))>*I^M@[2 EK+SBUW4A=@*"5DU L X("M\E MJ'!YC16.^X*OD#!/:S4S*%(MHK4YPLQ;&2NA5XF.4_'5PW!X.QG^N)^,T2FZ MR54NP'!(FJ>(@LX79?A-OP8ET?$U*$RH/$%'B# T6?!<8C:5?5=I)T;/3=;4 MRY(:U%!_87:&6OXW%'A!&SV-K]'QT]P5^K\M=J4H]UNJ'-4QD5 M%E%F'RWCH!NT^N[2PFI7K/8A5F1CE5'1#LMO1[Z=%5:L\!"K8V.%>ZR@$]I1 M486*#J&Z-E2TCPIJLNI4J,XA5,^&ZNRC_)J7U:U0W4;49 &ZI\X4"!NPNP>, M@IHR]BI@KQG(%:8?-K@-W=M#AY'?M;-];]MTO$;Z'4B)2)KE"J:ZE>BT02IK M&_'V^"W/J\'O]#R_$3\R.YLIM,0T!\1G_U&'M>*[0K1J"['M5WYCNRD+D>1" M&#L9%\67ZIBPA.;3HC3ZLY6(7 _A57^(=4L[L;H+]AM(QVQ_J[MMM_*;V]5G MN6NF7'S0:.BS_K;Y^N]%FE M&"[TZ1"$>4"OSSA7FXDYL%3GS?@?4$L#!!0 ( ^"BUC,G_BM+0( +<% M 9 >&PO=V]R:W-H965T\;,T J6D[M9/8HJ9;/SMP!*O89K8IZ;^?;0C+I(0/VQ?PG>]Y[KF#NZ@5 M\EF5 !KM6<55C$NMZZ7GJ:P$1M1$U,#-32$D(]J8I6@+)'8A57NC["X\1 MRG$2.=]:)I%H=$4YK"52#6-$OJZ@$FV, WQP/-!=J:W#2Z*:[& #^D>]EL;R M!I:<,N"*"HXD%#&^"I:KA8UW 3\IM.KHC&PE6R&>K7&?Q]BW@J""3%L&8EXO M< U598F,C%\])QY26N#Q^<#^Q=5N:MD2!=>B>J*Y+F/\":,<"M)4^D&T=]#7 M,[=\F:B4>Z*VBYW.,E0K<\A_QO L\('%2&!Y6K<)3Q M*^$3- T^H- /9R-\TZ'JJ>.;G>%+*:>L8:=*&P7:$5FJFF008S,#"N0+X.3M MFV#A?QZ1-1MDS49E]>U_135(*O)3\L8)UI?IB(SY(&,^WAVR/]>=4> _=F MK;24R!WE"E50&*@_^6C:)[LUT1E:U&XTMT*;07?'TFQ6D#; W!="Z(-A$PR[ M.OD-4$L#!!0 ( ^"BU@3D,&PO=V]R:W-H965T M,)EJK+E[9(.>#(@)+8=AVG8R>84"OHF[$)#_IL+6-"8<*1 M6"<)YOLAQ&P[L-K68>"!+%=2#]A!/\5+F()\2B=<]>R")2()4$$811P6 ^NV M?1.V'0TP%K\(;,51&^E09HP]Z\Y]-+ ?G-0J M?&K@/X[L?C%'U&=TD: MLST &@*%!9%H$F,JT,<0)":QN%0F3],0?;RX1!>(4#0F<:Q63_1MJ>:B&>UY M[G>8^75/^&V[:,RH7 ET1R.(R@2V"J*(Q#U$,G1K&;]CVD)>^Q-R'=>OF-#H M[7"O AZ^'>[61.,5Z^(9/N\$7_5*5.F<\?C5/#IMW(@4SV%@J;P@@&_ "MZ_ M:W><+U4:-4D6-D16TL\O]//KV(,12U),]Q\$@IW*D0*0RI$Z(2B[",W5UN-D MMC:I1^ -H4N!TE,*9YY4;M.N="+=!&ZKU[G3J5MH5@O89.9:])_9HD"QLB*^G7=EXJ.>=_S^4_&+JG#V8]\ERA MFF++E+*/RM\$^-)<(X3ZR:^IS.K'8K2XJMR: OW5^%!?84Q9_4*3W7_&F"^) MJH1C6"A*I]55/S">72FRCF2I*;)G3*J2W317ZAH&7!NH[PO&Y*&C'107N^ O M4$L#!!0 ( ^"BUA&1M=A00( #@% 9 >&PO=V]R:W-H965TBZ,BNAPG+ M:V#Z9,=%A94V1>'*6@#.+:BB;N!Y]VZ%"7.2R/HV(HGX7E'"8".0W%<5%N\3 MH+R)'=\Y.IY)42KC<).HQ@6DH%[JC="6V[/DI (F"6=(P"YVQO[C9&3B;*EYU8*V@ M(JQ=\5M7AQ- $%P !!T@L+K;BZS*&58XB01OD##1FLUL;*H6K<419AXE54*? M$HU3R=-\,7Y"T^_K'\OU8KZ>+N7"!W$SH?I @#N D'S_X]]Z7*Y+"7E)H MV8>7'H9+B::Z?(05P#("9^L?_@>%HU[AZ&K1-OA==Z>22(\&1*' %$E0BH+U MGE/;\OF>)33CXI $#X-1Y!Y.9;@G?W,%HK ]*U'&]TRU/W;O[V7.E.L]M2CS80)D"?[SA71\-&ULM9EK<^(V%(;_BL;MM)N9!"/9!I(",X"S[;:3#1.RV>E' MQ0CPQ+:H)"#Y]Y4OV/B"P(R3#\$V.N_1>73Q.:B_H^R-KP@1X-WW C[05D*L M[W2=.ROB8]ZB:Q+(;Q:4^5C(6[;4^9H1/(^,?$]'[79'][$;:,-^]&S*AGVZ M$9X;D"D#?./[F'V,B4=W PUJ^P=/[G(EP@?ZL+_&2S(CXL=ZRN2=GJK,79\$ MW*4!8&0QT$;PSD9&:!"U>'')CA]<@S"45TK?PIMO\X'6#GM$/.*(4 ++CRV9 M$,\+E60__DM$M=1G:'AXO5?_&@4O@WG%G$RH]].=B]5 ZVE@3A9XXXDGNON+ M) %9H9Y#/1[]![ND;5L#SH8+ZB?&L@>^&\2?^#T!<6" K",&*#% YQH8B8%1 M,(#F$0,S,3 C,G$H$0<;"SSL,[H#+&PMU<*+"&9D+<-W@W#<9X+);UUI)X:S MY\?)/S?CT>S>!I/'A^G]]]GH^=OC=W #9O%4 '0!1N'HN.(#;((Y86!"_34. M/G[G8":H\P8>U]$83CT<TA*J7_NJ@:$LNALE)4UEFH_F0X$,7%&#.Q2DP0+!,I MM^IT2ZWLJH[L V)Y:!T M4RC=LZ#(-^B"N$>&MEN&@LI,E([J,FE(+,>DES+IU=\7[J-/U:;0*V\*1LMX%>O,N3;ZJ)I2R[,Z2"RADM7/*.66 M9$9;PF0)D6Z]8,I<1_Z7B63$\Y)W<.*[>X#4-%H]LPA4V<7:0!M2RP-%&5#4 M%%#%FSIQ M$A.MCJE- I.U,;74-J>719M@R5J60==,H$(7&3@X>Z+1,5X36: M)C>EEH>7)DY5.?G]5?HL;0D<93G8K4,H\BET32^*;4\ MOBR1A^I,O@:^FKE+MSQ[JB99H_E_4VIYF%D% -4E0 GF$PE_00W7XX0&@F%' M;+ 'G@GSP9=_"6;\*K=Z*SFJ79K@(]0!/>#'/WM!,,+ M6-?;*4[TX/P9KA:J"[XIM3SXK I"-:N@*#4'-A8$?,4N R_8VQQ+ RHQERL? MV&Z9Q;=;=3-8R+5L=>\OI9.5-*AF27.2SHGUG_@KA-TIIICJ;M6>8I]1W*"L MN$$UBYN3$&LN;..\&==HS=.46LQ4/S@@\PE;1@>-'#AT$XCX""E]FAYFCJ(C MO,+S,;RSXR/)3"8^(7W ;.D&''AD(27;K:[,IUE\Z!C?"+J.CN%>J1#4CRY7 M!,\)"QO([Q>4BOU-Z" ]^AW^#U!+ P04 " /@HM8,#SQ(! $ P$P M&0 'AL+W=OO+#O&3SC .2^";797^_])7BT: M'1A_$SZ 1-^CD(JQX4NYO3--X?D0$=%A6Z#JFS7C$9'JEF],L>5 5MHI"DW; MLAPS(@$U)B/];,$G([:384!AP9'811'A_TTA9(>Q@8WW!U^"C2_C!^9DM"4; M6(+\9[O@ZL[,HJR""*@(&$4XMO/J_& MAA5G!"%X,@Y!U,<>9A"&<225Q[]I4",;,W;,7[]'_Z3%*S&O1,",A=^"E?3' MQL! *UB372B_L,.?D K2"7HL%/H_.J2VEH&\G9 L2IU5!E% DT_R/061<\#. M"0<[=;#+#KT3#MW4H7NN0R]UZ&DRB13-84XDF8PX.R >6ZMH\86&J;V5_(#& M\[Z47'T;*#\Y67Y]GOU].[U?/LS1[/EQ\?"TO/_Z^?D)W:)ELA006Z.93^@& M4$#1TRYZ!1X_>V+T]@6$A!5ZWL9S*)!D:+'CGJ_F 2U]PD%H9Q9%:H:7DGEO MZ-A'=3%-\BV[%Y-0K/SW;LU[O/SW>T&-=UL7KLZ7O?">:TC MG43JU4>*"\^=V!(/QH:J+ +X'HS)+S]AQ_J]CE*;P>8M!2L0[&4$>TW1)\D" MOM'K?*_7^0V:PB:@-* ;56M"0CVHPYF$=738N.SN)WC8LRQK9.[SH!I'OQ14 M2\$*H/H9J/Y9H/[@A,KRJY@@Z5>0V+A*I&KEN!6K>=7*[>:M"AJ<3(-SEH:D MH-5)<"K#WF+;KHIH'.?2:6TI6 &)FR%QST*BMM);=J M52NW,:$KY6+KV!Y9C8*_Z<91]3CW>^"J$4ZJ'%*]%J!/).#HA80[0 O5$VDV M5^P7:09NOJ)U;+=$JSG/2U^AMJ(5J>::3MPRU8;-)1T+VSF @X[3+P/$%EX!8C]CC,H0VRUMVTK6A'BL;O%S>WMCQ6VC[>\=/C2PAQ4 MWLI:LW+UFS>+N1;6L#) M\4QR(]E6'UB\,BE9I"]]("O@L8'Z?LV8?+^)!\@.R2;_ U!+ P04 " / M@HM8N\:*) ZB_!EW->Z7TD2R<:["E[Y6N,!?B5Q(0/K;40FQO;YN$:)XBWZ 83^69) M68*$O&4KFV\81@N=E,0V=)R.G:"(6*.!?C9CHP'=BC@B>,8 WR8)8O].<$SW M0\NUWAX\1JNU4 _LT6"#5GB.Q?-FQN2=G:LLH@03'E$"&%X.K;%[$[@=E: C M?D1XSP^N@;+R0NFKNKE;#"U']0C'.!1* LF?'9[B.%9*LA__9*)6WJ9*/+Q^ M4_^JS4LS+XCC*8U_1@NQ'EH]"RSP$FUC\4CW?^+,4%OIA33F^B_89[&.!<(M M%S3)DF4/DHBDO^A7!N(@01HU)\ L 583_'<2O"S!.S7!SQ)\32:UHCD$2*#1 M@-$]8"I:JJD+#5-G2_L14>,^%TR^C62>&,V?'J9_7T_&\]L 3!_N9[??Y^.G MNX?OX!K,TZD Z!),UXBL,(C44'/!HE#@!9!]"U_!ED2"@XL "Q3%_%+F/18A MJW5_*AO+Z/XEC.!CZPA?2F>FB'F8]) MZ@.^X\.%X)X2L>;@EBSPHBQ@2R@Y&?A&9@)K%?]"I 4\]PI !_J&#DU/3_<, MZ<'IZ;#&C9>/LZ?UO/?&6?,V<4WS?'.>6G9N^ :%>&C)=85CML/6Z/??W([S MAXE)DV)!0V(E7G[.RZ]3'SUL!1>(+"*RN@(3O(H(D9=RB8D1"3&XD),UG<*7 M)J:I=D=KJY5W-_)<9V#O#E'5MG\NJH;$2JC:.:IV+:KQ'C'YR7W$I'W$Q(7] M"A-#C-_I==UR6& *:W=A$5;RTNC#TCA<& MOU?A9(BI+AY!;0<_:;^?V^^?:O\CN_T3[!IBCNS6=NB3=EVG*)& MY4:\(5"K*>;<;9E[70/IY+3JLZW^MZ5=MAN?9WQ9XD4Y:Y;7^\^48%BL,R]F__K3C74%E',E>-ORA#E MM/I5O\:H7F6EL \.,Q+,5OI0B(.0;HE(_WO/G^8'3V-]W%)Y/E$'4OJ0I)!) M3[/N$9.[# U'T0K&86!@=O!+M3(K]\24EQ3(MF8Z*MTDN$EGA]Y#B2WV47E,Z>\KR M[\62']!(\1997)2_R5-=UAJ0Q;H065(' MRQ8D45K]#7[4';$38(\/!#AU@+,?X!T(<.L ][4!7AW@O39@5 >,7ALPK@/& M9=]7G57VM!^(8':69T\D5Z4E36V47%+?3*__GQ#O]Q>?+NZ_D(^DHLPC)3Z04RNTFH,J['PL\]%$,7%+[+(W:U/ M?O[I%_(3&9)B&>2\(%%*[M)(%!_D3KG];9FMBR -B[.AD,U5E0X7==,NJZ8Y M!YIF.^1SEHIE06@:\E '#.5Q;@_6>3G82\=(_&>0GA#7_D Z_/MSI"*='PM$^Z6X9:A+]WMP'%+GGMHX"BY/ZJ3.B3S+)&9 MKJC&QT6>!^DCE]E'D/MGLEON)G@N=U\\!7G8-2"J*KWN*E62_52L@@4_'\@L M6O!\PP>SO_[%'EM_ZQ(3"?.1,(J$,1!,&P3>=A!X)OIL'A1+$D:;*.3R%)<9 M7DE40A42.A"HC=.E<4<MY=!,*V7Q]M>'AM[^2[-^2)[3*/_R)-#Z^Q%5HBNGAZW^F=L6=9>3QLK M[7M^(&$4"6,@F*;<9*OM4GZ[ MU,1ME:+&)O?M71!,Z]W3;>^>&GOW]_)F3F:ZBPW/Y*B%I%$IC*)HNI]/(Z?25LS[)@ON8OT).IW4"C.RVG,9&])832:-0 M&D/1=#D;Q\,VWDO/E'-";N(@[=0*ZEU :3Z41J$TAJ+IFC8&ANV]O8UE(PV" M.93F0VD42F,HFCX6&C/$-KLA7];)O;PJE5FZ]K+EEKQ=3Y255:;JNM*0/&0Y MB8IB':2+3J?$7%'O 8"D^5 :K6G:%8=EM6YOV/%RNFB-MV*;S16:K.+LF7-2 M>5G7Y6Q*_O69*RW_W2D.TIZ80VD^E$:A-(:BZ4(W5HP]>8=,C30UYE":#Z51 M*(VA:/I8: P:TTG^\)"_2DHC4)I#$73A6W\*S,H30?2J-0&D/1=,D;#\MYAV4[ M#M3[@M)\*(U":0Q%T\="XWTYYM4[WY::0VD^E$:A-(:BZ8]K- Z=>VP- MF++(HXV^[J1*X.J)HBA9)VJ-:Y170^1P&C]2D6T=]F/-H;T?RH!Z=E :0]%T MM1O/SC5[=E^;Z;K*['>'KM_-H-X/W4"].RB-0FD,1=,%;KP[UWG[U.Y"33TH MS8?2*)3&4#1]+.P\BF=>F 9,[>:*#-^TF2-[BXU]W@[[P-W_P[5S&]?.-;MV M7WG*G\H;LUW[_K(\P7MD?>@2-2C-A](HE,90-%W\QKMS1^^0]:$.'I3F0VD4 M2F,HFCX6&@?/-:]\>RO7IFZ&]@!3^]$/^@Z-RC-A](HE,90-%WKQJ!SI^^0[J%>'I3F0VD42F,HFCX6&B_/-:]R M>[-T?]I.]Y-I.]]#?3LHC4)I#$73W[#1^':>V4Z[Y6F4Y6J)Y&*M[O&46?_: MA3M'?7USW7US 93F0VD42F,HFCXF&G?/L]]^7O"@1B"4YD-I%$IC*)H^%AHC MT#NZB*_78NHC.(/%8X[L+2G4SX/2&(JF2]KX>9[99KO9/L[P\J3^BXE73_MJ MF:W:+8+\D8OV94$]X7?*7U5]NC.]6R?[;U0PMZ^WTE S#TIC*%JE]'#G17P) ME]JH5R869)&M4U&]IFZ[=_M:QHOR981[^R_M3W[U7FD@?RZE 5D/]_R#+Q\D%5L'V)Y>R_ M4$L#!!0 ( ^"BUCOB,>%F@, /$- 9 >&PO=V]R:W-H965TV@,1*L0S(%M1INU?&HFVA M$NF1=)S^^Y&2HM@T+02&7V*1.N?PW$OFZG*\Y>*'7%&JP$M=,3GQ5DJMKWQ? MSE>T)O*2KRG3;Q9)[Z4RY4R$WXV7I,EG5'U=?T@],CO58JRIDR6G %! M%Q/O&E[E$!M"@_A6TJW<>08FE"?.?YC!73'Q N.(5G2NC 31/\]T2JO**&D? M_W6B7K^F(>X^OZI_;H+7P3P12:>\^EX6:C7Q4@\4=$$VE?K"MW_2+J#(Z,UY M)9N_8-MA P_,-U+QNB-K!W7)VE_RTB5BAP#C(P34$9!-"(\0<$? [R6$'2%L M,M.&TN0A)XID8\&W0!BT5C,/33(;M@Z_9&;?9TKHMZ7FJ>SN[^D_][?@\?K? MVQFX %->KSFC3$G %\V(L)^_27#'YKRFX)&\@-L7?>8D!1]SJDA9R4^:]G66 M@X\?/H$/H&3@<<4WDK!"CGVE'9IU_'GGYJ9U@XZX@0C<>S3H M?::(HB[G+2W>72W%D67< 0H@LGP?@N(0NUW'O>MX..-A P2@.W3N3 M]L[3P>J1TP75]:-PEH_TG.7CG&+YF<3V4C;J4S8ZM7R,#K;H8H2PM=L.4!I8 MH-P!PN&1V@&#MP][<%KUZ'B[Z^$ 6L8=(#NXW(&!^$CU@#L-"3RU?G3,O05' MD5WX'*@+I/_';/>#-DX\5Q"]A8E.*R,=S\JJ?; 9\PU3;-O:S_;WENNG6K?D;NPWF?8R=$_$LF025'2A)8/+1'L2[?VB M'2B^;CKN)ZYT_]X\KO2=C H#T.\7G*O7@5F@O^5E_P-02P,$% @ #X*+ M6'M:9T;.! :Q( !D !X;"]W;W)K&ULK5AK M<^HV$/TK&GJGD\S1.TVD>$Y*V7Q5[">ZU)2H)DO;7=R4;@VW% M)1T^)/BQN]YSM-(>:?3&Q7>Y!%#D/4N9''>62JTNNET9+2&C\IRO@.&;!1<9 M57@K7KMR)8#&QBE+NY[CA-V,)JPS&9EG#V(RXFN5)@P>!)'K+*/B[RM(^=NX MXW:V#QZ3UZ72#[J3T8J^PAS4\^I!X%VWC!(G&3"9<$8$+,:=2_=BYH;:P5C\ MEL";W+LF&LH+Y]_US4T\[C@Z(T@A4CH$Q9\-3"%-=23,XZ\B:*?\IG;?H0#4T_$BGDKSG[P5MDZ'1&NI M>%8X8P99PO)?^EX0L>> 0.T.7N'@U1V"#QS\PL$_U"$H' +#3 [%\#"CBDY& M@K\1H:TQFKXP9!IOA)\P/>YS)?!M@GYJA/=!$JY';CE32TFN60QQ-4 7$96PO"VL*Z\UXB^4G1/?_4H\ MQPLL"4T/=_(0="41%RLN* *L$I-=2NL;G-_ M0B59@8B J5,;KWG\H8FO%]#-Q#GWW%%WL\_7(4:S_S"JX.N5^'JM^*8\6ZT5 MQ 1PID;Z8@\?Y+/7ABJ/VMO+Q76\?EB#U;0:AJ%3@V4Q&@Q\.ZRPA!6VPGIF M E><5Y;\@X@TE)1+25Z P2)1-CQYN' O"7_0&]3@M'[SLU5]I& 5>OHE/?WV MJN8">QG;%7&<+!8@L(03FMKHZ3?H.?.\85#CQV(5!/4JMACY/<\^W(,2SZ 5 MSUQ59R;(KX2AWN$+LB@FL*EG!!E9AW_02,H-!_7A;QH-&L7(5IK?8-K4:;GI6FE-C##)A@GJ"4ZM1CYPWX-C<7(&X9V.*ZS M4PM.*Z#+^$_4)*C[%%&<;&BZSE4!"E#]9RKS[OY7NP9P&BEYSMYJD8.S6)UY MO7ZM7F?M>?[/.>CNJ2:WE8<[K-!B24+UFU*]^B(AO\XUD>KK.[4H-LN!^_5$H26LQEEFKVM+L . M9)C=E6'>8:V\]9I(>XV99C$*ZDUJ9K-R@P^TH;L3AVZ[.KPY2.(602H:-^SU M>W4D%K-*ERR@V,S\7KV9=O=VX1F(5W.:(;'EKYG*=Z[ET_+$Y-*<$]2>7^F3 M%+.[WX7)CV%NJ7A-F"0I+#"D<]['G$1^LI'?*+XR>_T7KA3/S.42*,HH;8#O M%YRK[8W^0'F^-/D74$L#!!0 ( ^"BUAY@O=+@@( .T% 9 >&PO M=V]R:W-H965TFE2;5WI]-$ MK:S@$N\TF%51,/TT1*$V R_T]AOW?+&T;L-/DY(M<(KVH;S39/D-2LX+E(8K M"1KG ^\RO!C&SK]R^,9Q8P[6X)3,E'ITQG4^\ )'" 5FUB$P^JUQA$(X(*+Q MOL/+E##5 M%S:U;TS.VR"B4'!9?UGV]T]' 1$T0L!T2X@JGC7B2J68V99FFBU >V\ M"-7D@:1C!1TBX- M7,D<\^< /BEH9$1[&<.H%?$SDQWHAF\@"J(>/$S'<'IRUH+;;:ZG6^%V_^-Z MCNFLHWO'HUU#79B293CPJ&,,ZC5ZZ>M781Q\:.'6:[CUVM#3:YE1&QITM1"N M4EE3*:H@5SE0ST*&FHI6>^#16K5GZ<,3,FU:^/8;OOU6I+$JT%B>@:1'III' M]ISZ,8(U;!A4N&[*K-/N^TX_\=='V,0-F_A?MT=\P+(MS98,^9K-!![+'O^= M/8PZYW]D]P]:L$"]J 8-Z5(K:>MN;':;6799M_!O]WH03IA><&E X)Q"@\XY MZ=?U<*D-J\JJH6?*TGBHEDN:QZB= YW/E;)[PR5H)GSZ"U!+ P04 " / M@HM8&'&>8TL$ #&#P &0 'AL+W=OED<95(EZ3M9+]^)TJ1 MY4@F.J-?;%'B'>^Y(X]WXZV0WU0*H,E+GG$U<5*M5Y>NJZ(41;B6S&XB2>.5U@$&42Z4$'Q;P-SR+)"$]KQO5+JU&L6@LWG-^V? M##S"/%,%X'> 8&P$@@-:&F9P5I03:=C*;9$%K-16_%@ M?&.DD8;Q(HP/6N)7AG)Z>O/G_,OM-7F<_7W]0#Z2>U! 9902RF.R@ V&>85! MT^21OI"YA)AI14X6H"G+U"D*/#TLR,F'4_*!,$X>4[%6**G&KD;;BA74TKUNZ>(P7ZH5C6#BX&E5(#?@3'_]Q1]XOW6A_21E M>Z"]&K1GTSZ]DTQ(L@+\BPGF&<)BW$ L>35[ZON:E@.= J&Y6'/<4"(ALKGQ MXL;&B\I-U^4RNQTA>46-78)SJ^"1[NG7[NE;S;H_!*KQA)6PY!DX)$QW,9?* M^T9YD:(W4W^ *7OL;IJ 5A..!!S4@ ,KX">(0=+L<$1WH)U1+;4/&H3]40O0 M:L*1@,,:<&@%O.&1R,%@P M>IPK(214Q3(E4*1$QJB'&3*[3PVXP%QC3##J] M8#7A_Z:#86O3? Q[XVX8U6X86=TPQW0M$8+,E(+N4(Y:H>SU6J&TKG)D M*"]JA@LKPP(2D+@5S?56^M:+3J2U_=VU[UG)?Y*LS4U!=0LPQ*.\@C.2-L-9P1W.9:%Q=Y> M0/ET>D9F)F%WWNY>"S[P6^Q=LP;>@8WH-VH8WPKUQ"5$8LG9O\C =L?S[53B M(^L M."I]3:KA19O*NNJQ5+NJR;?6*AC:A&Z$I,_9?L:E\3]8'!>TG6AA"ZWCEK0O M?2S:KD[R[07*HO-.[,3Y205+A=UK'\+>P4.XJVM\>V'3N!:Q$UMC%V".&%JT MHJQY++LO/+^CLAD%@^'[F'5,ZX?!\)WU;J,CRD$N3:.H2%2DK[*%J-_6S>C, MM&#OWE\53:KIM'9JR@[WELHEXXIDD*!*[WR(-LFR:2P'6JQ,W_4L-'9QYC'% M1AMD,0&_)T+HMT&Q0-VZ3_\#4$L#!!0 ( ^"BUB;3]GG@ , #@- 9 M >&PO=V]R:W-H965T>W; M:".M[8 A#2:V 5_=Y-I:)':PG77CUV,[64C:+&I1OS2V<\_=/4_LZWF\8?R7 M6 -(])@F5$RLM939N6V+: TI%F+!E/L513OK)%Q@''!I0FMN^D=5:Z@4['&=X!;<@[[,; MKF9VY24F*5!!&$47QNW1J53$UL#Y^]O[!D%=D%EC C"4_2"S7$VMHH1B6.$_D M-[;Y!"6AGO87L4287[0I;1T+1;F0+"W!*H.4T.*)'TLA:@"W_P+ *P'>-B!X M >"7 ']?0% " J-,0<7H,,<2AV/.-HAK:^5-#XR8!JWH$ZJ_^ZWDZBU1.!E> M?9E]O;Y$=Q<_+V_1.W1/.41L1*N- M;^?HY/5;]!H1BN[6+!>8QF)L2Y67]FY'90[3(@?OA1Q<#UTS*M<"7=(8XJ8# M6Q&J6'G/K*9>I\?/F)XAWSU%GN,%+0G-]H?[+?#Y_G"O@XU??2/?^//W^$9M MZA;HH!VM"\>YR' $$TM5!@'\ :SPS2NW[[QO4^:8SN9'<*B^ZD-=M%VC8.0/ MFD;S%J/AJ%<9-4CV*I*]3I+JB*IJ+T"H&IQ@J9A*AC).&$<9J$>LCJ8YQ%() MD#%!=+%M/:)%G'XMN\%PBV5G*H=NC=UX@=>N1;_2HG^X%E'..5!YJ!J=D0X] M4OT=JI[?&VWMCB-%;"@WJ)0;="IW^9@1CHT8^D0(B64NP8P3DA*)7]1IL$/M M7>!L;?Q99_!#]\V1G#5T&E8Z#3MU4EV03$!U/;)5C$[PH9MFV*)LX 9;N^9( M(1MJC"HU1O];8('&>Y36T>ZYZ/7\K-&O6W0<]U_K5&3B?!CYP) M@?(ZS5K]6)1L6_L=9S?KON-L4>L.?^C!.):W0BR[UE*FP%>F-1K?6I_I:8%K5?VZ*.\4UYNIO6* $ELJE+QF3SQ,=H+HLA7\!4$L#!!0 ( ^"BUATUD=3=00 M ,00 9 >&PO=V]R:W-H965T[X M',E['EYF!R'OU992C1XRGJNYM=5Z=V[;*MG2C*@SL:,Y?%D+F1$-0[FQU4Y2 MDE9.&;==QPGLC+#<6LRJ=]=R,1.%YBRGUQ*I(LN(?'Q'N3C,+6P]O;AAFZTN M7]B+V8YLZ(KJK[MK"2.[C9*RC.:*B1Q)NIY;%_A\Z3JE0V7QC=&#.GI&92IW M0MR7@X_IW')*1)331)?U+ M'IJ%.'+ TP$'MW%P?];!:QR\*M$:6976)=%D,9/B@&1I#='*AVIM*F_(AN7E M-JZTA*\,_/3BX^?EET_OT>W%O^]7:()6<$S2@E,DUNB6/*#WZS6LMZJ&--L) M"5N-+AF\E31/J$)Z2S3ZD^PINF&*(BW0)86/DJ:5_X52%-Q?7U)-&%=O8(JO MJTOT^M4;] JQ'-UN1:%(GJJ9K2&;$I.=-,C?U1_D_P,>?@MI,STUYU(Y3LV-9I^=J1Q(ZMZ 0%95[:BU^ M_PT'SA^FK%XHV+,_/BV/=/P!F,II%C!A>TX()1<%<4 M6!%Q1NX89YJ9T07]B;W(.T%G,,)1;$87MNC"470W<*B)3+8(2 /H>@\ZM -5 MT2@1"H@FK;+B?1O/"\UXL-.IFC.*Z%9HPAOU,4J+8RCK MP#DM?I.9$P]5ɳPJ%E===1D5HW%_H1U_J6C/D^V$$8]JTN*Z@+,/G)*" MX&N2;]@=-Y-*$^=XM2=>A./333&9!>& 6.!.W/"XNBU%KK0LZNME(G(MX8YI M!NKU$41>#Z?!"KON0*WA3M7PN*Q=RU*#]6-%)_1[P2HR,>+LB]Q"?;"4YHPFN%H:-<[M$'J M7HQ#-TC*?L (LZ\X$QR&<6\I#79Q.!TBVTZ<\+@ZM0V)AH:D/H=O44[-%=-7 M(]?U>TCCWG75"X9N-FXG6NZX:/6OU^8%;<(<3^_[CG,"+_P!02P,$% @ #X*+6/\!.+-:! D!, !D !X;"]W;W)K&ULM5AAPY:4Q4E0>*?VF;F;!R+!41!"#+Q0$D9DGDD'"8T_B,*1#@R!@8*8$DVL;BGVX^0 M$^HI/)_&7/^B;6YK&Q]!_<-!R=W M<(YU<','5RN34=$Z3(D@XR&C6\24M413 RVF]I;THU2M^T(P^6\D_<1X]GGR MY>X6/5S_>;M []&"QH2AVQ38Z@7-&?U'+@]'UVF %IOU.@:YXH+$:$)XB#[( MG$&S-,L]M89G4Q DBOFY!/JZF**S=^?H'8I2]!#2#2=IP(>FD#&KF4T_C^\F MB\]^(SYLHSN:BI#+H ((J@"F)%LPME\9W]BMB+^1] (Y^!=D6[;;$-#D>'>G MP7UZO+O=PL8IUL_1>,X;>)]E:9BE3\"%6AHY]&D"Z*]/T@S-!"3\[R;-,TRW M&5.5FBN^)CZ,#%E+.+ G,,8__X0]Z]3&?96CB7V&ZI6(];!UN<>^=>I34Z-7D[)G8:^8L<+> M*]A[QRZY(,_(9Q!$HG&U6W%.W3)>33RW5\N*CF:LZ-(O=.FWZG(/JF>(TA7R M5:G?I0*2]26)]+!1IGZ-F>/4-D7KW*>F14=@%9D&A4R# ^FCR^V!U!G4-!G4 M"T7K1*=JTA%819/+0I/+5DVN$\I$]&_6$M ENLV*RFZG<=42-#8:3>)=UL3K MNS7Q6B,Z5;R.P"KB86O7CUG'R\<@)@(")"A:/$P.5.0<^(!4[=.?JE57:%6Q M2LTK;A5+]Z%K$@7Z]145N['YA9V#E07"KGW9WU>H;N9Y7F^O.C>!.8,26)62 MO:-D'U-2'A0)-)?4&IG8MR8\NWJYSQ:W-W/@3Y5P5B -9[=1X MO,=.C6W="F/L[!-NP'*]-UH(O&L;<7O?^$6$4&3?&3S+;W(.YXUD.NKT]_^)#!77:8DT[1IEVA507==;:XO;4]3#D?[:RK[ABZ?%L=*U/DS9>WZCCIOT$<@.)CNK MNB-L%:4:1"T$0/0R !,&4@_U]2*EYOU 3% M(=SX/U!+ P04 " /@HM8B2=\W$T# #8"@ &0 'AL+W=O8^N$)%/%I254,@I6]I\Q1#,-*DL;,]Q(KN$F%CQ2*_=L7A$UZ+ !-TQ MP-=E"=G?"2KH=FRYUF[A'B]SH1;L>+2"2S1'XG%UQ^3,;E0R7"+",26 H<78 MNG0ODJ'":\!OC+:\-0;*R3.E+VIRG8TM1P6$"I0*I0#EWP9-45$H(1G&GUK3 M:K94Q/9XI_Y#>Y=>GB%'4UH\X4SD8VM@@0PMX+H0]W1[A6H_H=)+:<'U+]C6 M6,<"Z9H+6M9D&4&)2?4/7^L\M AN=(#@U02O2P@.$/R:X+^7$-2$0&>FLJ+S MD$ !XQ&C6\ 46JJI@4ZF9DO[F*ACGPLFGV+)$_'M[ %P>S*\N M[V?@-$$"XH*?@6_@<9Z TY,S< )LP'/($ >8@$>"!3]O+3SD=,TAR>3BR=Y\ M9 L9IMK,3NN0)E5(WH&07 _<4")R#F8D0]F^@"W]-2:]GWLI1BDM(2F7)6<4/-515S$_N> M'PY&]J:=# /*=X8=5&) #;P@:%![X8=-^.'1\)]T(4,9@!O$9%T&9%T^(P;H M8G<996WG0MX\3);R^LJ:B%.3TVJ;J!6=Z_M1V'%J0 7.P.\X-:#"OAN:G4:- MT^BHT]EB(;\-7#L3-'T!< N9N9Y$;_?OQCA]BQEV;1AD6H>Z9Z+?F.A_ZG%E MN%B+;LVK3/8-!Q8&W5?3@ KQTT7@='O4[4JP9.9?'/:%% MQL%*.M4VSTR&*K5^*PBO%W@=/R:0WWE+$Z/2 3?#QLWPJ)ND.HD/^!F:0AUV M_!A!W1?1!.K6#;OUS2\16^K>B8.4KHFHOHS-:M.>7>JNI+,^D6U;U67]EZEZ MOAO(EIAP4*"%E'1Z?7G/6=5'51-!5[JS>*9"]BEZF,O6$S$%D,\7E(K=1&W0 M-+/Q/U!+ P04 " /@HM8M47O6G " "1!@ &0 'AL+W=O*DG;Z=^7AZPZCA.D0%XD[G)G]B U&NZ$O%,U@$;WC'(U"FJMF_,P5&4- M#*LST0 W.RLA&=;&E.M0-1)PY4",ADD4Y2'#A ?%T/D6LAB*C::$PT(BM6$, MRS\3H&(W"N)@[UB2=:VM(RR[##>@?S4(:*^Q8*L* *R(XDK :!>/X?);9 M>!?PD\!.':R1[>16B#MK7%:C(+(% 8526P9L7EN8 J66R)3QN^4,NI06>+C> MLW]QO9M>;K&"J:"_2*7K43 (4 4KO*%Z*787T/;3LWREH,H]T<['YKT E1NE M!6O!I@)&N'_C^W8.!X X?P*0M(#D&) ] 4A;0/I20-8"W*A#WXJ;PPQK7 RE MV"%IHPV;7;AA.K1IGW![[#=:FEUB<+JXGG]'E]?3;U=SM)@OT#E'']&X MJH@]%TP1X?YRV5-Z-P.-"57O38BJL00U#+6IPG*%99MQXC,F3V2,$W0EN*X5 MFO,*JH<$H2F_ZR'9]S!)GF7\BOD92N,/*(F2[$1!TY?#TQ/PVC+DF%:$;JR:H%(R96VL^HO+NU @]5>ZHK#YNBWS02U-SA[:'PWD< M]JD_&!R'S1Z']?I1G/>[,-]0>/"Q,I!K)WK*U+KAVM_YSMOIZMC)R9%_8O36 MR^,_&B_65UBN"5>(PLI01F=](V_2"Z WM&B<)-P*;03&+6OSSP!I \S^2@B] M-VR"[B]4_ 502P,$% @ #X*+6!/30;W.!@ Z3P !D !X;"]W;W)K M&ULK9MKE@4.?;Q/R*UMC3-%+ M%,;9Q6!-:7HV&F7>&D=N-DQ2'+-O'A,2N90MDJ=1EA+L^H4H"D>2("BCR WB MP?R\6'=+YN?)AH9!C&\)RC91Y)+7*QPFVXN!.'A;<1<\K6F^8C0_3]TGO,+T M/KTE;&E44_P@PG$6)#$B^/%B<"F>.>(L%Q01/P.\S?8^HWQ7'I+D5[Y@^Q<# M(=\B'&*/Y@B7_7O&"QR&.8EMQ^\*.JASYL+]SV]TH]AYMC,/;H872?AWX-/U MQ6 Z0#Y^=#P)Q?$0@50*IKT"N!')?P;@2C-N"R1'!I!),^F90*H'25Z!6 K6O8%H)IFV! MV7$WI+ZA^[++JR2HH2TUSJSL])LD4DCV>\_$-1IX6>5580 MYY9:4<*^#9B.SA>7*PMI]D];T[]K*W3Y74.+F^OKF^]H]>-FX: [_?;^;F%= MKO05^JQAZ@9A]@5]0_;& M?G8^HFQ#\W0CK]HHO=PHZ@ZB>DZ0WKL8[]#;[^CESB $3M"]6&2W@[3 ME<0E7J9DB$3Q*Y($:=RQ00N^?(53)I\5(,O MO_%H+>_*;KZ3?1-RY5:/(R\+1^7V_]OW97]Y5W:GOUSBE*%.,CO%M, M/!Q3-M8QAWEL",WR#\A+HH@-3^QTX?U"?O <^#CNLLT5EYZ/WF=9ZGKX8L"& MYPR39SR8__F'J A_=95\"9L5L'SD?IX+0[:3S_MU#9E0AX09D# 3$F9!PFQ( MV!(2Y@#!&CX:USX:!&-"IC4 M%3#A5L!B_Y1)<+HAWIJ=33/TF9U/RPN:+UT_.Y=ZZL\."=,@83HDS("$F9 P M"Q)FES!EKT8E66#!K6(_#!.GDXDJCELE?Q@WD51U(G77O5+7O?*1NN^\6N"2 M3JUU2)@&"=,A808DS(2$69 P6SD\'TMCI57"R\,H92K)2JO0#Z,D05:/U+E: MU[G*K?-5?@I'*0D\W%7:7/&II0T)TR!A>@D3I;UC.Q:&0FMT-2!SFI P"Q)F MJP>7(AT'8WD8)2M#56T5;4?4=*ATU^RTKMGI^S6;H=0-?/28$$3=%[0-Z'J= MA'X0/Q7KBDN3XB&BGU^BICC.W/S99%>1<[.=6N20, T2ID/"#$B8"0FS(&'V M].#B0A8%I75F7D*F=(!@#6?-:F?-WG?6M](UJ?L:X9AV&88+.=4PD# -$J9# MP@Q(F D)LR!A]NQP[%"'XJQE&,B4#A"L81A1V/4%A \\(BG&ICZ/1_CT4[T$ M2M- :3HHS0"EF: T"Y1F@]*6%8W_,,IY+ZKIE;T>FLCURH_\2?R&O%:WU31! M&:8TQ-5RDA;=8_R"B1?DSYATQE,E>2).VE=T'7%"VR.\D*9!I)U!)*Y!M(!@C[+;EW^N M[+I(&D:*$T'I1F@-!.49H'2[(JV/QZHLB"TVQJ@21TH6M--N_:PR.\/ MG](EX:-.=A D30.EZ: T Y1F@M(L4)HM'G:O9>G00) Y'2A:TT"[[KK(;Z^_ MTW[AJT_V#&@?'92F5[3&@R-YV+HO-4!SFJ T"Y1F]SH>2]"<#A2MZ85=QUWD MM]Q7FX<,_][@F"+]F?WMOL4';;:#TC10F@Y*,T!I)BC- J79H+0E*,V!HC4= MMNOUB_QF_X=O?M3#=VR4]L"\X"<_V4R@#7Y0F@%*,T%I%BC-!J4M06D.%*UI MIMU+""+_+823[GVFAU>VA_X!?74 E*:#T@Q0F@E*LT!I-BAM"4ISH&A-_^Q> M-1![O&O N?7IZ"2/AU.U;1K0UP= :3HHS0"EF: T"Y1F@]*6H#0'BE::9K0W M(3'"Y*F8,YLA+]G$M)SM5*^MY^5>%K-16^MU\8@+D#E]. KYV MR5,09RC$CRR5,%39X$3*>;7E DW28CKD0T)I$A4?U]CU,/24+?%O($ M]>SF^7]02P,$% @ #X*+6",%0!Y* P -@T !D !X;"]W;W)K&ULO9=O;]HP$,:_BI5-TR:MS1\*M!U$*I1M3&N%"MNT MEX8P&GM=R$\JX$W9LWTB&';'2 M,>,PDD2MDH3*^Q[$8M-U?.>AXXXMEMITN&$GI0L8@_Z4CB2VW$(E8@EPQ00G M$N9=Y\J_[/N!";!/?&:P45O7Q*!,A?AN&L.HZWC&$<0PTT:"XM\:^A#'1@E] M_,A%G6),$[A]_:#^UL(CS)0JZ(OX"XOTLNN<.R2".5W%^DYLWD,.U#1Z,Q$K M^TLVV;,MSR&SE=(BR8/10<)X]D]_YA.Q%>"W#@0$>4"P'W!V(*"1!S0L:.;, M8EU33<..%!LBS=.H9B[LW-AHI&'<+.-82[S+,$Z'GZ_NAE>]CP,RO)T,[@;C M"1G<3H:3K^3E-6C*8O6*G)!/XVOR\ODK\IPP3B9+L5*41ZKC:C1@9-Q9/E@O M&RPX,)@?D!O!]5*1 8\@VA5PT7EA/WBPWPLJ%3]0?DH:_FL2>$&CQ%#_S\.# M"CN-8C8;5J]Q:#:I9'0: QER#1*41E#-]'W95&5*9^5*)GLO54IGT'4P/17( M-3CABV=^RWM3AEF3V [T60%]5J4>]FG*-(W9+XA(*L4W3%!,I#6>$"GFNR8S MH73I9JF4/78&,K&F%3-GUSIL7WA>QUV7D#4+LF8EV8C>&P)%Q)Q$3&G)IBM[ M^&A!N. G,]S,4L08ML#,R%:\#+3YQ%NKW2ZL9?XKG?SE"K8*SE8EY^T>R["" MI5+IV$6K26P'NEU MVO+U7:=T#6)[4"?%]#G_R97*V6/G8'S)_D0- _EZD5! M=E%)]FXT+O-=&72L[YK$=OA\[_%-[=6V87.IFKCK4ML%WRI1_.JEQ6J4X*FK M0.L8[#[% YDE*642]_'^_BV=CVR$UM:60WO>WAE<[>-O.8-'SN"_O&[R87;> MA4]9*[THOB_\J6O'O]/?-18"O;1YGLB^*& MR@7CBL0P1TGOM(U\,BO2LX86J:USIT)CU6POE_AA ](\@/?G0NB'AAF@^%0* M?P-02P,$% @ #X*+6";P89SB!0 8C0 !D !X;"]W;W)K&ULM5MM;^HV&/TK429-F[058H>7=@6IQ7=:)_5%M'?[G 8# M69.8Q0;NE?;CY[PTQJDQ!)Y^:4GR/,?VP0?[Q/;UEF5O?$FI<+XE<O,AK,BJ0D[J!NM]])@BAUQ]?%O:=L M?,W6(HY2^I0Y?)TD0?;]EL9L.W(]]_W&-%HL17ZC,[Y>!0OZ3,77U5,FKSHU MRBQ*:,HCECH9G8_<&^^*^$5"$?%71+=\Y[.3-^65L;?\XFXVN/OY'?WWHO&R,:\!IQ,6_QW-Q'+D#EUG1N?! M.A93MOV#5@WJY7@ABWGQU]E6L5W7"==;E[?'AV?B)4!%',?W9^K:I!L^N. MD"7F>9VP0K\MT=$>= \Y]RP52^Y\26=TI@-T9%7K^J+W^MXB*^*?07KA8.\7 M!W61;ZC0Y/AT;$@GQZ TVU!W_.,/7K_[FXD^2# " M!*91Z]?4^@4Z;D4M-Q'H0Q(("4: P#0">S6!/6O??%@GKY(^-J_U;R2O!.D7 M(/D@LQE+76UV&3D80:P5.;&9_;J9_3,D*&_*.Z%P;CBGPM1^*WK;S@,)1H# M-%8'-:L#*/4-( F$!"- 8!J!PYK (83ZAA^TA1KJ^QCA-=1GK\YC2XT=%:[EMNQ4D& $"T_CVNFJ^UX529H4$Q"$H&H%"TUG< MF35[UG[[1+.K("TX7TAT),Z\E]N6.)KL77K\A7&,4;D01 M>SU/Y0$I'A"T?@\/J?8R6_<[2#0"A:;SK?R"A\'4"^H+0-$(%)K.HK(&GG7B M?*9Z?9,N+YOJ-44-FN+]C/F]IR;XGGV&WTJ\+UMV_.!K+[AUWX-$(U!H.NG* M;GA], 6#>@M0- *%IK.H[(5GG7R?J>"!:?SUFPHV1J&FA#_#)'C*)7AVFW"" MA(\8?X$<0<4C)!J!0M/Y5G;%NP13+Z@# 44C4&CZ*USE09!U=GZ>>BOLQOC; MM+WV&K3E"PI-YTNY#61W&^U4OLQH"Y]L+[IM-P5%(U!H.NW*W" $)78$:EE MT0@4FLZBLBS(OL9QGMCQ,4.U.:HY5-OK>2H/RG2@ Z:#;657NDMGLNW9=^=9 M%A"%E$NE/F5LMI8#LE'=4[JAZ=HL7="%"U T H6FDZVL#>J!21?4JX"B$2@T MG47E59!];>0\Z?9-#KBY.&2.:K[E,D<-ZRB]?14T!-,DJ ,!12-0:#J+RH$@^XK)D0M#%8IM7=80\F'(_!CBF46' MU>0?'YC\GR@ZX\MDBQ+MU6B]+P+43T"AZ5^!\A/8@U(B!K4'H&@$"DUG4=D# M;%_[.&MTK+ ;4];F6V1C%!XV5&J,Z@WV"'5G;]*!B3N,4,NW3C:APFY@@MW! M]!F> 2O/@,$V,6%0,P"*1J#0=!:5&<#V=8[SA-H[9K'6'-4<3NWU/)4'-9W' M!Z;S0(*N7C#9) VZ<@&*1J#0]"]!>0X,MC,*@WH)4#0"A::SJ+P$MJ][G"?I MH4FLO::D05T#%)K.EW(-V.X::M'S\U\[V8MJW2U!%S:@T/0MQ\K;^&";JWQ0 M>P**1J#0=!:5/?$_<7.5;]HVA9KB-D9^?PA:S@HCC$PIUB M\:4\UU#?K0_*W!3'0QKW;[TK4AYW43#EZ9O[(%M$*7=B.I>0W8N!G$=DY8&6 M\D*P57'$XY4)R5+Q<4F#&&PO=V]R:W-H965TV19V1IK5R'%2[(\O M-3,V1SR'E+3F^D/BRZLS.J1(/GQ)\>R^:7_=WI9EEWQ;K^KMJY/;KMN\/#W= M7MV6ZV+[HMF4M?G+==.NB\[\V-Z<;C=M62QW%ZU7IS1-Y>FZJ.J3\[/=[SZV MYV?-7;>JZO)CFVSOUNNB_?ZZ7#7WKT[(R<,O/E4WMUW_B]/SLTUQ4WXNNU\V M'UOST^ECE&6U+NMMU=1)6UZ_.OF9O,PSVE^P4_RK*N^W1]\G?2J73?-K_\/; MY:N3M+^C=7V(POSWM5R4JU4?R=S';X>@)X^?V5]X_/U#]+_ODC?)7!;; M%?-:KO[-[G?:R4_2:[NMEVS M/EQL[F!=U?O_BV^'@CBZ@"K/!?1P 74OH)X+V.$"-O4"?KB [TIFG\JN'/*B M*\[/VN8^:7NUB=9_LRO,W=4F_:KNZ_USUYJ_5N:Z[OSSQ9MW%^^_))\N/G[X M].7M^S?)CWG9%=5J^U/R0U+5R9?;YFY;U,OMV6EG/J^_ZO3J$/OU/C;UQ"8T M>=?4W>TVN:B7Y7(8X-3[?4V#$?]9U"\21IXE-*4\^>5SGOSXPT]) MU95KY.X6TV.QAUA(F'QZ&(J'&:3*'BN&[>(R7\64-Z9Y=G?L**+&2R/%&Q0 MC/RQ&'DH^OF'3=D6N^+;'@KT=]_S\GH?2>XB]?WEUW-R=OKUN%B"GS6W6"(% M&Q2+>"P6$2R63^77LKXKT4:]OU(<%8-0S'PY90%E7(B4IT-9CD1+,Z:L;'#_ M\O'^9?#^%\VV2YIK,_+X\Y"@.GE&>98Y>4 9DUHJ1Y8CT=),,HWGH1[S4,$\ MWK3-=IMLVN:ZZK <%/A4G6K&G100E632>7ASJ,HRQ2B>@'Y,0 <3^&Q&;-.Z MGB4W96U:VBHQ0T52+,U(56V[ON5]+9/RFZ&4+5Y)&A8K9THZ"6(JF5$G041E M\B-X@MEC@EDPP;?K35&UNYYC9>H*RR$88&[/&S-8GH$245GJ*1"26F1(PT52 M7S7K,OFQ+X^?DNNV62?-OIMM:AP34J2-<:&=6D9DG$CIMD1,Q@7Q]"CDB(1( M>*CH;LO6(,]1E MH8?R(;VN^(:WQT/,P1WK#'3^F$RFJ=OY8S*52E]JEHU(D!D>4C-9/'0N:"X, M5I(4L)(0&:&9='/!9$Q(3RX64$B84-Y??$G>OE]\>'>!Y@"AA%$&FPXB,R7- MW1P0F3 5XLG!T@0)X\3/ZYY1_[?K ?IAN:J[HKZI+E>>ATS VW![\P4B.AZM M#@E!D?:Q!;%P0<)TD9>F<[VJO*A-( S0E( V@J@RS=P,$/Y@4GE2L%Q!PF#Q ML>V[Y.[[LV2S*LS8U0_+Y6]WU68WDA7+9>7OK2$H4"7<(1E1,:9 _4 5X=37 M_BUTD#!U+.[:=I?'=EMV>!(0!@17Q,6Z!:+CS#Q"(!$D7JJHYIY4+%Z0,%\\ MI+*JBLMJ96K%TV3@4,[,A%.F;CY09R:F(@6/':*C)J+GP:,6#F@8#MXTS?*^ M6JVP)"@ R39:/RH896 Z@80[XTG0]QWH?+0J':Y%I2MU'"]&9H91K MY>:!Q!.FBQ>>1"P T#$ Z,K6#)2;HOZ>7*PJ ^5^1@O'FDNQ4:/EL:(-R]'2 M!HULQ="H7DS4:'FL:,.RM+1#P[03,AXHI!.W>T,D$E G(C(=@X<*J(4<&H:< M1=.:^B^Z\EGROJF?/SP5_WE7KB_+]K]H1L&(LQ^$F-'R6-&&I6D9B\K(C2K( M;+/+,F:T/%:T85E:V*-AV'NJ"4,12B,D ^,R(DLUF&0@,BV]HYEE/AIFOMFN M X7(]AQ-"]-A>2&Z0&*6 &F8 .?X#A1BVW/"8$I0!HS/'!%YZ(]9^F-SK*&) MG@.#(/><4*'=*0>J2UGJ3.AS3*>E\EBUS((A"X/AV+20(<#GIC JR8.2X9U; M$F1A$GS";)!!"\=]VA )<=T31.-I..QHA2SL HW/ AGBV:2I!/XRHM-<@-DL M%DY(DOF>+$M%+$Q%$R>!#%FATM3ULS 5A[D@*L5]F5A(8F%(&IL\,6C8F":< MF4W];+.S."?D\^FS&[NO+42E0P MB1HMCQ5M6(H63)B*"WDL"#JSRS)FM#Q6M&%96OYA8?X)&2L,H@G1''9SDV3Y MJ&R8@04=%@8=3YM*?D_L*OWAB<$;6M2%MJC1\EC1AIL<+'?Q-&Y#XT&.FUN6 M4:/EL:(-R])B'@]C7LBBX B<$4DUV"@"=8Q+Z&%BNDRG.L/;&K?$Q\/$-V6# M!$?03IA!U@4*1$>5XL CQ^(119C'>>$6]'@8],9V27#(94(+T/TA,JDE6(Y% M9#K-A*]*CG8BA2'OJ;-TCMA:G"IWBH')J&3N) F3:48][CFW ,C# #AAOT0X MPNR^)ZHKQI%51^^6"6YQDH=QVNK>2(B@KNR\AJ^92_3A:+/;:%36XM@:IV?F*BQ"B;!U->;N".@J">JL MY2TPD707_!"13#W/KK#8(L+8\@2/1V"[F:0[?&(J+L!^3ZA2Q#.J"(LS8@1G M1JT>@<"'9B)U=\I@NM30C LSF(Y2[G-(A(49,:G #"LX+YTFRT=EPPR.]D(_S;,2D DX(0(, M78B.,3,0?=ZHD1FMF'N$.6H@N MZ]T=]_471*9TYGN-QX*=?+I/)9'U1*\*D\GC1?YA%A;GY)_K4DEDAQ9W[WZ!J%0&-G(A M*DU\/;NTO"='+*JY9HQ$5ADI>-5M@:#B'ROKDA+13),16,V@T06 MWU)@)F&J3($,H(HRZG$:I"4C.;*.]\>=!@FM&Y(2U\+&5(JXW(?&\G0.RO*) M"MM XTZ#0CR>C%"WBA 9IUR[=83(S#Q?>T8C9=E A=E@HLV@L 4M[;YSMT!D M-!/ _$%DF6">[4O*0H(*0T)H)J'@:([,)":I\C'5\/8M&*@P&(SY"PH.Y4JF MQ.VT$)E,4P8>*"@SXV_JZ;B4!0,5!H,O_5D=S7I]5U=7^Z&R)_>V,%1P=]7= MF=$FY#F$@\^E^*C1\EC1A@5K<42)N#,B%77]+&JT/%:T85E:"E)A"@KV%)!/ M,I=T)FCRL&9XXT?G (0I9WKKFFQ"A#]Q]F,2U9J*%6U8VA;"E([1%J!T&*!FNBWA:'/'18W84:XYD,?ZR&$!65#385 ;\V\T M=(TX;*J("/C4J,BSDT(?G=<4]I^>8-YH]( E-S5L\[B[?0L1BN$60+(P@8W[-X?+C,^TD>#5I@:@4 M 8B!QN(NTIX>'?"Y+MN;W4&IV^2JN:N[_>F9C[]]/(SUY]T1I,[O7Y.7^?Y( M51MF?\+KNZ*]JFY#IBWXBW^X/3=W_T#6;W3&BETW7->O=M[=EL2S; M7F#^?MTTW<,/_0<\'EU[_G]02P,$% @ #X*+6.=Z%K/; @ W@< !D M !X;"]W;W)K&ULK55=;]HP%/TK5E9-K;0UWP$Z MB$1IJS&U% '=GDVX-%:=.+/-1__];"=D%%+4A[XDMG/.N>=>Q]?=#>,O(@60 M:)O17/2L5,KBRK9%DD*&Q24K(%=?EHQG6*HI?[9%P0$O#"FCMN=QE*TE)#F..Q"K+,'^]!LHV/#EL8;P&\"&[$W1CJ3.6,O>C)<]"Q'&P(*B=0*6+W6 M, !*M9"R\;?2M.J0FK@_WJG?F=Q5+G,L8,#H'[*0:<]J6V@!2[RB_H4:; T6#%.>02]84 *=#Y#4A,J+A0 M@*?I#3H_NT!GB.1HEK*5P/E"=&VIO.J(=E+YNBY]>>_X^H7S2^2[WY#G>$$# M??!QNO^6;JL*U67RZC)Y1L__A#(U)5NJ!\WJ^J1>B0(GT+/4413 UV#%7[^X MD?.C*?5/$GM3"+\NA']*/1[F" U%XC%;3 9*'V M?X>$QOTOXX0FCNXUZ]AM>U&K:Z_W_TVF'!R:/0:[;)N5$LL(TY#F3JKV;8:HN8. :H+XO&9.[B>[Q]94>_P-02P,$% M @ #X*+6+Z:B_C @ M0< !D !X;"]W;W)K&ULK95=;]HP%(;_BI554RMMS7="NQ")TE9E:BDJ=+LVX4"\.G%F&^C^_>PD M1)2DJ!>] 7^<]_5S3I+C:,OXBT@!)'K-:"[Z1BIE<6F:(DDAP^*<%9"KG27C M&99JRE>F*#C@12G*J.E85F!FF.1&')5K$QY';"TIR6'"D5AG&>;_KH"R;=^P MC=W"$UFE4B^8<53@%4Q!/A<3KF9FX[(@&>2"L!QQ6/:-@7TY#'5\&?"+P%;L MC9'.9,[8BYZ,%GW#TD! (9': :N_#0R!4FVD,/[6GD9SI!;NCW?NMV7N*I4_G$MG=0Y^-KOX114?ZB;1UK&2A9"\FR6JP(,I)7 M__BUKL.>P/;>$3BUP/FHP*T%;IEH15:F=8TECB/.MHCK:.6F!V5M2K7*AN3Z M*4XE5[M$Z60\?9Y,[F\>;L:SP3VZ'8T'X^%(C::SP:Q<1:/Q[>/3PV V>ARC M[VB0)'P-"W3SJEXC 0*=7H/$A(HSM?D\O4:G)V?H!)$MW%35:4KD-"5R2C_W$TK4E6SE M[G6[ZZ_T4A0X@;ZA/D,!? -&_/6+'5@_NE+_)+,WA7";0KC'W./=PR\X^Z.^ M0I0P(3L?;V7CES:ZC6QB[\)V_<7M"-Z#>(_E'$>U!M!U&"YX022:"SA'Z;+W0. M\=I!MA^$W71!0Q<&ULM511 M3]LP$/XKIPQ-(&U-FA:86!HI!2HZT5*U97LVR:6Q<.S,=EKX][.=-.LFZ-/V M$OO.=]]]=[F[:"?DLRH0-;R4C*N15VA=7?F^2@LLB>J)"KEYR84LB3:BW/BJ MDD@RYU0R/PR""[\DE'MQY'0+&4>BUHQR7$A0=5D2^3I&)G8CK^_M%4NZ*;15 M^'%4D0VN4#]6"VDDOT/):(E<4<%!8C[RDO[5^-S:.X/O%'?JX XVDR8 DAPU1;!&*.+5XC8Q;(T/C98GI=2.MX>-^C3USN)II+72HFR=#8.2\N8D+VT=#AS"\!V' ML'4('>\FD&-Y0S2)(REV(*VU0;,7EZKS-N0HMS]EI:5YI<9/QZO'Q>+^=G8[ M7R?W,)G.D_GUU-Q6ZV3MM#"=3QZ6LV0]?9C#9TBRC-IJ$@93WK2$K>WI#6I" MF3J#$Z <9I0QHU:1KPU%&\A/6SKCAD[X#IU^"#/!=:'@EF>8_0G@F]RZ!,-] M@N/P*.(WPGLPZ'^", B'\+BZ@=.3LR.X@ZYP X<[? =W(DF=U0RY9J^F%EF= M8@8+\FH:5K^5]U$T.WI7JB(ICCPS6PKE%KWXXX?^1?#U"-=AQW7HT ?_X">_ MQ7WX'[B?=]S/C]9Y+;1I-E**FFL0.>2V[L"$4D!X!I44.2K5M&2.:!9%*K8H M_^Z=)I$F5#]PL>R^VL9A[S+RMX<$_8-I*E%NW,Y0D%H&S6!UVFXM)Y:F-6*TAJ8]UP(O1=L@&Y9 MQ[\ 4$L#!!0 ( ^"BUB_V+!L1@0 /@7 9 >&PO=V]R:W-H965T MLS1G4VW+ M>7&KZRS>H@RR$2E0+OY9$YI!+B[I1F<%13"IDK)4MPS#TS.(X]TMF$ ME#S%.7JD@)59!NG+/4K)?JJ9VNN-+WBSY?*&/IL4<(,6B"^+1RJN]):2X SE M#),<4+2>:G?F;63:,J&*^(;1GAV< SF4%2%/\N+W9*H9LDL[&HA+QDG6)(L>9#BO?^%S(\1!@OE>@M4D6,<)WCL)=I-@ MG]N"TR0XYR:X38)[;H+7)'B5]K58E=(!Y' VH60/J(P6-'E2V55E"X%Q+F?6 M@E/Q+Q9Y?+98WB_"S\OPTU<0?A/'!;@*$(VN0>%?0$3#-C\ R+*>O0\/I?\!\!.SWTX/ST^V>]/#\=*LG M/3IG[$9?YSM:VNW$L"N>?>[$Z.G2?8UP^A%R4;QE!8S15!.K'D-TA[39SS^9 MGO%KGSDJ88%*6*@2%BF"=4QU6E.=(?IL3K),+.=B58F?Q'NA*&F\%IE_INZYM.-RX\C7,MWW>M M;EBD: @=V=U6=O>_R)[T23U(NE3J&N8>:F@YWI&"P6F4-[9L[TCGTRC+L/UC MF15UOR.SU\KL#1+E:UA_H$:CC$RS"-E3Z-L;^3[1\KV M1(U'1_)'BGK?$=9OA?4'A;U+_A&5B*@G.> $B)<_2#%J(0%_LDT=YR3-4=EBY$B6,?9<>OL M>/B1*5<,?2^EL^%.'O]Z0-D*T;_[3!M$76J:2EB@$A:JA$6*8!US;UIS;WZ\ MA+M1::I*6* 2%JJ$18I@'5--X^V+S?A?BK@&VZF4/..H[)H/-WZIATIIH5): MI(K6M?'@P]M45A0VJ,.WDGWJW&![%SNGDA8JI46J:%WGK#?GK!^I,YOL3FWH MC,;^L5V#C5QLETI:J)06J:)U[7K;R# '/ZEG =[A!.4) P5\@:L4 9B14M0Z M!:+U>MGKHM*]#:6T0"DM5$J+&MKA[#=&=COW:P_U@PW+#-%-M;7,0"QMJ;?[ MVKOM]O5=M6E[=']NWH;U)O0;IMX3?X!T@W/QI8+6 FF,?+%XTGJ;N;[@I*BV M15>$&PO=V]R:W-H965T9 2CT5.1,3IU,J7*"L4PR*(B\YB4P?;+FHB!*AV*#92F I!94 MY-ASW1$N"&5.%-J]A8A"7JF<,E@()*NB(.)Y!CFOI\[ V6W&.):4%,$DY0P+64^=F,(D#DV\3?E&HY=X:F4E6G#^:X#:=.JYI M"')(E&$@^K&%.>2Y(=)M_&DYG:ZD >ZO=^Q?[.QZEA61,.?Y;YJJ;.J,'93" MFE2YNN?U5VCG&1J^A.?2_J*ZR1T.'9144O&B!>L."LJ:)WEJ==@##$9' %X+ M\ X!P1& WP+\"4)2V6(E:YM M&'#2UIDU=;PC=08>NN-,91)]9BFD+PFP;KKKW-MU/O-.,GXC[!KY@W?(<[V@ MIZ'Y^7"_!QZ?#_=.3.-W]^!;/O]_[J%/[H8NZ*[FO2D^6['P^RXIZLL1<$758S!=[[@Q8@-M;H)$IXQ53SQG>[G9?> M6 LYV)]ICVTL\1]-8]!W1&PHDRB'M:9TKS_HGD1C>DV@>&EM8,65-A6[S/1W M H1)T.=KSM4N, 6Z+T_T%U!+ P04 " /@HM8H)0!6D0" "*!@ &0 M 'AL+W=O&6RY8! M4M)M6BIUBM)N>W;@ %:-S6P3VG\_VQ"630F5\@*V.>?S=XPX1"T7S[($4.BE MHDS&3JE4O71=F99083GA-3#]).>BPDI/1>'*6@#.;%)%W<#SYFZ%"7.2R*YM M11+Q1E'"8"N0;*H*B]N0,E(Q4P M23A# O+86?G+]<+$VX"?!%IY,D:FDCWGSV:RR6+',T) (56&@/7M '= J0%I MC=\]TQFV-(FGXR/]JZU=U[+'$NXX_44R5<;.!P=ED..&JAUOOT%?S\SP4DZE MO:*VBPT_.BAMI.)5GZP-*L*Z.W[IS^$D07/.)P1]0F"]NXVLY6>LRJ,2^BG1>2K9Z./-0* G@3/""K02 K,"]+$K&;E*[V#B MW+2GK3M:<($6H@?.5"G1%Y9!]F^^J\T&O>"HMPY&@?>835#HWZ# "Z8CO' H M-[2\\ +O7)DW:/^*-BPC!Y(UF)ZKNH-.ST/-=[.4-4XA=O2'(4$O_/G MWJ<1Y>F@/!VC)[N& O*]_>S6/]5&JXS7ZO]#[G3'@3FF$D;$9H/8;)3SG;/; M*^3&H6_)S0>Y^56G]@1"?T7X@MLX\RVWQ>"VN/K@QOW&N1?]W)/^4($H;!>4 M*.4-4UVK&%:'1KOJ^LO?\*Y+/V!1$"81A5RG>I.%?IVBZWS=1/':=IL]5[IW MV6&I?Q8@3(!^GG.NCA.SP?#[2?X 4$L#!!0 ( ^"BUAASV0/-P, ,@3 M - >&PO.Z6"_?KXX)$!]5=>'#1948M_G[^X[WZ5Q.ZK,6K"[!6,F M6!5"5F.R,*;\$(;5?,$*6EVHDDF+9$H7U-BISL.JU(RF%9 *$0YZO3@L*)=D M,I++XJ8P53!72VG&)&Y-@;M]3L>D'[\G@7,W52D;DX>SMS^6RER_"=S]Y-W) M2>_A_'K??E8#YR3T.KU\@=.+'N[78ICK>-?U9OFI]=5R3S'RE8?<,5':\$7I M/),-YCCQ)K.52DT,FTI.1IF274$CX@S6,RU8\$C%F$RIX#/-@971@HNU,P_ M,%="Z<#83K*A^F"I?CFX[V;09(V?@DNEZ]@N@ON>-V$F]N#8^@8)F?+\NK<)G.]MM]&K_ 8E?U3FT]*F(^LY-!F[U2SCJWJ^REH!F/<^[IV6 MI5A_%#R7!7/)OSC@9$0WO&"A-/]EHT&KS*V!:1(\,FWX?-OR4]/RGJW,IIU6 M&:YY<(2:_^X^YTPR3<6V:-O[A[S+KU;;ZU\J^8J_(Z.KP-3:OZ4,7 M&1^#R*,H]_ 81":'+S(Z3(UA<\C8.LGLG&-::P#GQ3'Y!B=/T04-9DLN#)?- M;,'3E,DGQQGKWM"9_3-EQ[]=G[*,+H6Y;\$QZ<9?6+X^]/=H'".[$\/'7Q_L*8FB)/$C M@/D51!&&P-.((Y@"T( A452_!_?>1^'F/15V_[N;_ 902P,$% @ #X*+ M6)>*NQS $P( L !?3T\$MP>:4#M.*2VBZD8_1!2:5K5 MN %(MB6/:(7->=I3W; M+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II% MR=.B':5_'_W]2%YY!5_X#FOGZ]ZS=\YZY&""U[P'VQUU;OLD6I;/MV5DO\H19WE MR5*6>7[5&QS>6#!9\^7)Z41#IME#U9RILX,E)!,K0D6M@D0"<;B5NE;_4O75P>KP MJVN%:\10?N3J#1FL&G \R/$L3&;38.*G=$*25+W M$?+:G_KAF)+DCM(T,0"' .#PS0#)NR@S(&T TGZSID[2V=B = !(Y\T@QWYR M9T"Z *2+"SFAR3@.HC28A1HLO:/D>IX$(4T2XH<3 ](#(#U3\VX M#4"Y(-LE"%,_O T4$?&3I#U<#R"A#)"-$L6SB,;IU_QBN1IQX-\,D 7ROU]D)X@0?88(.MC2F_]:3/8 MJ:!1%3K:0H.<,4"6AG;L7Q?7?J+$IB(7T3#QM4%,/D@7 V1?!*&BHB3U_VG' M#++# %D/(4W)3R[UN*J,RH];8QLDA0&R%1II38)%,*'AY* L_4"HE*!I:3-S MANQ@(=MAX<>!5H**8TICFJ1$/:]!^M7D@Q1A84] YBI<]ZIQU4,[ICI)T0^% MV0,M<.:!+(J$WNH!3KDUFL5Z4#'!(#58R&I(YE$T;7R@!KR?GE!_'5-F$Q-R MA(7LB&1^G2BQZA#J?+1E"@LRA85L"C"'_] MW\:$?&(A^^1,)D_>I9D"J4Q,2"T6LEI.TN8CX!]FN0.RRA#9*F#^W&KO(227 M(7IUZU>&VAE"R"Q#;+.VAB0I(9(DL&5G8+$Y+,$%DR,*9M MUJPAT]C(IH$Q'1,3,HV-;1HP 3(;W8:D8V.OI("8K4:'I&-CKZ> F*U&!Q=4 ML M@(*9K8D("LI$%="[KO2 W7&3F0J0-6,S+E MCV8.[$ .2D(-=;6MA?LFDS$3-?P74Q(0DY& O[KE""G*QUWC.8^KTP\2$%.0B*ZA5(FSEF>5:'9F8D()<9 6] MP S$LBP82;/OA'Y7MS4QP;UER YZ@1FJKYGMF%07B@V9MJ().T""C-F M%:9)%0PN7DFD33[I@=9R$.V4/>R0(?2/4A"'K*$ M.BE_3RQ-3$A"WBO4XL[NGS [)" /64 PIEGM&$$" M&F%/@UYN)^KLER-(/B/L*ESV3!XK$C'9?%PL&9GP:IF7U5Z:%801Y)X1LGL" M4?$5DR25V4KGE;XN(6R8_I19,AI!XADUXNDW%U>?/ZW4I%ZP5:CN7ZGSRRQ? M1I+H%WVG@64[>KOF>I_G8W5N)J9EMCK^7];Q?\H^_P=02P,$% @ #X*+ M6#1..WUZ @ #$ !H !X;"]?OG^?R/Q.[S6:_+C^[]>]C.8W_ M&%S_Z?KW85?*6"U>VWY;QE55?QQNNX?ZNDD/E\G5XN5M5?4O;ZFJYPX2")+Y M@Q2"=/X@@R";/RA#4)X_R"'(YP\*"(KY@QH(:N8/>H2@Q_F#TA)E7!(D3; F MT#HAUXG ZX1@)P*Q$Y*=",Q.B'8B4#LAVXG [81P)P*Y$]*=".Q.B'@OJ+01Z"^HM!'H+ZBT$>@OJ+01Z"^HM!'H+ MZBT$>BOJK01Z*^JM!'HKZJT$>NOD90F!WHIZ*X'>BGHK@=Z*>BN!WHIZ*X'> MBGHK@=Z*>BN!WH9Z&X'>AGH;@=Z&>AN!WH9Z&X'>-GG93:"WH=Y&H+>AWD:@ MMZ'>1J"WH=Y&H+>AWD:@=T:],X'>&?7.!'IGU#L3Z)U1[TR@=T:],X'>>?*Q MDD#OC'IG KTSZIT)],ZH=R;0.Z/>F4!O1[V=0&]'O9U ;T>]G4!O1[V=0&]' MO9U ;T>]G4!OG_QL0J"WH]Y.H+>CWDZ@MZ/>3J!WH-Y!H'>@WD&@=Z#>0:!W MH-Y!H'>@WD&@=Z#>0:!WH-Y!H'=,?A8DT#M0[R#0.U#O(-"[0;T; KT;U+LA MT+M!O1L"O1O4N_E.O8?Q\U"&6\_7&J__G52/EW/+[?+7Y=?.R:URQ;F^KQB> M_P)02P,$% @ #X*+6"!P#MDD @ J2\ !, !;0V]N=&5N=%]4>7!E M&ULS=I-;MLP$ 7@JQC:!A;-?[6(LVF[;;/H!5AI' N61()D4N?VI>0D M0(O42. "?1L+-LEY(P[PK7S]_3%06AW'84K;:I]S^,A8:O#KW[8%B M[#M:W;J8O[JQ[&+'@:7\.%"JSY=XI4>_V_4M=;Z]'\N1.H5(KDM[HCP.]:GH MU?GD7&Z83I_\XORES+G LO,V^I#*Q"*]/^YY)//I=2B%*.;^_"N^));2%[\? MS=/NJ'MC=KG>GSX>EGDDMCPNO^/?9_Q2_YU]") ^)$@?"J0/#=*' >G#@O31 M@/3Q :0/OD%I!$54CD(J1S&5HZ#*453E**QR%%&UL4$L! A0#% @ #X*+6*K@V,") M!P _#$ !@ ("!#0@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6 ;K8E\$ P H0H !@ M ("!\QP 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0# M% @ #X*+6-INTT]_'0 45D !@ ("![S, 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6(ZYG84G M P ?@H !D ("!$F, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6%Z N_,3! (0L !D M ("!J'$ 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ #X*+6#W#Z!-$! $0D !D ("!]H0 M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M#X*+6-!WO'_G P Q@H !D ("!AJ< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6!ZSS!-" P *0< !D M ("!7,< 'AL+W=O !28@ &0 @('5R@ >&PO=V]R:W-H M965T&UL4$L! M A0#% @ #X*+6)=)J(IT P Z0H !D ("!Q>P 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+ M6!:<7P=+ P T @ !D ("![_< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6)%XA&R&!@ OA8 M !D ("!?0,! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6#3_5B&PO=V]R:W-H965T M&UL4$L! A0# M% @ #X*+6#>78J#( P $ X !D ("!4B$! 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6%I[ MNMAW @ I 8 !D ("!8BL! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6(S&PO M=V]R:W-H965T&UL4$L! A0#% @ #X*+6+$[5T:P P Z0\ !D ("! M7T(! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ #X*+6')8,E"U P 4Q$ !D ("!+TT! 'AL+W=O&UL4$L! A0#% @ #X*+6%,]:Y.O M P OQ( !D ("!7U&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6,R?^*TM @ MP4 !D M ("!*6,! 'AL+W=O&PO=V]R M:W-H965T%H 0!X;"]W;W)K&UL M4$L! A0#% @ #X*+6,9X*ZL@!0 !AX !D ("!66L! M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M#X*+6$*- ,[F" T%( !D ("!;GD! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6'F"]TN" @ M[04 !D ("!88L! 'AL+W=O8TL$ #&#P &0 @($: MC@$ >&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6'361U-U! Q! !D M ("!4Y8! 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ #X*+6+5%[UIP @ D08 !D ("!%*,! 'AL M+W=O&PO=V]R:W-H965T2@, #8- 9 " M@<"L 0!X;"]W;W)K&UL4$L! A0#% @ #X*+ M6";P89SB!0 8C0 !D ("!0; ! 'AL+W=O&PO=V]R:W-H965TA:SVP( -X' 9 " @4S# 0!X;"]W;W)K M&UL4$L! A0#% @ #X*+6+Z:B_C @ M0< M !D ("!7L8! 'AL+W=O?=6WP" "X!0 &0 @(%5R0$ M>&PO=V]R:W-H965T&UL4$L! A0#% @ #X*+6%0NM'MA @ A08 !D M ("!A= ! 'AL+W=O&PO=V]R:W-H965T M@( Q : M " ;;@ 0!X;"]?7!E&UL4$L%!@ !; %L ]!@ +WE 0 $! end XML 100 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 101 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 103 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.1.u1 html 204 421 1 false 69 0 false 6 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.arganinc.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - CONSOLIDATED STATEMENTS OF EARNINGS Sheet http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings CONSOLIDATED STATEMENTS OF EARNINGS Statements 2 false false R3.htm 00200 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://www.arganinc.com/role/StatementConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 3 false false R4.htm 00205 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 4 false false R5.htm 00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Sheet http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Statements 5 false false R6.htm 00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 10101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION Sheet http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentation DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION Notes 7 false false R8.htm 10201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers REVENUES FROM CONTRACTS WITH CUSTOMERS Notes 8 false false R9.htm 10301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments CASH, CASH EQUIVALENTS AND INVESTMENTS Notes 9 false false R10.htm 10401 - Disclosure - FAIR VALUE MEASUREMENTS Sheet http://www.arganinc.com/role/DisclosureFairValueMeasurements FAIR VALUE MEASUREMENTS Notes 10 false false R11.htm 10501 - Disclosure - ACCOUNTS RECEIVABLE Sheet http://www.arganinc.com/role/DisclosureAccountsReceivable ACCOUNTS RECEIVABLE Notes 11 false false R12.htm 10601 - Disclosure - INTANGIBLE ASSETS Sheet http://www.arganinc.com/role/DisclosureIntangibleAssets INTANGIBLE ASSETS Notes 12 false false R13.htm 10701 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET Sheet http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNet PROPERTY, PLANT AND EQUIPMENT, NET Notes 13 false false R14.htm 10801 - Disclosure - FINANCING ARRANGEMENTS Sheet http://www.arganinc.com/role/DisclosureFinancingArrangements FINANCING ARRANGEMENTS Notes 14 false false R15.htm 10901 - Disclosure - COMMITMENTS Sheet http://www.arganinc.com/role/DisclosureCommitments COMMITMENTS Notes 15 false false R16.htm 11001 - Disclosure - LEGAL CONTINGENCIES Sheet http://www.arganinc.com/role/DisclosureLegalContingencies LEGAL CONTINGENCIES Notes 16 false false R17.htm 11101 - Disclosure - STOCK-BASED COMPENSATION Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensation STOCK-BASED COMPENSATION Notes 17 false false R18.htm 11201 - Disclosure - INCOME TAXES Sheet http://www.arganinc.com/role/DisclosureIncomeTaxes INCOME TAXES Notes 18 false false R19.htm 11301 - Disclosure - NET INCOME PER SHARE Sheet http://www.arganinc.com/role/DisclosureNetIncomePerShare NET INCOME PER SHARE Notes 19 false false R20.htm 11401 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES Sheet http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchases CASH DIVIDENDS AND COMMON STOCK REPURCHASES Notes 20 false false R21.htm 11501 - Disclosure - VARIABLE INTEREST ENTITY Sheet http://www.arganinc.com/role/DisclosureVariableInterestEntity VARIABLE INTEREST ENTITY Notes 21 false false R22.htm 11601 - Disclosure - CUSTOMER CONCENTRATIONS Sheet http://www.arganinc.com/role/DisclosureCustomerConcentrations CUSTOMER CONCENTRATIONS Notes 22 false false R23.htm 11701 - Disclosure - SEGMENT REPORTING Sheet http://www.arganinc.com/role/DisclosureSegmentReporting SEGMENT REPORTING Notes 23 false false R24.htm 11801 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION Notes 24 false false R25.htm 11901 - Disclosure - SUBSEQUENT EVENTS Sheet http://www.arganinc.com/role/DisclosureSubsequentEvents SUBSEQUENT EVENTS Notes 25 false false R26.htm 20102 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies) Sheet http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies) Policies 26 false false R27.htm 30203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables) Tables http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers 27 false false R28.htm 30303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables) Tables http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments 28 false false R29.htm 30403 - Disclosure - FAIR VALUE MEASUREMENTS (Tables) Sheet http://www.arganinc.com/role/DisclosureFairValueMeasurementsTables FAIR VALUE MEASUREMENTS (Tables) Tables http://www.arganinc.com/role/DisclosureFairValueMeasurements 29 false false R30.htm 30603 - Disclosure - INTANGIBLE ASSETS (Tables) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsTables INTANGIBLE ASSETS (Tables) Tables http://www.arganinc.com/role/DisclosureIntangibleAssets 30 false false R31.htm 30703 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Tables) Sheet http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetTables PROPERTY, PLANT AND EQUIPMENT, NET (Tables) Tables http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNet 31 false false R32.htm 30903 - Disclosure - COMMITMENTS (Tables) Sheet http://www.arganinc.com/role/DisclosureCommitmentsTables COMMITMENTS (Tables) Tables http://www.arganinc.com/role/DisclosureCommitments 32 false false R33.htm 31103 - Disclosure - STOCK-BASED COMPENSATION (Tables) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationTables STOCK-BASED COMPENSATION (Tables) Tables http://www.arganinc.com/role/DisclosureStockBasedCompensation 33 false false R34.htm 31203 - Disclosure - INCOME TAXES (Tables) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesTables INCOME TAXES (Tables) Tables http://www.arganinc.com/role/DisclosureIncomeTaxes 34 false false R35.htm 31303 - Disclosure - NET INCOME PER SHARE (Tables) Sheet http://www.arganinc.com/role/DisclosureNetIncomePerShareTables NET INCOME PER SHARE (Tables) Tables http://www.arganinc.com/role/DisclosureNetIncomePerShare 35 false false R36.htm 31703 - Disclosure - SEGMENT REPORTING (Tables) Sheet http://www.arganinc.com/role/DisclosureSegmentReportingTables SEGMENT REPORTING (Tables) Tables http://www.arganinc.com/role/DisclosureSegmentReporting 36 false false R37.htm 31803 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables) Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationTables SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables) Tables http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation 37 false false R38.htm 40101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Details) Sheet http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Details) Details http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies 38 false false R39.htm 40201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details) Details 39 false false R40.htm 40202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Details) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails REVENUES FROM CONTRACTS WITH CUSTOMERS (Details) Details http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables 40 false false R41.htm 40203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details) Details 41 false false R42.htm 40301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) Details http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables 42 false false R43.htm 40302 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details) Details 43 false false R44.htm 40303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details) Details 44 false false R45.htm 40304 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Invested Funds (Details) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsEarningsOnInvestedFundsDetails CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Invested Funds (Details) Details 45 false false R46.htm 40401 - Disclosure - FAIR VALUE MEASUREMENTS - Financial Instruments on a Recurring Basis (Details) Sheet http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails FAIR VALUE MEASUREMENTS - Financial Instruments on a Recurring Basis (Details) Details 46 false false R47.htm 40501 - Disclosure - ACCOUNTS RECEIVABLE (Details) Sheet http://www.arganinc.com/role/DisclosureAccountsReceivableDetails ACCOUNTS RECEIVABLE (Details) Details http://www.arganinc.com/role/DisclosureAccountsReceivable 47 false false R48.htm 40601 - Disclosure - INTANGIBLE ASSETS - Changes in the Balances of Goodwill (Details) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails INTANGIBLE ASSETS - Changes in the Balances of Goodwill (Details) Details 48 false false R49.htm 40602 - Disclosure - INTANGIBLE ASSETS - Components of Intangible Assets (Details) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails INTANGIBLE ASSETS - Components of Intangible Assets (Details) Details 49 false false R50.htm 40603 - Disclosure - INTANGIBLE ASSETS - Finite Lived Intangible Future Amortization Schedule (Details) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails INTANGIBLE ASSETS - Finite Lived Intangible Future Amortization Schedule (Details) Details 50 false false R51.htm 40604 - Disclosure - INTANGIBLE ASSETS - Additional Information - (Details) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails INTANGIBLE ASSETS - Additional Information - (Details) Details 51 false false R52.htm 40701 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment (Details) Sheet http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment (Details) Details 52 false false R53.htm 40702 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment by Geographic Area (Details) Sheet http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment by Geographic Area (Details) Details 53 false false R54.htm 40703 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Depreciation Expense and Cost of Maintenance and Repairs (Details) Sheet http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetDepreciationExpenseAndCostOfMaintenanceAndRepairsDetails PROPERTY, PLANT AND EQUIPMENT, NET - Depreciation Expense and Cost of Maintenance and Repairs (Details) Details 54 false false R55.htm 40801 - Disclosure - FINANCING ARRANGEMENTS (Details) Sheet http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails FINANCING ARRANGEMENTS (Details) Details http://www.arganinc.com/role/DisclosureFinancingArrangements 55 false false R56.htm 40901 - Disclosure - COMMITMENTS - Leases (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails COMMITMENTS - Leases (Details) Details 56 false false R57.htm 40902 - Disclosure - COMMITMENTS - Future minimum lease payments (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails COMMITMENTS - Future minimum lease payments (Details) Details 57 false false R58.htm 40903 - Disclosure - COMMITMENTS - Warranties (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails COMMITMENTS - Warranties (Details) Details 58 false false R59.htm 40904 - Disclosure - COMMITMENTS - Employee Benefit Plans (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails COMMITMENTS - Employee Benefit Plans (Details) Details 59 false false R60.htm 41001 - Disclosure - LEGAL CONTINGENCIES (Details) Sheet http://www.arganinc.com/role/DisclosureLegalContingenciesDetails LEGAL CONTINGENCIES (Details) Details http://www.arganinc.com/role/DisclosureLegalContingencies 60 false false R61.htm 41101 - Disclosure - STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details) Details 61 false false R62.htm 41102 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details) Details 62 false false R63.htm 41103 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details) Details 63 false false R64.htm 41104 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails STOCK-BASED COMPENSATION - Additional Information (Details) Details 64 false false R65.htm 41201 - Disclosure - INCOME TAXES - Components of Company's Income Tax Expense (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails INCOME TAXES - Components of Company's Income Tax Expense (Details) Details 65 false false R66.htm 41202 - Disclosure - INCOME TAXES - Income Tax Expense Reconciliation (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails INCOME TAXES - Income Tax Expense Reconciliation (Details) Details 66 false false R67.htm 41203 - Disclosure - INCOME TAXES - Net Operating Loss Carryback (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails INCOME TAXES - Net Operating Loss Carryback (Details) Details 67 false false R68.htm 41204 - Disclosure - INCOME TAXES - Research and Development Tax Credits (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails INCOME TAXES - Research and Development Tax Credits (Details) Details 68 false false R69.htm 41205 - Disclosure - INCOME TAXES - Unrecognized Income Tax Benefits (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesUnrecognizedIncomeTaxBenefitsDetails INCOME TAXES - Unrecognized Income Tax Benefits (Details) Details 69 false false R70.htm 41206 - Disclosure - INCOME TAXES - Schedule of Tax Effects of Temporary Differences that Gave Rise to Deferred Tax Assets (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails INCOME TAXES - Schedule of Tax Effects of Temporary Differences that Gave Rise to Deferred Tax Assets (Details) Details 70 false false R71.htm 41207 - Disclosure - INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details) Details 71 false false R72.htm 41301 - Disclosure - NET INCOME PER SHARE (Details) Sheet http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails NET INCOME PER SHARE (Details) Details http://www.arganinc.com/role/DisclosureNetIncomePerShareTables 72 false false R73.htm 41302 - Disclosure - NET INCOME PER SHARE - Additional information (Details) Sheet http://www.arganinc.com/role/DisclosureNetIncomePerShareAdditionalInformationDetails NET INCOME PER SHARE - Additional information (Details) Details 73 false false R74.htm 41401 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details) Sheet http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details) Details http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchases 74 false false R75.htm 41501 - Disclosure - VARIABLE INTEREST ENTITY (Details) Sheet http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails VARIABLE INTEREST ENTITY (Details) Details http://www.arganinc.com/role/DisclosureVariableInterestEntity 75 false false R76.htm 41601 - Disclosure - CUSTOMER CONCENTRATIONS (Details) Sheet http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails CUSTOMER CONCENTRATIONS (Details) Details http://www.arganinc.com/role/DisclosureCustomerConcentrations 76 false false R77.htm 41701 - Disclosure - SEGMENT REPORTING (Details) Sheet http://www.arganinc.com/role/DisclosureSegmentReportingDetails SEGMENT REPORTING (Details) Details http://www.arganinc.com/role/DisclosureSegmentReportingTables 77 false false R78.htm 41801 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details) Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details) Details 78 false false R79.htm 41802 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) Details 79 false false R80.htm 41803 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details) Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details) Details 80 false false R81.htm 41901 - Disclosure - SUBSEQUENT EVENTS (Details) Sheet http://www.arganinc.com/role/DisclosureSubsequentEventsDetails SUBSEQUENT EVENTS (Details) Details http://www.arganinc.com/role/DisclosureSubsequentEvents 81 false false R82.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Uncategorized 82 false false R83.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Cover 83 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 13 fact(s) appearing in ix:hidden were eligible for transformation: agx:DefineContributionPlanDeferredPeriod, agx:PeriodOfAmortizationOfGoodwillForIncomeTaxPurpose, agx:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRatePeriodForMonthlyClosingPrices, agx:WarrantyPeriodForConstructionContracts, dei:EntityRegistrantName, us-gaap:CommonStockSharesIssued, us-gaap:DebtSecuritiesAvailableForSaleTerm, us-gaap:PreferredStockSharesOutstanding, us-gaap:PropertyPlantAndEquipmentUsefulLife, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1, us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage, us-gaap:StockRepurchasedDuringPeriodValue - agx-20240131x10k.htm 9 [ix-0514-Hidden-Fact-Not-Referenced] WARN: 4 fact(s) appearing in ix:hidden were not referenced by any -sec-ix-hidden style property: us-gaap:CommitmentsAndContingencies, us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList - agx-20240131x10k.htm 9 [dq-0712-Presentation-Base-Set-Order] Role '41901 - Disclosure - SUBSEQUENT EVENTS (Details)', a level 4, Detail role, appears before '995410 - Disclosure - Pay vs Performance Disclosure', a level 1, Note role. agx-20240131.xsd 459, https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd 30 agx-20240131.xsd agx-20240131_cal.xml agx-20240131_def.xml agx-20240131_lab.xml agx-20240131_pre.xml agx-20240131x10k.htm agx-20240131x10k001.jpg agx-20240131x10k002.jpg http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 106 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "agx-20240131x10k.htm": { "nsprefix": "agx", "nsuri": "http://www.arganinc.com/20240131", "dts": { "schema": { "local": [ "agx-20240131.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-sub-2023.xsd" ] }, "calculationLink": { "local": [ "agx-20240131_cal.xml" ] }, "definitionLink": { "local": [ "agx-20240131_def.xml" ] }, "labelLink": { "local": [ "agx-20240131_lab.xml" ] }, "presentationLink": { "local": [ "agx-20240131_pre.xml" ] }, "inline": { "local": [ "agx-20240131x10k.htm" ] } }, "keyStandard": 353, "keyCustom": 68, "axisStandard": 31, "axisCustom": 0, "memberStandard": 44, "memberCustom": 22, "hidden": { "total": 28, "http://fasb.org/us-gaap/2023": 17, "http://xbrl.sec.gov/dei/2023": 7, "http://www.arganinc.com/20240131": 4 }, "contextCount": 204, "entityCount": 1, "segmentCount": 69, "elementCount": 719, "unitCount": 6, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 975, "http://xbrl.sec.gov/dei/2023": 38, "http://xbrl.sec.gov/ecd/2023": 4 }, "report": { "R1": { "role": "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation", "longName": "00090 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings", "longName": "00100 - Statement - CONSOLIDATED STATEMENTS OF EARNINGS", "shortName": "CONSOLIDATED STATEMENTS OF EARNINGS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2022_To_1_31_2023_r33zlAq4vkOjtH0gd0JkKQ", "name": "us-gaap:NetIncomeLossAttributableToNoncontrollingInterest", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R3": { "role": "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets", "longName": "00200 - Statement - CONSOLIDATED BALANCE SHEETS", "shortName": "CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical", "longName": "00205 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)", "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_G5dr_zmP002zwMkyRPwxow", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_G5dr_zmP002zwMkyRPwxow", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R5": { "role": "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity", "longName": "00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "As_Of_1_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_-ouD1byHd0CJXiIQ6EM2aw", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_-ouD1byHd0CJXiIQ6EM2aw", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R6": { "role": "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows", "longName": "00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ProfitLoss", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:IncreaseDecreaseInAccruedInterestReceivableNet", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R7": { "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentation", "longName": "10101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION", "shortName": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "7", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R8": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers", "longName": "10201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments", "longName": "10301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.arganinc.com/role/DisclosureFairValueMeasurements", "longName": "10401 - Disclosure - FAIR VALUE MEASUREMENTS", "shortName": "FAIR VALUE MEASUREMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.arganinc.com/role/DisclosureAccountsReceivable", "longName": "10501 - Disclosure - ACCOUNTS RECEIVABLE", "shortName": "ACCOUNTS RECEIVABLE", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:TradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:TradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssets", "longName": "10601 - Disclosure - INTANGIBLE ASSETS", "shortName": "INTANGIBLE ASSETS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNet", "longName": "10701 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET", "shortName": "PROPERTY, PLANT AND EQUIPMENT, NET", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.arganinc.com/role/DisclosureFinancingArrangements", "longName": "10801 - Disclosure - FINANCING ARRANGEMENTS", "shortName": "FINANCING ARRANGEMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.arganinc.com/role/DisclosureCommitments", "longName": "10901 - Disclosure - COMMITMENTS", "shortName": "COMMITMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CommitmentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CommitmentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.arganinc.com/role/DisclosureLegalContingencies", "longName": "11001 - Disclosure - LEGAL CONTINGENCIES", "shortName": "LEGAL CONTINGENCIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensation", "longName": "11101 - Disclosure - STOCK-BASED COMPENSATION", "shortName": "STOCK-BASED COMPENSATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxes", "longName": "11201 - Disclosure - INCOME TAXES", "shortName": "INCOME TAXES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.arganinc.com/role/DisclosureNetIncomePerShare", "longName": "11301 - Disclosure - NET INCOME PER SHARE", "shortName": "NET INCOME PER SHARE", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchases", "longName": "11401 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES", "shortName": "CASH DIVIDENDS AND COMMON STOCK REPURCHASES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:CashDividendAndTreasuryStockTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:CashDividendAndTreasuryStockTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.arganinc.com/role/DisclosureVariableInterestEntity", "longName": "11501 - Disclosure - VARIABLE INTEREST ENTITY", "shortName": "VARIABLE INTEREST ENTITY", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:VariableInterestEntityDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:VariableInterestEntityDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.arganinc.com/role/DisclosureCustomerConcentrations", "longName": "11601 - Disclosure - CUSTOMER CONCENTRATIONS", "shortName": "CUSTOMER CONCENTRATIONS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.arganinc.com/role/DisclosureSegmentReporting", "longName": "11701 - Disclosure - SEGMENT REPORTING", "shortName": "SEGMENT REPORTING", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation", "longName": "11801 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "24", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.arganinc.com/role/DisclosureSubsequentEvents", "longName": "11901 - Disclosure - SUBSEQUENT EVENTS", "shortName": "SUBSEQUENT EVENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "25", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies", "longName": "20102 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies)", "shortName": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "26", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ConsolidationPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ConsolidationPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables", "longName": "30203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables", "longName": "30303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:InvestmentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:InvestmentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.arganinc.com/role/DisclosureFairValueMeasurementsTables", "longName": "30403 - Disclosure - FAIR VALUE MEASUREMENTS (Tables)", "shortName": "FAIR VALUE MEASUREMENTS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsTables", "longName": "30603 - Disclosure - INTANGIBLE ASSETS (Tables)", "shortName": "INTANGIBLE ASSETS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetTables", "longName": "30703 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET (Tables)", "shortName": "PROPERTY, PLANT AND EQUIPMENT, NET (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.arganinc.com/role/DisclosureCommitmentsTables", "longName": "30903 - Disclosure - COMMITMENTS (Tables)", "shortName": "COMMITMENTS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables", "longName": "31103 - Disclosure - STOCK-BASED COMPENSATION (Tables)", "shortName": "STOCK-BASED COMPENSATION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesTables", "longName": "31203 - Disclosure - INCOME TAXES (Tables)", "shortName": "INCOME TAXES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.arganinc.com/role/DisclosureNetIncomePerShareTables", "longName": "31303 - Disclosure - NET INCOME PER SHARE (Tables)", "shortName": "NET INCOME PER SHARE (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "35", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.arganinc.com/role/DisclosureSegmentReportingTables", "longName": "31703 - Disclosure - SEGMENT REPORTING (Tables)", "shortName": "SEGMENT REPORTING (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "36", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationTables", "longName": "31803 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "37", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "longName": "40101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Details)", "shortName": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:LesseeLeasesPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRatePeriodForMonthlyClosingPrices", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R39": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails", "longName": "40201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details)", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_srt_StatementGeographicalAxis_country_US_9D3IGJ-LNEOjfTyr2ZJ0oA", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R40": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails", "longName": "40202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Details)", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails", "longName": "40203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details)", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "As_Of_1_31_2024_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_agx_cnst_date_20240201_DN4d_Ozi_kOfWlmweUTwgg", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-8", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_agx_cnst_date_20240201_DN4d_Ozi_kOfWlmweUTwgg", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-8", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails", "longName": "40301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Details)", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "agx:AccruedInvestmentIncomeDividendReceivable", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "agx:AccruedInvestmentIncomeDividendReceivable", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails", "longName": "40302 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details)", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:ShortTermInvestments", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:InvestmentTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:ShortTermInvestments", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:InvestmentTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "longName": "40303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details)", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsEarningsOnInvestedFundsDetails", "longName": "40304 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Invested Funds (Details)", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Invested Funds (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:InvestmentIncomeNonoperating", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:InvestmentIncomeNonoperating", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails", "longName": "40401 - Disclosure - FAIR VALUE MEASUREMENTS - Financial Instruments on a Recurring Basis (Details)", "shortName": "FAIR VALUE MEASUREMENTS - Financial Instruments on a Recurring Basis (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:AvailableForSaleSecuritiesDebtSecurities", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:InvestmentTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_2487sAJJPUih7lALmo-gew", "name": "us-gaap:AssetsFairValueDisclosure", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R47": { "role": "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails", "longName": "40501 - Disclosure - ACCOUNTS RECEIVABLE (Details)", "shortName": "ACCOUNTS RECEIVABLE (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "Duration_2_1_2021_To_1_31_2022_-0NWaZutxka1eaLnJHic3g", "name": "us-gaap:ProvisionForLoanAndLeaseLosses", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "agx:TradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2021_To_1_31_2022_-0NWaZutxka1eaLnJHic3g", "name": "us-gaap:ProvisionForLoanAndLeaseLosses", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "agx:TradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails", "longName": "40601 - Disclosure - INTANGIBLE ASSETS - Changes in the Balances of Goodwill (Details)", "shortName": "INTANGIBLE ASSETS - Changes in the Balances of Goodwill (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "Duration_2_1_2021_To_1_31_2022_-0NWaZutxka1eaLnJHic3g", "name": "us-gaap:GoodwillImpairmentLoss", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:GoodwillGross", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R49": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails", "longName": "40602 - Disclosure - INTANGIBLE ASSETS - Components of Intangible Assets (Details)", "shortName": "INTANGIBLE ASSETS - Components of Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails", "longName": "40603 - Disclosure - INTANGIBLE ASSETS - Finite Lived Intangible Future Amortization Schedule (Details)", "shortName": "INTANGIBLE ASSETS - Finite Lived Intangible Future Amortization Schedule (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "longName": "40604 - Disclosure - INTANGIBLE ASSETS - Additional Information - (Details)", "shortName": "INTANGIBLE ASSETS - Additional Information - (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "Duration_2_1_2021_To_1_31_2022_-0NWaZutxka1eaLnJHic3g", "name": "us-gaap:PaymentsToAcquireBusinessesGross", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R52": { "role": "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails", "longName": "40701 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment (Details)", "shortName": "PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R53": { "role": "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "longName": "40702 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment by Geographic Area (Details)", "shortName": "PROPERTY, PLANT AND EQUIPMENT, NET - Summary of Property, Plant and Equipment by Geographic Area (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_srt_StatementGeographicalAxis_country_US_FLKZ0RmuFU6_eiD3wNkbjw", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R54": { "role": "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetDepreciationExpenseAndCostOfMaintenanceAndRepairsDetails", "longName": "40703 - Disclosure - PROPERTY, PLANT AND EQUIPMENT, NET - Depreciation Expense and Cost of Maintenance and Repairs (Details)", "shortName": "PROPERTY, PLANT AND EQUIPMENT, NET - Depreciation Expense and Cost of Maintenance and Repairs (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:Depreciation", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CostOfPropertyRepairsAndMaintenance", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R55": { "role": "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails", "longName": "40801 - Disclosure - FINANCING ARRANGEMENTS (Details)", "shortName": "FINANCING ARRANGEMENTS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "Duration_3_6_2023_To_3_6_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_ZNYakOV3skqGLIaxtPGa_g", "name": "agx:LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_3_6_2023_To_3_6_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_ZNYakOV3skqGLIaxtPGa_g", "name": "agx:LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "longName": "40901 - Disclosure - COMMITMENTS - Leases (Details)", "shortName": "COMMITMENTS - Leases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:LesseeLeasesPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R57": { "role": "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails", "longName": "40902 - Disclosure - COMMITMENTS - Future minimum lease payments (Details)", "shortName": "COMMITMENTS - Future minimum lease payments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R58": { "role": "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "longName": "40903 - Disclosure - COMMITMENTS - Warranties (Details)", "shortName": "COMMITMENTS - Warranties (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_srt_RangeAxis_srt_MaximumMember_RaCW0FKsKkGY6Qdgrw7k3A", "name": "agx:WarrantyPeriodForConstructionContracts", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_srt_RangeAxis_srt_MaximumMember_RaCW0FKsKkGY6Qdgrw7k3A", "name": "agx:WarrantyPeriodForConstructionContracts", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails", "longName": "40904 - Disclosure - COMMITMENTS - Employee Benefit Plans (Details)", "shortName": "COMMITMENTS - Employee Benefit Plans (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:DefinedContributionPlanCostRecognized", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:DefinedContributionPlanCostRecognized", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.arganinc.com/role/DisclosureLegalContingenciesDetails", "longName": "41001 - Disclosure - LEGAL CONTINGENCIES (Details)", "shortName": "LEGAL CONTINGENCIES (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "Duration_9_1_2021_To_9_30_2021_srt_ConsolidatedEntitiesAxis_agx_GemmaPowerSystemsMember_WGqnhHb-5ECo5lVjKV23yA", "name": "us-gaap:PaymentsForLegalSettlements", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:LegalMattersAndContingenciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_9_1_2021_To_9_30_2021_srt_ConsolidatedEntitiesAxis_agx_GemmaPowerSystemsMember_WGqnhHb-5ECo5lVjKV23yA", "name": "us-gaap:PaymentsForLegalSettlements", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:LegalMattersAndContingenciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R61": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails", "longName": "41101 - Disclosure - STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details)", "shortName": "STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "As_Of_1_31_2023_xNDjyBHfuUONZm14kBdl_g", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R62": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails", "longName": "41102 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details)", "shortName": "STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "As_Of_1_31_2023_xNDjyBHfuUONZm14kBdl_g", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R63": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails", "longName": "41103 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details)", "shortName": "STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "As_Of_1_31_2023_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember_dIo8r9fKVUOYDFVAhI8BMQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember_uVfFRvFvVE6RVDolRnIzRw", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R64": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "longName": "41104 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details)", "shortName": "STOCK-BASED COMPENSATION - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CommonStockDividendsShares", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CommonStockDividendsShares", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R65": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails", "longName": "41201 - Disclosure - INCOME TAXES - Components of Company's Income Tax Expense (Details)", "shortName": "INCOME TAXES - Components of Company's Income Tax Expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "65", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R66": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails", "longName": "41202 - Disclosure - INCOME TAXES - Income Tax Expense Reconciliation (Details)", "shortName": "INCOME TAXES - Income Tax Expense Reconciliation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "66", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_VHkEsfV1j02RjFmDo46YgA", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_VHkEsfV1j02RjFmDo46YgA", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R67": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails", "longName": "41203 - Disclosure - INCOME TAXES - Net Operating Loss Carryback (Details)", "shortName": "INCOME TAXES - Net Operating Loss Carryback (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "67", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:IncreaseInLossCarrybackPeriodForCertainLosses", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:IncreaseInLossCarrybackPeriodForCertainLosses", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R68": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails", "longName": "41204 - Disclosure - INCOME TAXES - Research and Development Tax Credits (Details)", "shortName": "INCOME TAXES - Research and Development Tax Credits (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "68", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:PeriodForIdentifyAndQuantifyResearchAndDevelopmentTaxCredits", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "agx:PeriodForIdentifyAndQuantifyResearchAndDevelopmentTaxCredits", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R69": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesUnrecognizedIncomeTaxBenefitsDetails", "longName": "41205 - Disclosure - INCOME TAXES - Unrecognized Income Tax Benefits (Details)", "shortName": "INCOME TAXES - Unrecognized Income Tax Benefits (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "69", "firstAnchor": { "contextRef": "As_Of_1_31_2023_xNDjyBHfuUONZm14kBdl_g", "name": "us-gaap:UnrecognizedTaxBenefits", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2021_sG5-uRkGqE-dnqC__AyIuA", "name": "us-gaap:UnrecognizedTaxBenefits", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R70": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails", "longName": "41206 - Disclosure - INCOME TAXES - Schedule of Tax Effects of Temporary Differences that Gave Rise to Deferred Tax Assets (Details)", "shortName": "INCOME TAXES - Schedule of Tax Effects of Temporary Differences that Gave Rise to Deferred Tax Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "70", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R71": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails", "longName": "41207 - Disclosure - INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details)", "shortName": "INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "71", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:EquityMethodInvestments", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:EquityMethodInvestments", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R72": { "role": "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails", "longName": "41301 - Disclosure - NET INCOME PER SHARE (Details)", "shortName": "NET INCOME PER SHARE (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "72", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R73": { "role": "http://www.arganinc.com/role/DisclosureNetIncomePerShareAdditionalInformationDetails", "longName": "41302 - Disclosure - NET INCOME PER SHARE - Additional information (Details)", "shortName": "NET INCOME PER SHARE - Additional information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "73", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R74": { "role": "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "longName": "41401 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details)", "shortName": "CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "74", "firstAnchor": { "contextRef": "As_Of_9_19_2023_8SLb_KqjHE6uTtmySJx2jw", "name": "agx:PercentageIncreaseInCommonStockDividendPerShare", "unitRef": "Unit_Standard_pure_VHkEsfV1j02RjFmDo46YgA", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "agx:CashDividendAndTreasuryStockTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_19_2023_8SLb_KqjHE6uTtmySJx2jw", "name": "agx:PercentageIncreaseInCommonStockDividendPerShare", "unitRef": "Unit_Standard_pure_VHkEsfV1j02RjFmDo46YgA", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "agx:CashDividendAndTreasuryStockTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R75": { "role": "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails", "longName": "41501 - Disclosure - VARIABLE INTEREST ENTITY (Details)", "shortName": "VARIABLE INTEREST ENTITY (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "75", "firstAnchor": { "contextRef": "Duration_2_1_2021_To_1_31_2022_-0NWaZutxka1eaLnJHic3g", "name": "us-gaap:CapitalizedContractCostImpairmentLoss", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:VariableInterestEntityDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2021_To_1_31_2022_-0NWaZutxka1eaLnJHic3g", "name": "us-gaap:CapitalizedContractCostImpairmentLoss", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:VariableInterestEntityDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R76": { "role": "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "longName": "41601 - Disclosure - CUSTOMER CONCENTRATIONS (Details)", "shortName": "CUSTOMER CONCENTRATIONS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "76", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_yh-RrYy6C0O5UX0TBaWqOQ", "name": "agx:NumberOfMajorCustomers", "unitRef": "Unit_Standard_customer_-RhvqnsZu0Ktsj1hCmB_zA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_yh-RrYy6C0O5UX0TBaWqOQ", "name": "agx:NumberOfMajorCustomers", "unitRef": "Unit_Standard_customer_-RhvqnsZu0Ktsj1hCmB_zA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R77": { "role": "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "longName": "41701 - Disclosure - SEGMENT REPORTING (Details)", "shortName": "SEGMENT REPORTING (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "77", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "Unit_Standard_item_uPw2ZJ54uk-ZqwAPCXpJAg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "Unit_Standard_item_uPw2ZJ54uk-ZqwAPCXpJAg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R78": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails", "longName": "41801 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details)", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "78", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "agx:IncomeTaxRefundsAndPrepaidIncomeTaxes", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "us-gaap:InventoryRawMaterials", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R79": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails", "longName": "41802 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details)", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "79", "firstAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "agx:AccruedProjectCostsCurrent", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_glqxu7un-ES00eAj7ftlfw", "name": "agx:AccruedProjectCostsCurrent", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R80": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails", "longName": "41803 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details)", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "80", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_us-gaap_UnusualOrInfrequentItemAxis_agx_FraudulentlyInducedPaymentMember_uUoe8JxLAUmsykPZXlD71g", "name": "us-gaap:UnusualOrInfrequentItemNetGainLoss", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_us-gaap_UnusualOrInfrequentItemAxis_agx_FraudulentlyInducedPaymentMember_uUoe8JxLAUmsykPZXlD71g", "name": "us-gaap:UnusualOrInfrequentItemNetGainLoss", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } }, "R81": { "role": "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails", "longName": "41901 - Disclosure - SUBSEQUENT EVENTS (Details)", "shortName": "SUBSEQUENT EVENTS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "81", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:StockRepurchasedDuringPeriodShares", "unitRef": "Unit_Standard_shares_GXZUMZUdVkqVZwqT-9iqzg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "agx:CashDividendAndTreasuryStockTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_4_10_2024_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_wuEa1-Y9sECkd0Y5QT20GA", "name": "us-gaap:DividendsPayableAmountPerShare", "unitRef": "Unit_Divide_USD_shares_G5dr_zmP002zwMkyRPwxow", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:SubsequentEventsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "unique": true } }, "R82": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Uncategorized", "order": "82", "firstAnchor": { "contextRef": "Duration_2_1_2023_To_1_31_2024_ENu1IPQuP0OEGZh70HcQww", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_XAwQNfpNxUuccTm3FwyQ9w", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true }, "uniqueAnchor": null }, "R83": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Cover", "order": "83", "firstAnchor": { "contextRef": "Duration_11_1_2023_To_1_31_2024_RDME5t8GM0O0gERvc0og6Q", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_11_1_2023_To_1_31_2024_RDME5t8GM0O0gERvc0og6Q", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20240131x10k.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Payable, Current", "terseLabel": "Accounts payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r24", "r786" ] }, "us-gaap_AccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable [Member]", "terseLabel": "Accounts Receivable", "documentation": "Due from customers or clients for goods or services that have been delivered or sold." } } }, "auth_ref": [ "r736" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Net, Current", "verboseLabel": "Accounts receivable, net", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r275", "r276" ] }, "us-gaap_AccruedEmployeeBenefitsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedEmployeeBenefitsCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Accrued Employee Benefits, Current", "terseLabel": "Accrued compensation", "documentation": "Carrying value as of the balance sheet date of obligations, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r27" ] }, "agx_AccruedInvestmentIncomeDividendReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "AccruedInvestmentIncomeDividendReceivable", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "documentation": "Dividends earned but not yet received by the entity on its investments.", "label": "Accrued Investment Income, Dividend Receivable", "terseLabel": "Accrued dividends" } } }, "auth_ref": [] }, "agx_AccruedLeaseLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "AccruedLeaseLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails" ], "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for lease liabilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Lease Liabilities, Current", "terseLabel": "Lease liabilities" } } }, "auth_ref": [] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 }, "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued Liabilities, Current", "terseLabel": "Accrued expenses", "totalLabel": "Total accrued expenses", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r27" ] }, "agx_AccruedProjectCostsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "AccruedProjectCostsCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails" ], "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for projects costs. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Project Costs, Current", "terseLabel": "Accrued project costs" } } }, "auth_ref": [] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "terseLabel": "Less - accumulated depreciation", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r67", "r180", "r622" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive loss", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r33", "r34", "r114", "r184", "r618", "r655", "r656" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Accumulated Other Comprehensive Loss", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r2", "r13", "r34", "r511", "r514", "r549", "r651", "r652", "r900", "r901", "r902", "r908", "r909", "r910" ] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Additional 402(v) Disclosure [Text Block]", "terseLabel": "Additional 402(v) Disclosure" } } }, "auth_ref": [ "r839" ] }, "us-gaap_AdditionalFinancialInformationDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalFinancialInformationDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation" ], "lang": { "en-us": { "role": { "label": "Additional Financial Information Disclosure [Text Block]", "terseLabel": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION", "documentation": "The entire disclosures of supplemental information, including descriptions and amounts, related to the balance sheet, income statement, and/or cash flow statement." } } }, "auth_ref": [] }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional Paid in Capital, Common Stock", "terseLabel": "Additional paid-in capital", "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital." } } }, "auth_ref": [ "r109" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Additional Paid-in Capital", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r459", "r460", "r461", "r667", "r908", "r909", "r910", "r983", "r1003" ] }, "agx_AdditionsToOtherIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "AdditionsToOtherIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of additions to other intangible assets.", "label": "Additions To Other Intangible Assets", "terseLabel": "Additions to other intangible assets" } } }, "auth_ref": [] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation Amount", "terseLabel": "Adjustment to Compensation, Amount" } } }, "auth_ref": [ "r845" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation [Axis]", "terseLabel": "Adjustment to Compensation:" } } }, "auth_ref": [ "r845" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]", "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote" } } }, "auth_ref": [ "r845" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment To PEO Compensation, Footnote [Text Block]", "terseLabel": "Adjustment To PEO Compensation, Footnote" } } }, "auth_ref": [ "r845" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition", "terseLabel": "Stock compensation expense", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r75", "r76", "r422" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net income to net cash provided by (used in) operating activities" } } }, "auth_ref": [] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Amount", "terseLabel": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r809", "r821", "r831", "r857" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]", "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined" } } }, "auth_ref": [ "r812", "r824", "r834", "r860" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Adjustments to Compensation [Member]", "terseLabel": "All Adjustments to Compensation" } } }, "auth_ref": [ "r845" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Executive Categories [Member]", "terseLabel": "All Executive Categories" } } }, "auth_ref": [ "r852" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Individuals [Member]", "terseLabel": "All Individuals" } } }, "auth_ref": [ "r816", "r825", "r835", "r852", "r861", "r865", "r873" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "All Trading Arrangements [Member]", "terseLabel": "All Trading Arrangements" } } }, "auth_ref": [ "r871" ] }, "us-gaap_AllowanceForNotesAndLoansReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForNotesAndLoansReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "label": "Financing Receivable, Allowance for Credit Loss, Current", "terseLabel": "Allowance for uncollectible accounts", "documentation": "Amount of allowance for credit loss on financing receivable, classified as current." } } }, "auth_ref": [ "r185", "r277", "r316" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "terseLabel": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "agx_AmortizationOfEquityInvestmentsInSolarEnergyProjects": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "AmortizationOfEquityInvestmentsInSolarEnergyProjects", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of amortization of equity investments in solar energy projects.", "label": "Amortization of Equity Investments in Solar Energy Projects", "terseLabel": "Amortization related to STC investment" } } }, "auth_ref": [] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Amortization of Intangible Assets", "terseLabel": "Amortization of intangibles", "verboseLabel": "Amortization of intangible assets", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r8", "r61", "r65" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "verboseLabel": "Antidilutive common stock", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r236" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets", "terseLabel": "Total assets", "totalLabel": "TOTAL ASSETS", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r149", "r183", "r208", "r245", "r260", "r266", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r504", "r508", "r527", "r614", "r694", "r786", "r799", "r943", "r944", "r990" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "ASSETS" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current", "terseLabel": "Current assets", "totalLabel": "TOTAL CURRENT ASSETS", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r176", "r188", "r208", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r504", "r508", "r527", "r786", "r943", "r944", "r990" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "CURRENT ASSETS" } } }, "auth_ref": [] }, "us-gaap_AssetsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsFairValueDisclosure", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Assets, Fair Value Disclosure", "terseLabel": "Totals", "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r96" ] }, "us-gaap_AssetsTotalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsTotalMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Contract Asset", "documentation": "Total assets, when it serves as a benchmark in a concentration of risk calculation, representing the sum of all reported assets as of the balance sheet date." } } }, "auth_ref": [] }, "agx_AtlanticProjectsCompanyLimitedMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "AtlanticProjectsCompanyLimitedMember", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertains to Atlantic Projects Company Limited.", "label": "APC" } } }, "auth_ref": [] }, "dei_AuditorFirmId": { "xbrltype": "nonemptySequenceNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorFirmId", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Firm ID", "documentation": "PCAOB issued Audit Firm Identifier" } } }, "auth_ref": [ "r803", "r804", "r817" ] }, "dei_AuditorLocation": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorLocation", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Location" } } }, "auth_ref": [ "r803", "r804", "r817" ] }, "dei_AuditorName": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorName", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Name" } } }, "auth_ref": [ "r803", "r804", "r817" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax", "terseLabel": "Gross Unrealized Gains", "documentation": "Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r283" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax", "terseLabel": "Gross Unrealized Losses", "documentation": "Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r284" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleDebtSecuritiesAmortizedCostBasis", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Securities, Available-for-Sale, Amortized Cost", "terseLabel": "Amortized Cost", "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r280", "r322", "r613" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtSecurities", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails": { "parentTag": "us-gaap_Investments", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails", "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Debt Securities, Available-for-Sale", "terseLabel": "Available-for-sale securities", "verboseLabel": "Fair Value", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r281", "r322", "r607", "r917" ] }, "us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "en-US Debt Securities, Available-for-Sale, Fair Value to Amortized Cost, after Allowance for Credit Loss [Abstract]", "terseLabel": "Available-for-sale securities" } } }, "auth_ref": [] }, "agx_AvailableForSaleSecuritiesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "AvailableForSaleSecuritiesPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for available-for-sale securities.", "label": "Available-For-Sale Securities [Policy Text Block]", "terseLabel": "Available-For-Sale Securities" } } }, "auth_ref": [] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "auth_ref": [ "r868" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Grant Date Fair Value", "terseLabel": "Fair Value as of Grant Date" } } }, "auth_ref": [ "r869" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]", "terseLabel": "Award Timing Disclosures" } } }, "auth_ref": [ "r864" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing, How MNPI Considered [Text Block]", "terseLabel": "Award Timing, How MNPI Considered" } } }, "auth_ref": [ "r864" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Method [Text Block]", "terseLabel": "Award Timing Method" } } }, "auth_ref": [ "r864" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Considered [Flag]", "terseLabel": "Award Timing MNPI Considered" } } }, "auth_ref": [ "r864" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Disclosure [Text Block]", "terseLabel": "Award Timing MNPI Disclosure" } } }, "auth_ref": [ "r864" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Predetermined [Flag]", "terseLabel": "Award Timing Predetermined" } } }, "auth_ref": [ "r864" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "terseLabel": "Award Type", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r426", "r427", "r428", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r450", "r451", "r452", "r453", "r454" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "auth_ref": [ "r867" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r866" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table]", "terseLabel": "Awards Close in Time to MNPI Disclosures" } } }, "auth_ref": [ "r865" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]", "terseLabel": "Awards Close in Time to MNPI Disclosures, Table" } } }, "auth_ref": [ "r865" ] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Axis]", "documentation": "Information by location on balance sheet (statement of financial position)." } } }, "auth_ref": [] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Domain]", "documentation": "Location in the balance sheet (statement of financial position)." } } }, "auth_ref": [ "r94", "r95" ] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Basis of Presentation and Significant Accounting Policies", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "us-gaap_BuildingAndBuildingImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BuildingAndBuildingImprovementsMember", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Building and Improvements [Member]", "terseLabel": "Building and improvements", "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing." } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Acquiree [Domain]", "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree." } } }, "auth_ref": [ "r501", "r777", "r778" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r79", "r80", "r501", "r777", "r778" ] }, "us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Goodwill, Expected Tax Deductible Amount", "verboseLabel": "Goodwill allocated for income tax reporting purposes", "documentation": "The amount of goodwill arising from a business combination that is expected to be deductible for tax purposes." } } }, "auth_ref": [ "r83" ] }, "us-gaap_CapitalizedContractCostImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalizedContractCostImpairmentLoss", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "label": "Capitalized Contract Cost, Impairment Loss", "terseLabel": "Capitalized project development costs", "documentation": "Amount of impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer." } } }, "auth_ref": [ "r329" ] }, "us-gaap_CashAndCashEquivalentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAbstract", "lang": { "en-us": { "role": { "label": "CASH, CASH EQUIVALENTS AND INVESTMENTS" } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r41", "r178", "r752" ] }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsFairValueDisclosure", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Fair Value Disclosure", "terseLabel": "Cash and cash equivalents", "documentation": "Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents [Line Items]", "verboseLabel": "Cash and Cash Equivalents", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "terseLabel": "Cash Equivalents", "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value." } } }, "auth_ref": [ "r42" ] }, "us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsAndShortTermInvestmentsTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, and Short-term Investments [Text Block]", "verboseLabel": "CASH, CASH EQUIVALENTS AND INVESTMENTS", "documentation": "The entire disclosure of the components of cash, cash equivalents, and short-term investments. Short-term investments may include current marketable securities." } } }, "auth_ref": [ "r916" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "CASH AND CASH EQUIVALENTS, END OF PERIOD", "periodStartLabel": "CASH AND CASH EQUIVALENTS, BEGINNING OF PERIOD", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r41", "r127", "r206" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r1", "r127" ] }, "agx_CashDividendAndTreasuryStockAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "CashDividendAndTreasuryStockAbstract", "lang": { "en-us": { "role": { "documentation": "No definition available.", "label": "CASH DIVIDENDS AND COMMON STOCK REPURCHASES" } } }, "auth_ref": [] }, "agx_CashDividendAndTreasuryStockTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "CashDividendAndTreasuryStockTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchases" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for cash dividend and treasury stock.", "label": "Cash Dividend and Treasury Stock [Text Block]", "verboseLabel": "CASH DIVIDENDS AND COMMON STOCK REPURCHASES" } } }, "auth_ref": [] }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract]", "terseLabel": "NON-CASH INVESTING AND FINANCING ACTIVITIES" } } }, "auth_ref": [] }, "agx_CashInvestmentCommitments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "CashInvestmentCommitments", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of cash investment commitments.", "label": "Cash Investment Commitments", "terseLabel": "Remaining cash investment commitments" } } }, "auth_ref": [] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Changed Peer Group, Footnote [Text Block]", "terseLabel": "Changed Peer Group, Footnote" } } }, "auth_ref": [ "r843" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Amount", "terseLabel": "Company Selected Measure Amount" } } }, "auth_ref": [ "r844" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Name", "terseLabel": "Company Selected Measure Name" } } }, "auth_ref": [ "r844" ] }, "agx_CommitmentDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "CommitmentDisclosureAbstract", "lang": { "en-us": { "role": { "documentation": "No definition available.", "label": "COMMITMENTS" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies", "terseLabel": "COMMITMENTS AND CONTINGENCIES (see Notes 9 and 10)", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r29", "r99", "r615", "r681" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "LEGAL CONTINGENCIES" } } }, "auth_ref": [] }, "us-gaap_CommitmentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitments" ], "lang": { "en-us": { "role": { "label": "Commitments Disclosure [Text Block]", "terseLabel": "COMMITMENTS", "documentation": "The entire disclosure for significant arrangements with third parties, which includes operating lease arrangements and arrangements in which the entity has agreed to expend funds to procure goods or services, or has agreed to commit resources to supply goods or services, and operating lease arrangements. Descriptions may include identification of the specific goods and services, period of time covered, minimum quantities and amounts, and cancellation rights." } } }, "auth_ref": [ "r136" ] }, "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockCapitalSharesReservedForFutureIssuance", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Common stock allocated for issuance", "terseLabel": "Number of shares of common stock reserved for issuance", "documentation": "Aggregate number of common shares reserved for future issuance." } } }, "auth_ref": [ "r30" ] }, "us-gaap_CommonStockDividendsPerShareCashPaid": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareCashPaid", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "lang": { "en-us": { "role": { "label": "Common Stock, Dividends, Per Share, Cash Paid", "terseLabel": "Regular cash dividend paid per common stock", "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r139" ] }, "us-gaap_CommonStockDividendsPerShareDeclared": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareDeclared", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Common Stock, Dividends, Per Share, Declared", "terseLabel": "Regular cash dividend declared per common stock", "verboseLabel": "CASH DIVIDENDS PER SHARE", "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r139" ] }, "us-gaap_CommonStockDividendsShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsShares", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Common Stock Dividends, Shares", "terseLabel": "Cash dividends deemed paid on shares", "documentation": "Number of shares of common stock issued as dividends during the period. Excludes stock splits." } } }, "auth_ref": [ "r14" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common Stock [Member]", "terseLabel": "Common Stock", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r789", "r790", "r791", "r793", "r794", "r795", "r796", "r908", "r909", "r983", "r1001", "r1003" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r108" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r108", "r682" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r108" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock, shares outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r14", "r108", "r682", "r700", "r1003", "r1004" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common Stock, Value, Issued", "terseLabel": "Common stock, par value $0.15 per share - 30,000,000 shares authorized; 15,828,289 shares issued; 13,242,520 and 13,441,590 shares outstanding at January 31, 2024 and 2023, respectively", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r108", "r617", "r786" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Company Selected Measure" } } }, "auth_ref": [ "r849" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Net Income [Text Block]", "terseLabel": "Compensation Actually Paid vs. Net Income" } } }, "auth_ref": [ "r848" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Other Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Other Measure" } } }, "auth_ref": [ "r850" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]", "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return" } } }, "auth_ref": [ "r847" ] }, "us-gaap_ComponentsOfDeferredTaxAssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComponentsOfDeferredTaxAssetsAbstract", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Components of Deferred Tax Assets [Abstract]", "terseLabel": "Assets:" } } }, "auth_ref": [] }, "us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComponentsOfDeferredTaxLiabilitiesAbstract", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Components of Deferred Tax Liabilities [Abstract]", "terseLabel": "Liabilities:" } } }, "auth_ref": [] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "COMPREHENSIVE INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC.", "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r35", "r194", "r196", "r201", "r608", "r630" ] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r48", "r51", "r97", "r98", "r274", "r736" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r48", "r51", "r97", "r98", "r274", "r657", "r736" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Axis]", "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender." } } }, "auth_ref": [ "r48", "r51", "r97", "r98", "r274", "r736", "r884" ] }, "us-gaap_ConcentrationRiskDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrations" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Disclosure [Text Block]", "terseLabel": "CUSTOMER CONCENTRATIONS", "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date." } } }, "auth_ref": [ "r130" ] }, "us-gaap_ConcentrationRiskLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [Line Items]", "terseLabel": "Customer Concentrations", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r736" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk, Percentage", "verboseLabel": "Percentage of major customers or segments", "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division." } } }, "auth_ref": [ "r48", "r51", "r97", "r98", "r274" ] }, "us-gaap_ConcentrationRiskTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTable", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [Table]", "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark." } } }, "auth_ref": [ "r47", "r48", "r51", "r52", "r97", "r148", "r736" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Domain]", "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration." } } }, "auth_ref": [ "r48", "r51", "r97", "r98", "r274", "r736" ] }, "srt_ConsolidatedEntitiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidatedEntitiesAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureLegalContingenciesDetails", "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "label": "Consolidated Entities [Axis]" } } }, "auth_ref": [ "r210", "r504", "r505", "r508", "r509", "r552", "r746", "r942", "r945", "r946" ] }, "srt_ConsolidatedEntitiesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidatedEntitiesDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureLegalContingenciesDetails", "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "label": "Consolidated Entities [Domain]" } } }, "auth_ref": [ "r210", "r504", "r505", "r508", "r509", "r552", "r746", "r942", "r945", "r946" ] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]" } } }, "auth_ref": [ "r210", "r247", "r258", "r259", "r260", "r261", "r262", "r264", "r268", "r364", "r365", "r366", "r367", "r369", "r370", "r372", "r374", "r375", "r943", "r944" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]" } } }, "auth_ref": [ "r210", "r247", "r258", "r259", "r260", "r261", "r262", "r264", "r268", "r364", "r365", "r366", "r367", "r369", "r370", "r372", "r374", "r375", "r943", "r944" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Consolidation, Policy [Policy Text Block]", "terseLabel": "Description of the Business", "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary." } } }, "auth_ref": [ "r86", "r754" ] }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNetCurrent", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Asset, Net, Current", "terseLabel": "Contract assets", "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current." } } }, "auth_ref": [ "r393", "r395", "r406" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Current", "terseLabel": "Contract liabilities", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r393", "r394", "r406" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Revenue Recognized", "terseLabel": "Contract Liabilities", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r407" ] }, "us-gaap_CorporateNonSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CorporateNonSegmentMember", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Corporate, Non-Segment [Member]", "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment." } } }, "auth_ref": [ "r19", "r259", "r260", "r261", "r262", "r268", "r914" ] }, "us-gaap_CostOfPropertyRepairsAndMaintenance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfPropertyRepairsAndMaintenance", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetDepreciationExpenseAndCostOfMaintenanceAndRepairsDetails" ], "lang": { "en-us": { "role": { "label": "Cost of Property Repairs and Maintenance", "terseLabel": "Costs of maintenance and repairs", "documentation": "The aggregate costs of keeping the property in good condition but that do not appreciably prolong the life or increase the value of the property." } } }, "auth_ref": [ "r119" ] }, "us-gaap_CostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfRevenue", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Cost of Revenue", "terseLabel": "Cost of revenues", "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period." } } }, "auth_ref": [ "r119", "r208", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r527", "r943" ] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfSalesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Costs of Revenues [Member]", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "agx_CountryOtherMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "CountryOtherMember", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to other countries.", "label": "Other" } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_CurrentFederalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Current Federal Tax Expense (Benefit)", "terseLabel": "Federal", "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r886", "r907", "r981" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "terseLabel": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_CurrentForeignTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentForeignTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Current Foreign Tax Expense (Benefit)", "verboseLabel": "Foreign", "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r886", "r907" ] }, "us-gaap_CurrentIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Current Income Tax Expense (Benefit)", "totalLabel": "Total", "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations." } } }, "auth_ref": [ "r144", "r489", "r495", "r907" ] }, "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Current Income Tax Expense (Benefit), Continuing Operations [Abstract]", "terseLabel": "Current:" } } }, "auth_ref": [] }, "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Current State and Local Tax Expense (Benefit)", "terseLabel": "State", "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r886", "r907", "r981" ] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Customer Concentration Risk", "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer." } } }, "auth_ref": [ "r49", "r274" ] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Customer relationships", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r82" ] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "FINANCING ARRANGEMENTS" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangements" ], "lang": { "en-us": { "role": { "label": "Debt Disclosure [Text Block]", "verboseLabel": "FINANCING ARRANGEMENTS", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r138", "r207", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r385", "r386", "r387", "r389" ] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "Interest rate margin on referred rate", "verboseLabel": "Interest rate margin on referred rate", "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument." } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current", "terseLabel": "Interest receivable", "documentation": "Amount, after allowance for credit loss, of accrued interest on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current." } } }, "auth_ref": [ "r286", "r322", "r323" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes accrued interest, after allowance for credit loss, on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current." } } }, "auth_ref": [ "r323" ] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxAfterYearOneThroughTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxAfterYearOneThroughTwo", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax after Year One Through Two", "terseLabel": "Gross Unrealized Gains, Due in one to two years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxAfterYearTwoThroughThree": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxAfterYearTwoThroughThree", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, Before Tax After Year Two Through Three", "terseLabel": "Gross Unrealized Gains, Due in two to three years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterYearOneThroughTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterYearOneThroughTwo", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) maturing in first and second fiscal year following current fiscal year.", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax after Year One Through Two", "terseLabel": "Gross Unrealized Losses, Due in one to two years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterYearTwoThroughThree": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterYearTwoThroughThree", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) maturing in second and third fiscal year following current fiscal year.", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax after Year Two Through Three", "terseLabel": "Gross Unrealized Losses, Due in two to three years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearOneToTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearOneToTwo", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year to 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": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year One to Two", "terseLabel": "Amortized cost, Due in one to two years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearTwoToThree": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearTwoToThree", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second fiscal year though 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": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year Two to Three", "terseLabel": "Amortized Cost, Due in two to three years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearOneToTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearOneToTwo", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year to 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": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One to Two", "terseLabel": "Fair Value, Due in one to two years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearTwoToThree": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearTwoToThree", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second fiscal year through 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": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year Two to Three", "terseLabel": "Fair Value, Due in two to three years" } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleTerm", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Securities, Available-for-Sale, Term", "terseLabel": "Available-for-sale securities term", "documentation": "Period between issuance and maturity of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r984" ] }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Federal Income Tax Expense (Benefit)", "terseLabel": "Federal", "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r907", "r980", "r981" ] }, "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredForeignIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Foreign Income Tax Expense (Benefit)", "verboseLabel": "Foreign", "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r144", "r907", "r980" ] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Assets, Net", "terseLabel": "Deferred taxes, net", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting." } } }, "auth_ref": [ "r470", "r471" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 }, "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Expense (Benefit)", "totalLabel": "Total", "verboseLabel": "Deferred income tax expense (benefit)", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r8", "r144", "r169", "r494", "r495", "r907" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]", "terseLabel": "Deferred:" } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilities", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Gross", "negatedTotalLabel": "Total Liabilities", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences." } } }, "auth_ref": [ "r105", "r106", "r150", "r483" ] }, "us-gaap_DeferredIncomeTaxesAndOtherTaxReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxesAndOtherTaxReceivableCurrent", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Income Taxes and Other Tax Receivable, Current", "terseLabel": "Income tax receivable", "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and other tax receivables expected to be realized or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [] }, "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Deferred State and Local Income Tax Expense (Benefit)", "terseLabel": "State", "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r907", "r980", "r981" ] }, "agx_DeferredTaxAssetsDeferredResearchAndDevelopmentCost": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DeferredTaxAssetsDeferredResearchAndDevelopmentCost", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount, before allocation of valuation allowances, of deferred tax asset attributable to deductible differences from deferred research and development cost.", "label": "Deferred Tax Assets, Deferred Research and Development Cost", "terseLabel": "Research and development costs deferral" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsGross", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Gross", "totalLabel": "Total Assets", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r484" ] }, "us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsInProcessResearchAndDevelopment", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, in Process Research and Development", "terseLabel": "Research and development credit carryforwards", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination." } } }, "auth_ref": [ "r78", "r979" ] }, "agx_DeferredTaxAssetsLeaseLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DeferredTaxAssetsLeaseLiabilities", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from lease liabilities.", "label": "Deferred Tax Assets, Lease Liabilities", "terseLabel": "Lease liabilities" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsLiabilitiesNet", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Net", "totalLabel": "Deferred tax assets, net", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting." } } }, "auth_ref": [ "r978" ] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwards", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Operating Loss Carryforwards", "terseLabel": "Net operating loss carryforwards", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards." } } }, "auth_ref": [ "r78", "r979" ] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwardsForeign", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Operating Loss Carryforwards, Foreign", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign operating loss carryforwards." } } }, "auth_ref": [ "r78", "r979" ] }, "us-gaap_DeferredTaxAssetsOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOther", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Other", "terseLabel": "Other", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other." } } }, "auth_ref": [ "r78", "r979" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-based Compensation Cost", "terseLabel": "Stock awards", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation." } } }, "auth_ref": [ "r78", "r979" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities", "terseLabel": "Accrued expenses", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities." } } }, "auth_ref": [ "r78", "r979" ] }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsValuationAllowance", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Valuation Allowance", "negatedLabel": "Valuation allowances", "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized." } } }, "auth_ref": [ "r485" ] }, "agx_DeferredTaxLiabilitiesConstructionContracts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DeferredTaxLiabilitiesConstructionContracts", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Deferred tax liabilities construction contracts.", "label": "Deferred Tax Liabilities Construction Contracts", "negatedLabel": "Construction contracts" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Intangible Assets", "negatedLabel": "Purchased intangibles", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill." } } }, "auth_ref": [ "r78", "r979" ] }, "us-gaap_DeferredTaxLiabilitiesOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesOther", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Other", "negatedLabel": "Other", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences classified as other." } } }, "auth_ref": [ "r78", "r979" ] }, "agx_DeferredTaxLiabilitiesPropertyPlantAndEquipmentAndOther": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipmentAndOther", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment and other temporary differences not separately disclosed.", "label": "Deferred Tax Liabilities, Property, Plant and Equipment and Other", "negatedLabel": "Property and equipment" } } }, "auth_ref": [] }, "agx_DeferredTaxLiabilitiesRightOfUseAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DeferredTaxLiabilitiesRightOfUseAssets", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from right of use assets.", "label": "Deferred Tax Liabilities, Right of Use Assets", "negatedLabel": "Right-of-use assets" } } }, "auth_ref": [] }, "agx_DefineContributionPlanDeferredPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DefineContributionPlanDeferredPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails" ], "lang": { "en-us": { "role": { "documentation": "Period of define contribution plan deferred period, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Define Contribution Plan, Deferred Period", "terseLabel": "Deferred period" } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanCostRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanCostRecognized", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails" ], "lang": { "en-us": { "role": { "label": "Defined Contribution Plan, Cost Recognized", "terseLabel": "Company's expense for defined contribution savings plans", "documentation": "Amount of cost for defined contribution plan." } } }, "auth_ref": [ "r417" ] }, "us-gaap_DefinedContributionPlanDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanDisclosureLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails" ], "lang": { "en-us": { "role": { "label": "Defined Contribution Plan Disclosure [Line Items]", "terseLabel": "Employee Benefit Plans", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r417" ] }, "us-gaap_DefinedContributionPlanTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanTable", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails" ], "lang": { "en-us": { "role": { "label": "Defined Contribution Plan [Table]", "documentation": "Disclosure of information about defined contribution pension plans or defined contribution other postretirement plans, separately for pension plans and other postretirement benefit plans." } } }, "auth_ref": [ "r417" ] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Depreciation", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetDepreciationExpenseAndCostOfMaintenanceAndRepairsDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Depreciation", "terseLabel": "Depreciation", "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation." } } }, "auth_ref": [ "r8", "r66" ] }, "srt_DirectorMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "DirectorMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "lang": { "en-us": { "role": { "label": "Director [Member]" } } }, "auth_ref": [ "r915", "r1002" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Disaggregation of Revenues", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r405", "r767", "r768", "r769", "r770", "r771", "r772", "r773" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenues [Table]", "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r405", "r767", "r768", "r769", "r770", "r771", "r772", "r773" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Schedule of consolidated revenues disaggregated by geographical area", "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r948" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensation" ], "lang": { "en-us": { "role": { "label": "Disclosure of Compensation Related Costs, Share-based Payments [Text Block]", "verboseLabel": "STOCK-BASED COMPENSATION", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r420", "r425", "r455", "r456", "r458", "r780" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "STOCK-BASED COMPENSATION" } } }, "auth_ref": [] }, "us-gaap_DividendsCommonStockCash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsCommonStockCash", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Dividends, Common Stock, Cash", "negatedLabel": "Cash dividends", "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash." } } }, "auth_ref": [ "r139" ] }, "us-gaap_DividendsPayableAmountPerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsPayableAmountPerShare", "presentation": [ "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Dividends Payable, Amount Per Share", "terseLabel": "Dividends payable amount per share", "documentation": "The per share amount of a dividend declared, but not paid, as of the financial reporting date." } } }, "auth_ref": [ "r44" ] }, "agx_DocumentAndEntityInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DocumentAndEntityInformationAbstract", "lang": { "en-us": { "role": { "documentation": "Document and entity information.", "label": "Document And Entity Information" } } }, "auth_ref": [] }, "dei_DocumentAnnualReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAnnualReport", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Annual Report", "documentation": "Boolean flag that is true only for a form used as an annual report." } } }, "auth_ref": [ "r803", "r804", "r817" ] }, "dei_DocumentFinStmtErrorCorrectionFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtErrorCorrectionFlag", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Financial Statement Error Correction [Flag]", "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction." } } }, "auth_ref": [ "r803", "r804", "r817", "r853" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "terseLabel": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "terseLabel": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "terseLabel": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r838" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Type", "terseLabel": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "us-gaap_DomesticCorporateDebtSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCorporateDebtSecuritiesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Debt Security, Corporate, US [Member]", "terseLabel": "U.S. corporate debt security", "documentation": "Debt security issued by corporation domiciled in United States of America (US)." } } }, "auth_ref": [ "r776", "r918", "r919", "r949" ] }, "agx_DomesticNetOperatingLossCarryback": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "DomesticNetOperatingLossCarryback", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of domestic net operating loss carryback.", "label": "Domestic Net Operating Loss Carryback", "terseLabel": "Domestic net operating loss carryback" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "NET INCOME PER SHARE", "terseLabel": "NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic", "terseLabel": "Basic (in dollars per share)", "verboseLabel": "Basic (in dollars per share)", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r202", "r216", "r217", "r218", "r219", "r220", "r226", "r228", "r233", "r234", "r235", "r239", "r518", "r519", "r609", "r631", "r757" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Diluted", "verboseLabel": "Diluted (in dollars per share)", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r202", "r216", "r217", "r218", "r219", "r220", "r228", "r233", "r234", "r235", "r239", "r518", "r519", "r609", "r631", "r757" ] }, "agx_EarningsPerSharePerformanceBasedRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "EarningsPerSharePerformanceBasedRestrictedStockUnitsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to earnings per share performance-based restricted stock units.", "label": "Earnings Per Share Performance Based Restricted Stock Units [Member]", "terseLabel": "Earnings per share performance-based restricted stock units" } } }, "auth_ref": [] }, "us-gaap_EarningsPerSharePolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerSharePolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Policy [Policy Text Block]", "terseLabel": "Net Income Per Share", "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements." } } }, "auth_ref": [ "r45", "r46" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShare" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Text Block]", "verboseLabel": "NET INCOME PER SHARE", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r225", "r236", "r237", "r238" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "verboseLabel": "EFFECTS OF EXCHANGE RATE CHANGES ON CASH", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r531" ] }, "agx_EffectiveIncomeTaxRateReconciliationAdjustmentsToValuationsForForeignNolsAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "EffectiveIncomeTaxRateReconciliationAdjustmentsToValuationsForForeignNolsAmount", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to \nadjustments to valuations for foreign NOLs.", "label": "Effective Income Tax Rate Reconciliation, Adjustments to Valuations for Foreign NOLs, Amount", "terseLabel": "Adjustment to valuation for foreign NOLs" } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "verboseLabel": "Federal corporate income tax rate (as percent)", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r209", "r473", "r496" ] }, "agx_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessExecutiveCompensationAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessExecutiveCompensationAmount", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for excess executive compensation.", "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Excess Executive Compensation, Amount", "terseLabel": "Excess executive compensation" } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized", "terseLabel": "Unrecognized compensation cost", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r457" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition", "terseLabel": "Compensation expense recognize, period", "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r457" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Employee Stock Option [Member]", "terseLabel": "Employee Stock Option", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "terseLabel": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r801" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock, Shares Outstanding", "terseLabel": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Entity [Domain]", "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r801" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "terseLabel": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r801" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r878" ] }, "dei_EntityPublicFloat": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPublicFloat", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Public Float", "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter." } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "terseLabel": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r801" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r801" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r801" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r801" ] }, "dei_EntityVoluntaryFilers": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityVoluntaryFilers", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Voluntary Filers", "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act." } } }, "auth_ref": [] }, "dei_EntityWellKnownSeasonedIssuer": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityWellKnownSeasonedIssuer", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Well-known Seasoned Issuer", "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A." } } }, "auth_ref": [ "r879" ] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r14", "r172", "r198", "r199", "r200", "r211", "r212", "r213", "r215", "r221", "r223", "r240", "r314", "r315", "r392", "r459", "r460", "r461", "r490", "r491", "r510", "r511", "r512", "r513", "r514", "r515", "r517", "r533", "r534", "r535", "r536", "r537", "r538", "r549", "r651", "r652", "r653", "r667", "r720" ] }, "us-gaap_EquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityMethodInvestments", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Equity Method Investments", "terseLabel": "Investment account balances", "documentation": "This item represents the carrying amount on the entity's balance sheet of its investment in common stock of an equity method investee. This is not an indicator of the fair value of the investment, rather it is the initial cost adjusted for the entity's share of earnings and losses of the investee, adjusted for any distributions (dividends) and other than temporary impairment (OTTI) losses recognized." } } }, "auth_ref": [ "r255", "r312", "r896", "r924" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Valuation Assumption Difference, Footnote [Text Block]", "terseLabel": "Equity Valuation Assumption Difference, Footnote" } } }, "auth_ref": [ "r846" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneous Compensation Analysis [Text Block]", "terseLabel": "Erroneous Compensation Analysis" } } }, "auth_ref": [ "r809", "r821", "r831", "r857" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneously Awarded Compensation Recovery [Table]", "terseLabel": "Erroneously Awarded Compensation Recovery" } } }, "auth_ref": [ "r806", "r818", "r828", "r854" ] }, "agx_EstimatedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "EstimatedLoss", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount of estimated loss.", "label": "Estimated Loss", "terseLabel": "Estimated loss" } } }, "auth_ref": [] }, "agx_EstimatedLossIncludingReversalOfNetGrossProfitRecordedInPreviousYears": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "EstimatedLossIncludingReversalOfNetGrossProfitRecordedInPreviousYears", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount of estimated loss including reversal of net gross profit recorded in previous years.", "label": "Estimated Loss, Including Reversal Of Net Gross Profit Recorded In Previous Years", "terseLabel": "Estimated loss, including reversal of net gross profit" } } }, "auth_ref": [] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "auth_ref": [ "r852" ] }, "srt_ExecutiveOfficerMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ExecutiveOfficerMember", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Senior executives", "terseLabel": "StockPlanMember" } } }, "auth_ref": [ "r915" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r521", "r522", "r525" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value, Recurring and Nonrecurring [Table]", "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis." } } }, "auth_ref": [ "r521", "r522", "r525" ] }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsTables" ], "lang": { "en-us": { "role": { "label": "Fair Value, Assets Measured on Recurring Basis [Table Text Block]", "terseLabel": "Schedule of financial instruments recorded at fair value on a recurring basis", "documentation": "Tabular disclosure of assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3)." } } }, "auth_ref": [ "r96", "r147" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Hierarchy and NAV [Axis]", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r384", "r410", "r411", "r412", "r413", "r414", "r415", "r522", "r559", "r560", "r561", "r764", "r765", "r774", "r775", "r776" ] }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByMeasurementFrequencyAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Axis]", "documentation": "Information by measurement frequency." } } }, "auth_ref": [ "r521", "r522", "r523", "r524", "r526" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "FAIR VALUE MEASUREMENTS" } } }, "auth_ref": [] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurements" ], "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Text Block]", "terseLabel": "FAIR VALUE MEASUREMENTS", "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." } } }, "auth_ref": [ "r520" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Level 1 Inputs", "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date." } } }, "auth_ref": [ "r384", "r410", "r415", "r522", "r559", "r774", "r775", "r776" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Level 2 Inputs", "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets." } } }, "auth_ref": [ "r384", "r410", "r415", "r522", "r560", "r764", "r765", "r774", "r775", "r776" ] }, "us-gaap_FairValueMeasurementFrequencyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementFrequencyDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Domain]", "documentation": "Measurement frequency." } } }, "auth_ref": [] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r384", "r410", "r411", "r412", "r413", "r414", "r415", "r559", "r560", "r561", "r764", "r765", "r774", "r775", "r776" ] }, "us-gaap_FairValueMeasurementsRecurringMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsRecurringMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair value, recurring", "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value." } } }, "auth_ref": [ "r520", "r526" ] }, "us-gaap_FairValueOfFinancialInstrumentsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueOfFinancialInstrumentsPolicy", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]", "terseLabel": "Fair Value of Financial Instruments", "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments." } } }, "auth_ref": [ "r10", "r22" ] }, "us-gaap_FinancialGuaranteeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialGuaranteeMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Financial guarantee", "documentation": "An agreement (contract) that requires the guarantor to make payments to the guaranteed party based on another entity's failure to pay specified obligations, such as debt, to a lender." } } }, "auth_ref": [] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r308", "r309", "r317", "r318", "r319", "r320", "r321", "r324", "r325", "r326", "r388", "r391", "r516", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r629", "r762", "r889", "r890", "r891", "r892", "r893", "r894", "r895", "r920", "r921", "r922", "r923" ] }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetUsefulLife", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Asset, Useful Life", "verboseLabel": "Estimated Useful Life (in years)", "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "terseLabel": "Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r182", "r347" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five", "terseLabel": "Thereafter", "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months", "terseLabel": "2025", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r133" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five", "terseLabel": "2029", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r133" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four", "terseLabel": "2028", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r133" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three", "terseLabel": "2027", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r133" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two", "terseLabel": "2026", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r133" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r345", "r346", "r347", "r348", "r592", "r593" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Gross Amounts", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r132", "r593" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Finite-Lived Intangible Assets", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r592" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r62", "r64" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net", "totalLabel": "Net Amounts", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r132", "r592" ] }, "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Foreign Currency Transactions and Translations Policy [Policy Text Block]", "verboseLabel": "Foreign Currency Translation", "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy." } } }, "auth_ref": [ "r528" ] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r813", "r825", "r835", "r861" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Expense of Enforcement, Amount", "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r813", "r825", "r835", "r861" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Violation of Home Country Law, Amount", "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r813", "r825", "r835", "r861" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Explanation of Impracticability [Text Block]", "terseLabel": "Forgone Recovery, Explanation of Impracticability" } } }, "auth_ref": [ "r813", "r825", "r835", "r861" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r813", "r825", "r835", "r861" ] }, "agx_FraudulentlyInducedPaymentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "FraudulentlyInducedPaymentMember", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information relating to fraudulently induced outbound wire transfer to third party of complex criminal scheme.", "label": "Fraudulently Induced Payment" } } }, "auth_ref": [] }, "agx_FurnitureMachineryAndEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "FurnitureMachineryAndEquipmentMember", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "documentation": "Furniture machinery and equipment.", "label": "Furniture, Machinery and Equipment [Member]", "terseLabel": "Furniture, machinery and equipment" } } }, "auth_ref": [] }, "country_GB": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "GB", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "United Kingdom" } } }, "auth_ref": [] }, "agx_GainOnSettlementOfImpairedDevelopmentCost": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "GainOnSettlementOfImpairedDevelopmentCost", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount of gain on settlement of impaired development cost.", "label": "Gain on Settlement of Impaired Development Cost", "terseLabel": "Gain on settlement of impaired development cost" } } }, "auth_ref": [] }, "agx_GemmaPowerSystemsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "GemmaPowerSystemsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureLegalContingenciesDetails", "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "documentation": "Gemma power systems.", "label": "GPS" } } }, "auth_ref": [] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 }, "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Goodwill", "periodEndLabel": "Goodwill, Ending Balance", "periodStartLabel": "Goodwill, Beginning Balance", "terseLabel": "Goodwill", "totalLabel": "Goodwill, net", "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r181", "r331", "r606", "r763", "r786", "r927", "r934" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "INTANGIBLE ASSETS" } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]", "terseLabel": "Goodwill", "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined." } } }, "auth_ref": [ "r330", "r343", "r763" ] }, "us-gaap_GoodwillGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillGross", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails": { "parentTag": "us-gaap_Goodwill", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Gross", "terseLabel": "Goodwill", "documentation": "Amount before accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r334", "r341", "r763" ] }, "us-gaap_GoodwillImpairedAccumulatedImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillImpairedAccumulatedImpairmentLoss", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails": { "parentTag": "us-gaap_Goodwill", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Impaired, Accumulated Impairment Loss", "negatedLabel": "Accumulated impairment losses", "documentation": "Amount of accumulated impairment loss for an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r334", "r341", "r763" ] }, "us-gaap_GoodwillImpairedAccumulatedImpairmentLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillImpairedAccumulatedImpairmentLossAbstract", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Impaired, Accumulated Impairment Loss [Abstract]", "terseLabel": "Components of goodwill" } } }, "auth_ref": [] }, "us-gaap_GoodwillImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillImpairmentLoss", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 }, "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Goodwill, Impairment Loss", "negatedLabel": "Impairment losses", "terseLabel": "Impairment loss", "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r8", "r332", "r338", "r343", "r763" ] }, "us-gaap_GoodwillLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill [Line Items]", "terseLabel": "Goodwill", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r763" ] }, "us-gaap_GoodwillRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillRollForward", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill [Roll Forward]", "terseLabel": "Change in goodwill", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Gross Profit", "terseLabel": "Gross profit", "totalLabel": "GROSS PROFIT", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r118", "r208", "r245", "r259", "r265", "r268", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r527", "r759", "r943" ] }, "us-gaap_GuaranteeObligationsByNatureAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GuaranteeObligationsByNatureAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Guarantor Obligations, Nature [Axis]", "documentation": "Information by nature of guarantee." } } }, "auth_ref": [ "r360", "r361", "r362", "r363" ] }, "us-gaap_GuaranteeObligationsMaximumExposure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GuaranteeObligationsMaximumExposure", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Guarantor Obligations, Maximum Exposure, Undiscounted", "terseLabel": "Guarantor obligation maximum exposure", "documentation": "Maximum potential amount of future payments (undiscounted) the guarantor could be required to make under the guarantee or each group of similar guarantees before reduction for potential recoveries under recourse or collateralization provisions." } } }, "auth_ref": [ "r361" ] }, "us-gaap_GuaranteeObligationsNatureDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GuaranteeObligationsNatureDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Guarantor Obligations, Nature [Domain]", "documentation": "Represents a description of the nature of the guarantee or each group of similar guarantees." } } }, "auth_ref": [ "r360", "r361", "r362", "r363" ] }, "us-gaap_HeldtomaturitySecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "HeldtomaturitySecuritiesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Held-to-maturity Securities", "documentation": "Investments in debt securities classified as held-to-maturity." } } }, "auth_ref": [ "r158" ] }, "country_IE": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "IE", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Republic of Ireland" } } }, "auth_ref": [] }, "dei_IcfrAuditorAttestationFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "IcfrAuditorAttestationFlag", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Icfr Auditor Attestation Flag" } } }, "auth_ref": [ "r803", "r804", "r817" ] }, "us-gaap_ImpairmentOfIntangibleAssetsExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOfIntangibleAssetsExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Impairment of Intangible Assets (Excluding Goodwill)", "terseLabel": "Additions to impairment losses", "documentation": "The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of an intangible asset (excluding goodwill) to fair value." } } }, "auth_ref": [ "r8", "r18" ] }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Impairment or Disposal of Long-Lived Assets, Including Intangible Assets, Policy [Policy Text Block]", "terseLabel": "Long-Lived Assets", "documentation": "Disclosure of accounting policy for the impairment and disposal of long-lived assets including goodwill and other intangible assets." } } }, "auth_ref": [] }, "agx_IncentiveStockOptionsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "IncentiveStockOptionsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents Incentive Stock Options.", "label": "ISOs/NSOs" } } }, "auth_ref": [] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_ProfitLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Income Taxes, Extraordinary Items, Noncontrolling Interest", "totalLabel": "INCOME BEFORE INCOME TAXES", "verboseLabel": "Income (loss) before income taxes", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r0", "r115", "r155", "r245", "r259", "r265", "r268", "r610", "r625", "r759" ] }, "us-gaap_IncomeLossFromEquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromEquityMethodInvestments", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Equity Method Investments", "negatedLabel": "Equity in loss (income) of solar energy investments", "terseLabel": "Loss of investment", "documentation": "Amount of income (loss) for proportionate share of equity method investee's income (loss)." } } }, "auth_ref": [ "r8", "r116", "r154", "r252", "r312", "r624" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF EARNINGS" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Axis]", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r349", "r351", "r705" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Domain]", "documentation": "Location in the income statement." } } }, "auth_ref": [ "r351", "r705" ] }, "agx_IncomeTaxBenefitRecognizedRelatedToResearchAndDevelopmentCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "IncomeTaxBenefitRecognizedRelatedToResearchAndDevelopmentCredits", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount of income tax benefit recognized related to research and development credits.", "label": "Income Tax Benefit Recognized Related To Research And Development Credits", "terseLabel": "Research and development tax credit benefit" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxCreditsAndAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxCreditsAndAdjustments", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Credits and Adjustments", "terseLabel": "Income tax credits", "documentation": "A credit or adjustment for government or taxing authority authorized decrease in taxes owed as a result of meeting certain tax policy conditions." } } }, "auth_ref": [ "r129" ] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "INCOME TAXES" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxes" ], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Text Block]", "verboseLabel": "INCOME TAXES", "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information." } } }, "auth_ref": [ "r209", "r466", "r474", "r480", "r487", "r492", "r497", "r499", "r500", "r664" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_ProfitLoss", "weight": -1.0, "order": 1.0 }, "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesComponentsOfCompanySIncomeTaxExpenseDetails", "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Income Tax Expense (Benefit)", "totalLabel": "Income tax expense", "verboseLabel": "Income tax expense", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r159", "r170", "r222", "r223", "r253", "r472", "r493", "r632" ] }, "agx_IncomeTaxExpenseBenefitsAssociatedWithResearchAndDevelopment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "IncomeTaxExpenseBenefitsAssociatedWithResearchAndDevelopment", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails", "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents income tax expense (benefits) associated with research and development activities.", "label": "Income Tax Expense Benefits Associated with Research and Development", "terseLabel": "Income tax expense (benefits) associated with research and development activities", "verboseLabel": "Recognition of research and development credit benefits (see discussion below)" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Income Tax, Policy [Policy Text Block]", "terseLabel": "Income Taxes", "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements." } } }, "auth_ref": [ "r197", "r468", "r469", "r480", "r481", "r486", "r488", "r661" ] }, "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount", "verboseLabel": "Foreign tax rate differential", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit)." } } }, "auth_ref": [ "r976" ] }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount", "verboseLabel": "Computed expected income tax expense", "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r473" ] }, "us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Meals and Entertainment, Amount", "terseLabel": "Meals and entertainment expense", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to nondeductible meals and entertainment expense." } } }, "auth_ref": [ "r976" ] }, "us-gaap_IncomeTaxReconciliationNondeductibleExpenseOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationNondeductibleExpenseOther", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Other, Amount", "verboseLabel": "Other permanent differences and adjustments, net", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other nondeductible expenses." } } }, "auth_ref": [ "r976" ] }, "us-gaap_IncomeTaxReconciliationNondeductibleExpenseResearchAndDevelopment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationNondeductibleExpenseResearchAndDevelopment", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Research and Development, Amount", "verboseLabel": "Research and development credits adjustment", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to nondeductible research and development expense." } } }, "auth_ref": [ "r976" ] }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount", "terseLabel": "State income taxes, net of federal tax effect", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit)." } } }, "auth_ref": [ "r976" ] }, "us-gaap_IncomeTaxReconciliationTaxCreditsInvestment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationTaxCreditsInvestment", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Investment, Amount", "negatedLabel": "Net benefit related to Solar Tax Credit investments", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to investment tax credit." } } }, "auth_ref": [ "r976" ] }, "us-gaap_IncomeTaxReconciliationTaxCreditsResearch": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationTaxCreditsResearch", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount", "terseLabel": "Federal research and development tax credits", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to research tax credit." } } }, "auth_ref": [ "r976" ] }, "agx_IncomeTaxRefundsAndPrepaidIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "IncomeTaxRefundsAndPrepaidIncomeTaxes", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "parentTag": "us-gaap_OtherAssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails", "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of income tax refunds and prepaid income taxes .", "label": "Income Tax Refunds And Prepaid Income Taxes", "terseLabel": "Income tax refunds and prepaid income taxes", "verboseLabel": "Income tax refunds receivable and prepaid income taxes" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxesPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaid", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Taxes Paid", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income." } } }, "auth_ref": [ "r40", "r43" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Income Taxes Paid, Net", "terseLabel": "Cash paid for income taxes", "verboseLabel": "Cash paid for income taxes, net of refunds", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes." } } }, "auth_ref": [ "r43" ] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 14.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities", "terseLabel": "Accounts payable and accrued expenses", "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 12.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInAccruedInterestReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedInterestReceivableNet", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accrued Interest Receivable, Net", "negatedLabel": "Changes in accrued interest on investments", "documentation": "The increase (decrease) during the reporting period in the amount due from borrowers for interest payments." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerAsset", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 13.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Contract with Customer, Asset", "negatedLabel": "Contract assets", "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time." } } }, "auth_ref": [ "r904" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 15.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Contract with Customer, Liability", "verboseLabel": "Contract liabilities", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r590", "r904" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in operating assets and liabilities" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherOperatingAssets", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 16.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Other Operating Assets", "negatedLabel": "Other assets", "documentation": "Amount of increase (decrease) in operating assets classified as other." } } }, "auth_ref": [ "r7" ] }, "agx_IncreaseInLossCarrybackPeriodForCertainLosses": { "xbrltype": "durationItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "IncreaseInLossCarrybackPeriodForCertainLosses", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the increase in loss carryback period for certain losses.", "label": "Increase In Loss Carryback Period For Certain Losses", "terseLabel": "Increase in loss carryback period for certain losses" } } }, "auth_ref": [] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "calculation": { "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements", "terseLabel": "Effects of stock awards", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method." } } }, "auth_ref": [ "r229", "r230", "r231", "r235", "r424" ] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Individual [Axis]", "terseLabel": "Individual:" } } }, "auth_ref": [ "r816", "r825", "r835", "r852", "r861", "r865", "r873" ] }, "agx_IndustrialFabricationAndFieldServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "IndustrialFabricationAndFieldServicesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "documentation": "Industrial fabrication and field services.", "label": "Industrial Services" } } }, "auth_ref": [] }, "agx_IndustryServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "IndustryServicesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "documentation": "Industry services.", "label": "Industry services" } } }, "auth_ref": [] }, "us-gaap_InformationByCategoryOfDebtSecurityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InformationByCategoryOfDebtSecurityAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Security Category [Axis]", "documentation": "Information by category of debt security, either available-for-sale or held-to-maturity." } } }, "auth_ref": [] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]", "terseLabel": "Insider Trading Arrangements:" } } }, "auth_ref": [ "r871" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]", "terseLabel": "Insider Trading Policies and Procedures:" } } }, "auth_ref": [ "r805", "r877" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Adopted [Flag]", "terseLabel": "Insider Trading Policies and Procedures Adopted" } } }, "auth_ref": [ "r805", "r877" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]", "terseLabel": "Insider Trading Policies and Procedures Not Adopted" } } }, "auth_ref": [ "r805", "r877" ] }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssets" ], "lang": { "en-us": { "role": { "label": "Intangible Assets Disclosure [Text Block]", "terseLabel": "INTANGIBLE ASSETS", "documentation": "The entire disclosure for all or part of the information related to intangible assets." } } }, "auth_ref": [ "r344" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Intangible Assets, Net (Excluding Goodwill)", "terseLabel": "Intangible assets, net", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r60", "r63" ] }, "us-gaap_IntangibleAssetsNetIncludingGoodwillAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsNetIncludingGoodwillAbstract", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Intangible Assets, Net (Including Goodwill) [Abstract]", "terseLabel": "Indefinite-Lived Intangible Assets" } } }, "auth_ref": [] }, "us-gaap_InterestReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestReceivable", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Interest Receivable", "terseLabel": "Accrued interest", "documentation": "Carrying amount as of the balance sheet date of interest earned but not received. Also called accrued interest or accrued interest receivable." } } }, "auth_ref": [ "r897", "r1005" ] }, "us-gaap_IntersegmentEliminationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntersegmentEliminationMember", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Intersegment Eliminations [Member]", "terseLabel": "Intercompany Eliminations", "documentation": "Eliminating entries used in operating segment consolidation." } } }, "auth_ref": [ "r247", "r258", "r259", "r260", "r261", "r262", "r264", "r268" ] }, "us-gaap_InventoryRawMaterials": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterials", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "parentTag": "us-gaap_OtherAssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Raw Materials, Gross", "terseLabel": "Raw materials inventory", "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r898" ] }, "us-gaap_InvestmentIncomeNonoperating": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentIncomeNonoperating", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsEarningsOnInvestedFundsDetails" ], "lang": { "en-us": { "role": { "label": "Investment Income, Nonoperating", "terseLabel": "Earnings on invested funds", "documentation": "The aggregate amount of income from investments (for example, dividends) not considered a component of the entity's core operations." } } }, "auth_ref": [ "r122" ] }, "agx_InvestmentMaturityPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "InvestmentMaturityPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the maturity period of investments.", "label": "Investment Maturity Period", "terseLabel": "Maturity period" } } }, "auth_ref": [] }, "us-gaap_InvestmentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables" ], "lang": { "en-us": { "role": { "label": "Investment [Table Text Block]", "terseLabel": "Investments", "documentation": "Tabular disclosure of investment." } } }, "auth_ref": [ "r887", "r888", "r916" ] }, "us-gaap_InvestmentTaxCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentTaxCredit", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Investment Tax Credit", "terseLabel": "Investment tax credits", "documentation": "The amount deducted from an entities' taxes, reflecting a percentage of an amount invested in certain assets spread over the useful life of those assets; includes deferred investment tax credits." } } }, "auth_ref": [ "r129" ] }, "us-gaap_Investments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Investments", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 }, "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Investments", "terseLabel": "Investments", "totalLabel": "Total investments", "documentation": "Sum of the carrying amounts as of the balance sheet date of all investments." } } }, "auth_ref": [ "r612" ] }, "agx_InvestmentsCommittedButNotYetPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "InvestmentsCommittedButNotYetPaid", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Future cash outflow to pay for investments committed but not paid.", "label": "Investments Committed But Not Yet Paid", "terseLabel": "Investments in solar energy projects not yet paid" } } }, "auth_ref": [] }, "agx_KilrootProjectMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "KilrootProjectMember", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to kilroot project.", "label": "Kilroot Project [Member]", "terseLabel": "Kilroot Project" } } }, "auth_ref": [] }, "us-gaap_LandAndLandImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LandAndLandImprovementsMember", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Land and Improvements [Member]", "terseLabel": "Land and improvements", "documentation": "Real estate held and assets that are an addition or improvement to real estate held." } } }, "auth_ref": [] }, "agx_LeeTelecomIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "LeeTelecomIncMember", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to Lee Telecom Inc.", "label": "LTI" } } }, "auth_ref": [] }, "dei_LegalEntityAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LegalEntityAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Legal Entity [Axis]", "documentation": "The set of legal entities associated with a report." } } }, "auth_ref": [] }, "us-gaap_LegalMattersAndContingenciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LegalMattersAndContingenciesTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureLegalContingencies" ], "lang": { "en-us": { "role": { "label": "Legal Matters and Contingencies [Text Block]", "verboseLabel": "LEGAL CONTINGENCIES", "documentation": "The entire disclosure for legal proceedings, legal contingencies, litigation, regulatory and environmental matters and other contingencies." } } }, "auth_ref": [ "r137" ] }, "us-gaap_LesseeLeasesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeasesPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Lessee, Leases [Policy Text Block]", "terseLabel": "Leases", "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee." } } }, "auth_ref": [ "r543" ] }, "us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend": { "xbrltype": "booleanItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseExistenceOfOptionToExtend", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Existence of Option to Extend [true false]", "terseLabel": "Operating leases, options to extend", "documentation": "Indicates (true false) whether lessee has option to extend operating lease." } } }, "auth_ref": [ "r544" ] }, "us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate": { "xbrltype": "booleanItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseExistenceOfOptionToTerminate", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Existence of Option to Terminate [true false]", "terseLabel": "Operating leases, options to terminate", "documentation": "Indicates (true false) whether lessee has option to terminate operating lease." } } }, "auth_ref": [ "r544" ] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsTables" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Schedule of future minimum lease payments for the operating leases", "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position." } } }, "auth_ref": [ "r987" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due", "totalLabel": "Total lease payments", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r548" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Five", "terseLabel": "Thereafter", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r548" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Operating Leases, Future Minimum Payments Due, Next Twelve Months", "terseLabel": "2025", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r548" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Five", "terseLabel": "2029", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r548" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four", "terseLabel": "2028", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r548" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three", "terseLabel": "2027", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r548" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two", "terseLabel": "2026", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r548" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "terseLabel": "Less imputed interest", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r548" ] }, "us-gaap_LetterOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LetterOfCreditMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Letter of Credit", "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit)." } } }, "auth_ref": [] }, "agx_LettersOfCreditExpireOnMay312024Member": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "LettersOfCreditExpireOnMay312024Member", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to letters of credit expire on May 31, 2024.", "label": "Expires on May 31, 2024" } } }, "auth_ref": [] }, "us-gaap_LettersOfCreditOutstandingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LettersOfCreditOutstandingAmount", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Letters of Credit Outstanding, Amount", "terseLabel": "Letters of credit outstanding amount", "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date." } } }, "auth_ref": [] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities", "totalLabel": "TOTAL LIABILITIES", "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future." } } }, "auth_ref": [ "r26", "r208", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r505", "r508", "r509", "r527", "r680", "r758", "r799", "r943", "r990", "r991" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity", "totalLabel": "TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r113", "r151", "r620", "r786", "r906", "r925", "r985" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current", "terseLabel": "Current liabilities", "totalLabel": "TOTAL CURRENT LIABILITIES", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r28", "r177", "r208", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r505", "r508", "r509", "r527", "r786", "r943", "r990", "r991" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "CURRENT LIABILITIES" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Noncurrent", "terseLabel": "Noncurrent liabilities", "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r23", "r101", "r102", "r103", "r104", "r208", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r505", "r508", "r509", "r527", "r943", "r990", "r991" ] }, "agx_LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "documentation": "The contingent increase above the maximum borrowing capacity under the credit facility, if any one or more of the existing banks or new banks agree to provide such increased commitment amount.", "label": "Line of Credit Facility Contingent Increase, Additional Borrowing Capacity", "terseLabel": "Additional commitment amount" } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility [Line Items]", "terseLabel": "Financing Arrangements", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r905" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Maximum Borrowing Capacity", "terseLabel": "Borrowing available under financing arrangements", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r25" ] }, "us-gaap_LineOfCreditFacilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityTable", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility [Table]", "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line." } } }, "auth_ref": [ "r25", "r905" ] }, "us-gaap_LineOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit [Member]", "documentation": "A contractual arrangement with a lender under which borrowings can be made up to a specific amount at any point in time, and under which borrowings outstanding may be either short-term or long-term, depending upon the particulars." } } }, "auth_ref": [] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongLivedAssetsByGeographicAreasTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetTables" ], "lang": { "en-us": { "role": { "label": "Long-Lived Assets by Geographic Areas [Table Text Block]", "verboseLabel": "Schedule of property, plant and equipment, net, disaggregated by geographic area", "documentation": "Tabular disclosure of long-lived assets, excluding financial instruments, long-term customer relationships of a financial institution, mortgage rights, deferred policy acquisition costs, and deferred tax assets, by geographic areas located in the entity's country of domicile and foreign countries in which the entity holds assets." } } }, "auth_ref": [ "r20" ] }, "us-gaap_LossContingenciesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingenciesLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureLegalContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Loss Contingencies [Line Items]", "terseLabel": "Loss Contingencies", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r354", "r355", "r356", "r359", "r938", "r939" ] }, "us-gaap_LossContingenciesTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingenciesTable", "presentation": [ "http://www.arganinc.com/role/DisclosureLegalContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Loss Contingencies [Table]", "terseLabel": "Loss Contingencies [Table]", "documentation": "Discloses the specific components (such as the nature, name, and date) of the loss contingency and gives an estimate of the possible loss or range of loss, or states that a reasonable estimate cannot be made. Excludes environmental contingencies, warranties and unconditional purchase obligations." } } }, "auth_ref": [ "r354", "r355", "r356", "r359", "r938", "r939" ] }, "agx_MajorCustomerOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "MajorCustomerOneMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "documentation": "Major customer one.", "label": "Major Customer One" } } }, "auth_ref": [] }, "agx_MajorCustomerThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "MajorCustomerThreeMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "documentation": "Major customer three.", "label": "Major Customer Three" } } }, "auth_ref": [] }, "agx_MajorCustomerTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "MajorCustomerTwoMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "documentation": "Major customer two.", "label": "Major Customer Two" } } }, "auth_ref": [] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MajorCustomersAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r274", "r769", "r948", "r999", "r1000" ] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "label": "Maximum", "terseLabel": "Maximum" } } }, "auth_ref": [ "r355", "r356", "r357", "r358", "r418", "r589", "r650", "r672", "r673", "r724", "r726", "r728", "r729", "r731", "r747", "r748", "r761", "r766", "r779", "r788", "r947", "r992", "r993", "r994", "r995", "r996", "r997" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "auth_ref": [ "r844" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "auth_ref": [ "r844" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "label": "Minimum", "terseLabel": "Minimum" } } }, "auth_ref": [ "r355", "r356", "r357", "r358", "r418", "r589", "r650", "r672", "r673", "r724", "r726", "r728", "r729", "r731", "r747", "r748", "r761", "r766", "r779", "r788", "r947", "r992", "r993", "r994", "r995", "r996", "r997" ] }, "us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Noncontrolling Interest, Decrease from Distributions to Noncontrolling Interest Holders", "negatedLabel": "Distribution to non-controlling interest", "documentation": "Decrease in noncontrolling interest balance from payment of dividends or other distributions by the non-wholly owned subsidiary or partially owned entity, included in the consolidation of the parent entity, to the noncontrolling interest holders." } } }, "auth_ref": [ "r139" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "MNPI Disclosure Timed for Compensation Value [Flag]", "terseLabel": "MNPI Disclosure Timed for Compensation Value" } } }, "auth_ref": [ "r864" ] }, "us-gaap_MoneyMarketFundsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MoneyMarketFundsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Money market funds", "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities." } } }, "auth_ref": [ "r949" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]", "terseLabel": "Material Terms of Trading Arrangement" } } }, "auth_ref": [ "r872" ] }, "agx_NPricedChangeOrdersIncludedInTransactionPrices": { "xbrltype": "decimalItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "NPricedChangeOrdersIncludedInTransactionPrices", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "Amounts of unpriced change orders included in transaction prices.", "label": "N Priced Change Orders Included In Transaction Prices", "terseLabel": "Amounts of unpriced change orders included in transaction prices" } } }, "auth_ref": [] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "auth_ref": [ "r274", "r769", "r948", "r999", "r1000" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Named Executive Officers, Footnote [Text Block]", "terseLabel": "Named Executive Officers, Footnote" } } }, "auth_ref": [ "r845" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash used in financing activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r205" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "CASH FLOWS FROM FINANCING ACTIVITIES" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r205" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "CASH FLOWS FROM INVESTING ACTIVITIES" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by (used in) operating activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r127", "r128", "r129" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "CASH FLOWS FROM OPERATING ACTIVITIES" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "netLabel": "Net income", "totalLabel": "NET INCOME ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN, INC.", "label": "Net Income (Loss)", "terseLabel": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r117", "r129", "r156", "r175", "r193", "r195", "r200", "r208", "r214", "r216", "r217", "r218", "r219", "r222", "r223", "r232", "r245", "r259", "r265", "r268", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r519", "r527", "r628", "r702", "r718", "r719", "r759", "r797", "r943" ] }, "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAttributableToNoncontrollingInterest", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Attributable to Noncontrolling Interest", "terseLabel": "Net income (loss) attributable to non-controlling interest", "documentation": "Amount of Net Income (Loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r93", "r146", "r193", "r195", "r222", "r223", "r627", "r902" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "RECENTLY ISSUED ACCOUNTING PRONOUNCEMENTS", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-GAAP Measure Description [Text Block]", "terseLabel": "Non-GAAP Measure Description" } } }, "auth_ref": [ "r844" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "auth_ref": [ "r813", "r825", "r835", "r852", "r861" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Compensation Actually Paid Amount", "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r842" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Total Compensation Amount", "terseLabel": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r841" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO [Member]", "terseLabel": "Non-PEO NEO" } } }, "auth_ref": [ "r852" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r872" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r872" ] }, "us-gaap_NoncontrollingInterestDecreaseFromDeconsolidation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncontrollingInterestDecreaseFromDeconsolidation", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Noncontrolling Interest, Decrease from Deconsolidation", "negatedLabel": "Deconsolidation of VIEs", "documentation": "The amount of the reduction or elimination during the period of a noncontrolling interest resulting from the parent's loss of control and deconsolidation of the entity in which one or more outside parties had a noncontrolling interest." } } }, "auth_ref": [ "r12", "r68" ] }, "us-gaap_NoncontrollingInterestMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncontrollingInterestMember", "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Non-controlling Interest", "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest." } } }, "auth_ref": [ "r84", "r392", "r908", "r909", "r910", "r1003" ] }, "agx_NumberOfMajorCustomers": { "xbrltype": "integerItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "NumberOfMajorCustomers", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "documentation": "Number of major customers.", "label": "Number Of Major Customers", "terseLabel": "Number of customers" } } }, "auth_ref": [] }, "us-gaap_NumberOfOperatingSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfOperatingSegments", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Number of Operating Segments", "terseLabel": "Operating segment", "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues." } } }, "auth_ref": [ "r913" ] }, "agx_NumberOfSharesIssuableUnderRestrictedStockUnitsAwardedDuringPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "NumberOfSharesIssuableUnderRestrictedStockUnitsAwardedDuringPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the number of shares issuable under restricted stock units awarded during the period.", "label": "The Number Of Shares Issuable Under Restricted Stock Units Awarded During The Period", "terseLabel": "The number of shares issuable under restricted stock units awarded during the period" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Operating Income (Loss)", "totalLabel": "INCOME FROM OPERATIONS", "verboseLabel": "Income (loss) from operations", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r245", "r259", "r265", "r268", "r759" ] }, "us-gaap_OperatingLeaseExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseExpense", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Expense", "terseLabel": "Operating lease expense", "verboseLabel": "Lease expense", "documentation": "Amount of operating lease expense. Excludes sublease income." } } }, "auth_ref": [ "r986" ] }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease Liabilities, Payments Due [Abstract]", "terseLabel": "Operating Leases" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability", "totalLabel": "Present value of lease payments", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r541" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current", "verboseLabel": "Less current portion (included in accrued expenses)", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r541" ] }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]", "terseLabel": "Less current portion (included in accrued expenses)", "documentation": "Indicates line item in statement of financial position that includes current operating lease liability." } } }, "auth_ref": [ "r542" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Noncurrent", "verboseLabel": "Non-current portion (included in noncurrent liabilities)", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r541" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]", "terseLabel": "Non-current portion (included in noncurrent liabilities)", "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability." } } }, "auth_ref": [ "r542" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Operating lease, right-of-use assets", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r540" ] }, "agx_OperatingLeaseRightOfUseAssetAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "OperatingLeaseRightOfUseAssetAndOtherAssets", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "documentation": "The amount of lessee's right to use underlying asset under operating lease, and asset classified as other.", "label": "Operating Lease Right Of Use Asset, and Other Assets", "terseLabel": "Right-of-use and other assets" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes operating lease right-of-use asset." } } }, "auth_ref": [ "r542" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Weighted average discount rate", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r547", "r785" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Remaining Lease Term", "terseLabel": "Weighted average lease term", "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r546", "r785" ] }, "agx_OperatingLeasesPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "OperatingLeasesPaid", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Cash paid for operating leases.", "label": "Operating Leases Paid", "terseLabel": "Cash paid for operating leases" } } }, "auth_ref": [] }, "us-gaap_OperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwards", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesScheduleOfTaxEffectsOfTemporaryDifferencesThatGaveRiseToDeferredTaxAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Net operating loss carry forward", "verboseLabel": "Net operating losses", "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws." } } }, "auth_ref": [ "r77" ] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Operating Segments [Member]", "terseLabel": "Operating Segments", "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r258", "r259", "r260", "r261", "r262", "r268" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION" } } }, "auth_ref": [] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentation" ], "lang": { "en-us": { "role": { "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]", "verboseLabel": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION", "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure." } } }, "auth_ref": [ "r100", "r145", "r658", "r659" ] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Other Accrued Liabilities, Current", "terseLabel": "Other", "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r27" ] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 }, "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets, Current", "terseLabel": "Other current assets", "totalLabel": "Total other current assets", "documentation": "Amount of current assets classified as other." } } }, "auth_ref": [ "r187", "r786" ] }, "us-gaap_OtherAssetsMiscellaneousCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsMiscellaneousCurrent", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "parentTag": "us-gaap_OtherAssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Other Assets, Miscellaneous, Current", "terseLabel": "Other", "documentation": "Amount of other miscellaneous assets expected to be realized or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Gain (Loss), before Reclassification and Tax", "terseLabel": "Foreign currency translation loss", "documentation": "Amount before tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature." } } }, "auth_ref": [ "r3", "r114", "r529", "r530", "r532" ] }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax", "terseLabel": "Net unrealized gains on available-for-sale securities", "documentation": "Amount, after tax and adjustment, of unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) and unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r189", "r190", "r191" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "terseLabel": "Foreign currency translation adjustments", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature." } } }, "auth_ref": [ "r3" ] }, "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Reclassification Adjustment from AOCI for Sale of Securities, Net of Tax", "terseLabel": "Amounts of gains or losses reclassified out of other comprehensive income", "documentation": "Amount after tax of reclassification adjustment from accumulated other comprehensive income for unrealized gain (loss) realized upon the sale of available-for-sale securities." } } }, "auth_ref": [ "r5", "r114", "r192", "r311" ] }, "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodBeforeTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment and Tax", "terseLabel": "Net unrealized holding losses for the Company's AFS securities", "documentation": "Amount, before tax and adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r189", "r191", "r311" ] }, "us-gaap_OtherNoncashIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNoncashIncomeExpense", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Other Noncash Income (Expense)", "negatedLabel": "Other", "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other." } } }, "auth_ref": [ "r129" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Other Nonoperating Income (Expense)", "terseLabel": "Other income (loss), net", "verboseLabel": "Other income, net", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r124" ] }, "us-gaap_OtherNonoperatingIncomeExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpenseMember", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Other income (expense)", "documentation": "Primary financial statement caption encompassing other nonoperating income (expense)." } } }, "auth_ref": [] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Other Performance Measure, Amount", "terseLabel": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r844" ] }, "us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCategoriesOfInvestmentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCategoriesOfInvestmentsDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Other than Temporary Impairment, Credit Losses Recognized in Earnings, Categories of Investments [Domain]", "documentation": "Provides the categories of debt securities, available-for-sale or held-to-maturity, on which an entity may recognize other than temporary impairments (OTTI) for which a portion related to credit losses has been recognized in earnings and a portion related to all other factors has been recognized in other comprehensive income." } } }, "auth_ref": [ "r21" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Aggregate Erroneous Compensation Amount", "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r811", "r823", "r833", "r859" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "auth_ref": [ "r814", "r826", "r836", "r862" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r814", "r826", "r836", "r862" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r840" ] }, "us-gaap_PaymentsForLegalSettlements": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForLegalSettlements", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureLegalContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Payments for Legal Settlements", "verboseLabel": "Payments for legal settlements", "documentation": "The amount of cash paid for the settlement of litigation or for other legal issues during the period." } } }, "auth_ref": [ "r6" ] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments for Repurchase of Common Stock", "negatedLabel": "Common stock repurchases", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r39" ] }, "us-gaap_PaymentsOfDividendsCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDividendsCommonStock", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments of Ordinary Dividends, Common Stock", "negatedLabel": "Payments of cash dividends", "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity." } } }, "auth_ref": [ "r39" ] }, "us-gaap_PaymentsOfDividendsMinorityInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDividendsMinorityInterest", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments of Ordinary Dividends, Noncontrolling Interest", "negatedLabel": "Distribution to non-controlling interest", "terseLabel": "Payments of distribution to non-controlling interest", "documentation": "Amount of cash outflow in the form of ordinary dividends provided by the non-wholly owned subsidiary to noncontrolling interests." } } }, "auth_ref": [ "r39" ] }, "us-gaap_PaymentsToAcquireAvailableForSaleSecuritiesDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireAvailableForSaleSecuritiesDebt", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Debt Securities, Available-for-Sale", "negatedLabel": "Purchases of available-for-sale securities", "documentation": "Amount of cash outflow to acquire investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r37", "r203", "r278" ] }, "us-gaap_PaymentsToAcquireBusinessesGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesGross", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Businesses, Gross", "negatedLabel": "Acquisition of Lee Telecom, Inc.", "terseLabel": "Payment for acquisition", "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price." } } }, "auth_ref": [ "r38", "r502" ] }, "us-gaap_PaymentsToAcquireEquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireEquityMethodInvestments", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Equity Method Investments", "negatedLabel": "Investments in solar energy projects", "verboseLabel": "Payment for equity method investment", "documentation": "The cash outflow associated with the purchase of or advances to an equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence." } } }, "auth_ref": [ "r38" ] }, "us-gaap_PaymentsToAcquireHeldToMaturitySecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireHeldToMaturitySecurities", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Held-to-maturity Securities", "negatedLabel": "Purchases of short-term investments", "documentation": "Amount of cash outflow through purchase of long-term held-to-maturity securities." } } }, "auth_ref": [ "r37", "r278" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchases of property, plant and equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r126" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Issuers, Footnote [Text Block]", "terseLabel": "Peer Group Issuers, Footnote" } } }, "auth_ref": [ "r843" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Total Shareholder Return Amount", "terseLabel": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r843" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Actually Paid Compensation Amount", "terseLabel": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r842" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "auth_ref": [ "r852" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "auth_ref": [ "r845" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Total Compensation Amount", "terseLabel": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r841" ] }, "agx_PercentageIncreaseInCommonStockDividendPerShare": { "xbrltype": "percentItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "PercentageIncreaseInCommonStockDividendPerShare", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "lang": { "en-us": { "role": { "documentation": "The percentage increase in common stock dividend per share.", "label": "Percentage Increase In Common Stock Dividend Per Share", "terseLabel": "Percentage increase in common stock dividend" } } }, "auth_ref": [] }, "agx_PercentageOfMaximumSharesForTargetNumberOfSharesAwarded": { "xbrltype": "percentItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "PercentageOfMaximumSharesForTargetNumberOfSharesAwarded", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the percentage of the maximum shares for the target number of shares awarded.", "label": "Percentage Of Maximum shares For The Target Number Of Shares Awarded", "terseLabel": "Percentage of the maximum shares for the target number of shares awarded" } } }, "auth_ref": [] }, "agx_PercentageReductionInAggregateFairValueOfStockOption": { "xbrltype": "percentItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "PercentageReductionInAggregateFairValueOfStockOption", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the percentage reduction in the aggregate fair value of stock option", "label": "Percentage Reduction In The Aggregate Fair Value Of Stock Option", "terseLabel": "Percentage reduction in the aggregate fair value of stock option" } } }, "auth_ref": [] }, "agx_PerformanceBasedRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "PerformanceBasedRestrictedStockUnitsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to performance-based restricted stock units.", "label": "Performance-based restricted stock units", "terseLabel": "Performance-based restricted stock units" } } }, "auth_ref": [] }, "agx_PeriodForIdentifyAndQuantifyResearchAndDevelopmentTaxCredits": { "xbrltype": "durationItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "PeriodForIdentifyAndQuantifyResearchAndDevelopmentTaxCredits", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents period for identify and quantify the amounts of research and development credits.", "label": "Period for Identify and Quantify Research and Development Tax Credits", "terseLabel": "Prior period for identify and quantify the amounts of research and development credits" } } }, "auth_ref": [] }, "agx_PeriodOfAmortizationOfGoodwillForIncomeTaxPurpose": { "xbrltype": "durationItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "PeriodOfAmortizationOfGoodwillForIncomeTaxPurpose", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Period of amortization of goodwill for income tax purpose.", "label": "Period Of Amortization Of Goodwill For Income Tax Purpose", "terseLabel": "Period of amortization of goodwill for income tax purpose" } } }, "auth_ref": [] }, "agx_Plan2020Member": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "Plan2020Member", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the 2020 plan.", "label": "2020 Plan" } } }, "auth_ref": [] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r950", "r951", "r952", "r953", "r954", "r955", "r956", "r957", "r958", "r959", "r960", "r961", "r962", "r963", "r964", "r965", "r966", "r967", "r968", "r969", "r970", "r971", "r972", "r973", "r974", "r975" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r950", "r951", "r952", "r953", "r954", "r955", "r956", "r957", "r958", "r959", "r960", "r961", "r962", "r963", "r964", "r965", "r966", "r967", "r968", "r969", "r970", "r971", "r972", "r973", "r974", "r975" ] }, "agx_PowerIndustryServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "PowerIndustryServicesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "documentation": "Power industry services.", "label": "Power Industry Services", "verboseLabel": "Power Services" } } }, "auth_ref": [] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r107", "r390" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Authorized", "terseLabel": "Preferred stock, shares authorized", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r107", "r682" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Issued", "terseLabel": "Preferred stock, shares issued", "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt." } } }, "auth_ref": [ "r107", "r390" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock, shares outstanding", "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased." } } }, "auth_ref": [ "r107", "r682", "r700", "r1003", "r1004" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Value, Issued", "terseLabel": "Preferred stock, par value $0.10 per share - 500,000 shares authorized; no shares issued and outstanding", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r107", "r616", "r786" ] }, "us-gaap_PrepaidExpenseCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseCurrent", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "parentTag": "us-gaap_OtherAssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Prepaid Expense, Current", "terseLabel": "Prepaid expenses", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r186", "r327", "r328", "r753" ] }, "us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfAvailableForSaleSecuritiesDebt", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "Proceeds from Sale of Debt Securities, Available-for-Sale", "terseLabel": "Proceeds from sale of debt securities, available-for-sale", "documentation": "Amount of cash inflow from sale of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r36", "r203", "r278", "r310" ] }, "us-gaap_ProceedsFromSaleOfHeldToMaturitySecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfHeldToMaturitySecurities", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Sale of Held-to-maturity Securities", "terseLabel": "Maturities of short-term investments", "documentation": "The cash inflow associated with the sale of securities that had been designated as held-to-maturity. Excludes proceeds from maturities, prepayments and calls by the issuer." } } }, "auth_ref": [ "r36", "r278" ] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Stock Options Exercised", "terseLabel": "Proceeds from share-based award settlements", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r4", "r17" ] }, "us-gaap_ProductConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductConcentrationRiskMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Product Concentration Risk", "documentation": "Reflects the percentage that revenues during the period from a specified product are to a specified benchmark, such as total net revenues, segment revenues or product line revenues. May also reflect the percentage contribution the product made to operating results. Risk is materially adverse effects of a loss of sales of a significant product or line of products, which could occur upon loss of rights to sell, distribute or license others; loss of patent or copyright protection; or technological obsolescence." } } }, "auth_ref": [ "r50" ] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Products and Services [Axis]" } } }, "auth_ref": [ "r270", "r591", "r644", "r645", "r646", "r647", "r648", "r649", "r750", "r767", "r787", "r885", "r940", "r941", "r948", "r999" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "label": "Products and Services [Domain]" } } }, "auth_ref": [ "r270", "r591", "r644", "r645", "r646", "r647", "r648", "r649", "r750", "r767", "r787", "r885", "r940", "r941", "r948", "r999" ] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProfitLoss", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 }, "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "NET INCOME", "totalLabel": "NET INCOME", "verboseLabel": "Net income (loss)", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r175", "r193", "r195", "r204", "r208", "r214", "r222", "r223", "r245", "r259", "r265", "r268", "r313", "r364", "r365", "r367", "r368", "r369", "r371", "r373", "r375", "r376", "r503", "r506", "r507", "r519", "r527", "r610", "r626", "r666", "r702", "r718", "r719", "r759", "r783", "r784", "r798", "r902", "r943" ] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAbstract", "lang": { "en-us": { "role": { "label": "PROPERTY, PLANT AND EQUIPMENT, NET." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Type [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r9" ] }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNet" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment Disclosure [Text Block]", "verboseLabel": "PROPERTY, PLANT AND EQUIPMENT, NET", "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r134", "r162", "r167", "r168" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Gross", "terseLabel": "Property and equipment, gross", "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r135", "r179", "r623" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Line Items]", "terseLabel": "Property, plant and equipment, net", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 }, "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Net", "totalLabel": "Property, plant and equipment, net", "verboseLabel": "Property, plant and equipment, net", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r9", "r611", "r623", "r786" ] }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Policy [Policy Text Block]", "terseLabel": "Property, Plant and Equipment", "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r9", "r162", "r167", "r621" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetTables" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Summary of property, plant and equipment", "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r9" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Type [Domain]", "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software." } } }, "auth_ref": [ "r135" ] }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLife", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Useful Life", "terseLabel": "Estimated useful lives of the assets", "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment." } } }, "auth_ref": [] }, "us-gaap_ProvisionForLoanAndLeaseLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForLoanAndLeaseLosses", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "label": "Provision for Loan and Lease Losses", "terseLabel": "Provision for credit losses", "documentation": "Amount of expense related to estimated loss from loan and lease transactions." } } }, "auth_ref": [ "r7", "r11", "r157" ] }, "us-gaap_ProvisionForLoanLeaseAndOtherLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForLoanLeaseAndOtherLosses", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Provision for Loan, Lease, and Other Losses", "terseLabel": "Provisions for credit losses", "documentation": "Amount of expense related loan transactions, lease transactions, credit loss from transactions other than loan and lease transactions, and other loss based on assessment of uncollectability from the counterparty to reduce the account to their net realizable value." } } }, "auth_ref": [ "r7", "r11", "r157" ] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Table]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r840" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance [Table Text Block]", "terseLabel": "Pay vs Performance Disclosure, Table" } } }, "auth_ref": [ "r840" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "label": "Range [Axis]" } } }, "auth_ref": [ "r355", "r356", "r357", "r358", "r409", "r418", "r451", "r452", "r453", "r562", "r589", "r650", "r672", "r673", "r724", "r726", "r728", "r729", "r731", "r747", "r748", "r761", "r766", "r779", "r788", "r791", "r937", "r947", "r993", "r994", "r995", "r996", "r997" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsEmployeeBenefitPlansDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "label": "Range [Domain]" } } }, "auth_ref": [ "r355", "r356", "r357", "r358", "r409", "r418", "r451", "r452", "r453", "r562", "r589", "r650", "r672", "r673", "r724", "r726", "r728", "r729", "r731", "r747", "r748", "r761", "r766", "r779", "r788", "r791", "r937", "r947", "r993", "r994", "r995", "r996", "r997" ] }, "us-gaap_ReceivablesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesAbstract", "lang": { "en-us": { "role": { "label": "ACCOUNTS RECEIVABLE" } } }, "auth_ref": [] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]", "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure" } } }, "auth_ref": [ "r806", "r818", "r828", "r854" ] }, "us-gaap_RelatedPartyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "lang": { "en-us": { "role": { "label": "Related Party, Type [Domain]", "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests." } } }, "auth_ref": [ "r416", "r550", "r551", "r675", "r676", "r677", "r678", "r679", "r699", "r701", "r723" ] }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "lang": { "en-us": { "role": { "label": "Related Party, Type [Axis]", "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests." } } }, "auth_ref": [ "r416", "r550", "r551", "r594", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r602", "r603", "r604", "r605", "r675", "r676", "r677", "r678", "r679", "r699", "r701", "r723", "r989" ] }, "agx_RemainingBondedPerformanceObligations": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "RemainingBondedPerformanceObligations", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to remaining bonded performance obligations.", "label": "Remaining Bonded Performance Obligations", "terseLabel": "Unsatisfied bonded performance obligations" } } }, "auth_ref": [] }, "agx_RenewablePerformanceBasedRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "RenewablePerformanceBasedRestrictedStockUnitsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Renewable Performance Based Restricted Stock Units.", "label": "Renewable Performance-Based Restricted Stock Units" } } }, "auth_ref": [] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date [Axis]", "terseLabel": "Restatement Determination Date:" } } }, "auth_ref": [ "r807", "r819", "r829", "r855" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "auth_ref": [ "r808", "r820", "r830", "r856" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Does Not Require Recovery [Text Block]", "terseLabel": "Restatement does not require Recovery" } } }, "auth_ref": [ "r815", "r827", "r837", "r863" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Restricted Stock Units", "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met." } } }, "auth_ref": [] }, "agx_RetainedAmountUnderConstructionContracts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "RetainedAmountUnderConstructionContracts", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "lang": { "en-us": { "role": { "documentation": "The amounts retained by project owners under construction contracts.", "label": "Retained Amount Under Construction Contracts", "terseLabel": "Retained amounts by project owners" } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r110", "r139", "r619", "r654", "r656", "r663", "r683", "r786" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Retained Earnings", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r172", "r211", "r212", "r213", "r215", "r221", "r223", "r314", "r315", "r459", "r460", "r461", "r490", "r491", "r510", "r512", "r513", "r515", "r517", "r651", "r653", "r667", "r1003" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "label": "REVENUES FROM CONTRACTS WITH CUSTOMERS" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "netLabel": "Revenues", "terseLabel": "Consolidated Revenues", "verboseLabel": "REVENUES", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r246", "r247", "r258", "r263", "r264", "r270", "r272", "r274", "r404", "r405", "r591" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "REVENUES FROM CONTRACTS WITH CUSTOMERS", "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts." } } }, "auth_ref": [ "r171", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r408" ] }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRecognitionPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Revenue Recognition, Policy [Policy Text Block]", "terseLabel": "Revenue Recognition", "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources." } } }, "auth_ref": [ "r703", "r749", "r755" ] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation", "terseLabel": "Contract backlog amount", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r165" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "REVENUES FROM CONTRACTS WITH CUSTOMERS", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "terseLabel": "Performance period", "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r166" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format." } } }, "auth_ref": [ "r166" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationPercentage", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Percentage", "terseLabel": "Contract backlog (as percent)", "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue." } } }, "auth_ref": [ "r882" ] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Revolving Credit Facility", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "verboseLabel": "Right-of-use assets obtained in exchange for lease obligations", "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability." } } }, "auth_ref": [ "r545", "r785" ] }, "us-gaap_RisksAndUncertaintiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RisksAndUncertaintiesAbstract", "lang": { "en-us": { "role": { "label": "CUSTOMER CONCENTRATIONS" } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r872" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r872" ] }, "us-gaap_SalesRevenueNetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SalesRevenueNetMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Revenue", "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation." } } }, "auth_ref": [ "r274", "r883" ] }, "srt_ScenarioUnspecifiedDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioUnspecifiedDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Scenario, Unspecified [Domain]" } } }, "auth_ref": [ "r224", "r419", "r880", "r911" ] }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Accrued Liabilities [Table Text Block]", "terseLabel": "Schedule of accrued expenses", "documentation": "Tabular disclosure of the components of accrued liabilities." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Available-for-Sale Securities Reconciliation [Table Text Block]", "terseLabel": "Schedule of available-for-sale securities", "documentation": "Tabular disclosure of the reconciliation of available-for-sale securities from cost basis to fair value." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfCashAndCashEquivalentsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfCashAndCashEquivalentsTable", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Cash and Cash Equivalents [Table]", "terseLabel": "Schedule of Cash and Cash Equivalents [Table]", "documentation": "Schedule of cash and cash equivalent balances. This table excludes restricted cash balances." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]", "terseLabel": "Schedule of components of company's income tax (expense) benefit", "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years." } } }, "auth_ref": [ "r143" ] }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]", "terseLabel": "Schedule of tax effects of temporary differences that gave rise to deferred tax assets and liabilities", "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets." } } }, "auth_ref": [ "r142" ] }, "agx_ScheduleOfDescriptionOfBusinessLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ScheduleOfDescriptionOfBusinessLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "documentation": "Schedule Of Description Of Business [Line Items]", "label": "Schedule Of Description Of Business [Line Items]", "terseLabel": "Description of the Business" } } }, "auth_ref": [] }, "agx_ScheduleOfDescriptionOfBusinessTable": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ScheduleOfDescriptionOfBusinessTable", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "documentation": "Schedule Of Description Of Business [Table]", "label": "Schedule Of Description Of Business [Table]", "terseLabel": "Schedule Of Description Of Business [Table]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Schedule of computations of basic and diluted net income per share", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r912" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]", "verboseLabel": "Schedule of actual income tax expense amounts", "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r141" ] }, "agx_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of amortizable finite-lived intangible assets, in total and by major class, including the gross carrying amount and accumulated amortization, and indefinite-lived intangible assets not subject to amortization, excluding goodwill, in total and by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Schedule Of Finite-Lived and Indefinite-Lived Intangible Assets by Major Class [Table Text Block]", "terseLabel": "Schedule of company's purchased intangible assets, other than goodwill" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets [Table]", "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r62", "r64", "r592" ] }, "us-gaap_ScheduleOfGoodwillTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTable", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Goodwill [Table]", "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons." } } }, "auth_ref": [ "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r763" ] }, "us-gaap_ScheduleOfGoodwillTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Goodwill [Table Text Block]", "terseLabel": "Schedule of changes in the balances of goodwill", "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule." } } }, "auth_ref": [ "r763", "r926", "r927", "r928", "r929", "r930", "r931", "r932", "r933", "r934", "r935", "r936" ] }, "us-gaap_ScheduleOfInvestmentIncomeReportedAmountsByCategoryLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInvestmentIncomeReportedAmountsByCategoryLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Net Investment Income [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r629" ] }, "us-gaap_ScheduleOfInvestmentIncomeReportedAmountsByCategoryTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInvestmentIncomeReportedAmountsByCategoryTable", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Investment Income [Table]", "documentation": "Disclosure of information about investment income, including, but not limited to, interest and dividend income and amortization of discount (premium) derived from debt and equity securities. Excludes realized and unrealized gain (loss) on investments." } } }, "auth_ref": [ "r121", "r123", "r629" ] }, "agx_ScheduleOfLeaseTermAndDiscountRatesOfOperatingLeasesOfLesseeTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ScheduleOfLeaseTermAndDiscountRatesOfOperatingLeasesOfLesseeTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of lease term and discount rates of operating leases of lessee.", "label": "Schedule of Lease Term and Discount Rates of Operating Leases of Lessee [Table Text Block]", "terseLabel": "Schedule of Lease Term and Discount Rates of Operating Leases of Lessee" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfNonvestedShareActivityTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Nonvested Share Activity [Table Text Block]", "terseLabel": "Schedule of changes in the number of non-vested options to purchase shares of common stock", "documentation": "Tabular disclosure of the changes in outstanding nonvested shares." } } }, "auth_ref": [ "r73" ] }, "us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfOtherCurrentAssetsTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Other Current Assets [Table Text Block]", "terseLabel": "Schedule of other current assets", "documentation": "Tabular disclosure of the carrying amounts of other current assets." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table]", "terseLabel": "Property, Plant and Equipment [Table]", "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r9" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table]", "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]", "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r56", "r57", "r58", "r59" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "terseLabel": "Schedule of operating results and financial position data of the Company's reportable business segments", "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r56", "r57", "r58", "r59" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r421", "r423", "r426", "r427", "r428", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r450", "r451", "r452", "r453", "r454" ] }, "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]", "verboseLabel": "Schedule of changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units", "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year." } } }, "auth_ref": [ "r72" ] }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation, Stock Options, Activity [Table Text Block]", "verboseLabel": "Schedule of stock option activity under the Company's stock plans", "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value." } } }, "auth_ref": [ "r15", "r16", "r72" ] }, "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]", "terseLabel": "Schedule of unrecognized tax benefits", "documentation": "Tabular disclosure of the change in unrecognized tax benefits." } } }, "auth_ref": [ "r782", "r977" ] }, "us-gaap_ScheduleOfVariableInterestEntitiesTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfVariableInterestEntitiesTable", "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Variable Interest Entities [Table]", "terseLabel": "Schedule of Variable Interest Entities [Table]", "documentation": "Tabular disclosure of qualitative and quantitative information related to variable interests the entity holds, whether or not such variable interest entity (VIE) is included in the reporting entity's consolidated financial statements. Includes, but is not limited to, description of the significant judgments and assumptions made in determining whether a variable interest (as defined) held by the entity requires the variable interest entity (VIE) (as defined) to be consolidated and (or) disclose information about its involvement with the VIE, individually or in aggregate (as applicable); the nature of restrictions, if any, on the consolidated VIE's assets and on the settlement of its liabilities reported by an entity in its statement of financial position, including the carrying amounts of such assets and liabilities; the nature of, and changes in, the risks associated with involvement in the VIE; how involvement with the VIE affects the entity's financial position, financial performance, and cash flows; the lack of recourse if creditors (or beneficial interest holders) of the consolidated VIE have no recourse to the general credit of the primary beneficiary (if applicable); the terms of arrangements, giving consideration to both explicit arrangements and implicit variable interests, if any, that could require the entity to provide financial support to the VIE, including events or circumstances that could expose the entity to a loss; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; the significant factors considered and judgments made in determining that the power to direct the activities of a VIE that most significantly impact the VIE's economic performance are shared (as defined); the carrying amounts and classification of assets and liabilities of the VIE included in the statement of financial position; the entity's maximum exposure to loss, if any, as a result of its involvement with the VIE, including how the maximum exposure is determined and significant sources of the entity's exposure to the VIE; a tabular comparison of the carrying amounts of the assets and liabilities and the entity's maximum exposure to loss; information about any liquidity arrangements, guarantees, and (or) other commitments by third parties that may affect the fair value or risk of the entity's variable interest in the VIE; whether or not the entity has provided financial support or other support (explicitly or implicitly) to the VIE that it was not previously contractually required to provide or whether the entity intends to provide that support, including the type and amount of the support and the primary reasons for providing the support; and supplemental information the entity determines necessary to provide." } } }, "auth_ref": [ "r87", "r88", "r89", "r90", "r91", "r504", "r505", "r508", "r509", "r570", "r571", "r572" ] }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "terseLabel": "Schedule of expected amortization expense", "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets." } } }, "auth_ref": [ "r64" ] }, "us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Secured Overnight Financing Rate (SOFR)", "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap that has its variable-rate leg referenced to Secured Overnight Financing Rate (SOFR) with no additional spread over SOFR on variable-rate leg." } } }, "auth_ref": [ "r982" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r800" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r802" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Domain]", "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r242", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r268", "r274", "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r352", "r353", "r633", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r763", "r885", "r999" ] }, "us-gaap_SegmentExpenditureAdditionToLongLivedAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentExpenditureAdditionToLongLivedAssets", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Segment, Expenditure, Addition to Long-Lived Assets", "terseLabel": "Property, plant and equipment additions", "documentation": "Amount of expenditure for addition to long-lived assets included in determination of segment assets by chief operating decision maker (CODM) or otherwise regularly provided to CODM. Excludes expenditure for addition to financial instrument, long-term customer relationship of financial institution, mortgage and other servicing rights, deferred policy acquisition cost, and deferred tax assets." } } }, "auth_ref": [ "r256", "r760" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "auth_ref": [ "r272", "r273", "r669", "r670", "r671", "r725", "r727", "r730", "r732", "r737", "r738", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r751", "r768", "r791", "r948", "r999" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "SEGMENT REPORTING" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReporting" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Disclosure [Text Block]", "verboseLabel": "SEGMENT REPORTING", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r241", "r242", "r243", "r244", "r245", "r257", "r262", "r266", "r267", "r268", "r269", "r270", "r271", "r274" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Information [Line Items]", "terseLabel": "Segment Reporting Information", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative Expense", "terseLabel": "Selling, general and administrative expenses", "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc." } } }, "auth_ref": [ "r120" ] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation", "terseLabel": "Stock compensation expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r7" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period", "terseLabel": "Period to become exercisable", "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition." } } }, "auth_ref": [ "r780" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period", "negatedLabel": "Forfeited (in shares)", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period." } } }, "auth_ref": [ "r443" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value", "terseLabel": "Forfeited, Fair value (Per share)", "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event." } } }, "auth_ref": [ "r443" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period", "verboseLabel": "Awarded (in shares)", "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r441" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "verboseLabel": "Awarded, Fair value (Per share)", "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r441" ] }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsIssuedInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsIssuedInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "documentation": "The weighted average fair value at grant date of equity instruments other than options issued during the period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Issued in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Issued, Fair value (Per share)" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number", "periodEndLabel": "Outstanding, Ending balance (in shares)", "periodStartLabel": "Outstanding, Beginning balance (in shares)", "terseLabel": "Outstanding (in shares)", "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date." } } }, "auth_ref": [ "r438", "r439" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]", "terseLabel": "Shares", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value", "periodEndLabel": "Outstanding, Ending balance Fair value (Per share)", "periodStartLabel": "Outstanding, Beginning balance Fair value (Per share)", "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r438", "r439" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]", "terseLabel": "Weighted Average Grant Date Fair Value Per Share" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period", "negatedLabel": "Issued (in shares)", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period." } } }, "auth_ref": [ "r442" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value", "terseLabel": "Total fair values", "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash." } } }, "auth_ref": [ "r445" ] }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionExercisableWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionExercisableWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "documentation": "Share based compensation arrangement by share based payment award equity instruments stock option exercisable weighted average grant date fair value.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Stock Option Exercisable Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Grant Date Fair Value Per Share, Exercisable" } } }, "auth_ref": [] }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionOutstandingWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionOutstandingWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "documentation": "Share based compensation arrangement by share based payment award equity instruments stock option outstanding weighted average grant date fair value.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Stock Option Outstanding Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Grant Date Fair Value Per Share, Outstanding" } } }, "auth_ref": [] }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRatePeriodForMonthlyClosingPrices": { "xbrltype": "durationItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRatePeriodForMonthlyClosingPrices", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "documentation": "The period of monthly closing prices used for the estimated measure of the maximum percentage by which a share price is expected to fluctuate during a period. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Volatility Rate Period For Monthly Closing Prices", "terseLabel": "Period used for calculations" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r421", "r423", "r426", "r427", "r428", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r450", "r451", "r452", "r453", "r454" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant", "terseLabel": "Number of shares of common stock available for award", "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable." } } }, "auth_ref": [ "r71" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number", "verboseLabel": "Shares, Exercisable", "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan." } } }, "auth_ref": [ "r432" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price", "verboseLabel": "Weighted Average Exercise Price Per Share, Exercisable", "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan." } } }, "auth_ref": [ "r432" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value", "terseLabel": "Intrinsic value of the stock options exercised", "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares." } } }, "auth_ref": [ "r445" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period", "negatedLabel": "Shares, Forfeited", "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan." } } }, "auth_ref": [ "r436" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross", "terseLabel": "Shares, Granted", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r434" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Grant Date Fair Value Per Share, Granted", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r444" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value", "terseLabel": "Intrinsic value of outstanding stock options", "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding." } } }, "auth_ref": [ "r71" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number", "periodEndLabel": "Shares, Outstanding, Ending balance", "periodStartLabel": "Shares, Outstanding, Beginning balance", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r430", "r431" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price", "periodEndLabel": "Weighted Average Exercise Price Per Share, Outstanding, Ending balance", "periodStartLabel": "Weighted Average Exercise Price Per Share, Outstanding, Beginning balance", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r430", "r431" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number", "terseLabel": "Shares, Vested or expected to vest", "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r446" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price Per Share, Vested or expected to vest", "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r446" ] }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageGrantDateFairValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "documentation": "Weighted average grant-date fair value of options vested and expected to vest.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Grant Date Fair Value Per Share, Vested or expected to vest" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "All Award Types", "terseLabel": "All Award Types", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r426", "r427", "r428", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r450", "r451", "r452", "r453", "r454" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price Per Share, Exercised", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r435" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price Per Share, Forfeited", "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated." } } }, "auth_ref": [ "r436" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price Per Share, Granted", "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options." } } }, "auth_ref": [ "r434" ] }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Option and Incentive Plans Policy [Policy Text Block]", "terseLabel": "Share-Based Payments", "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost." } } }, "auth_ref": [ "r420", "r429", "r448", "r449", "r450", "r451", "r454", "r462", "r463", "r464", "r465" ] }, "agx_ShareBasedPaymentArrangementAveragePricePerShareOfSharesWithheldForTaxWithholdingObligation": { "xbrltype": "perShareItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ShareBasedPaymentArrangementAveragePricePerShareOfSharesWithheldForTaxWithholdingObligation", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "lang": { "en-us": { "role": { "documentation": "Average price of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "Share-Based Payment Arrangement, Average Price Per Share Of Shares Withheld for Tax Withholding Obligation", "terseLabel": "Share-based payment" } } }, "auth_ref": [] }, "us-gaap_SharePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharePrice", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Share Price", "terseLabel": "Share price", "documentation": "Price of a single share of a number of saleable stocks of a company." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage", "terseLabel": "Initial vesting percentage", "documentation": "Percentage of vesting of award under share-based payment arrangement." } } }, "auth_ref": [ "r950" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period", "terseLabel": "Incentive stock option award maximum expiration period", "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r781" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value", "terseLabel": "Intrinsic value of exercisable stock options", "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable." } } }, "auth_ref": [ "r71" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term", "terseLabel": "Weighted Average Remaining Contractual Term (Years), Exercisable", "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r71" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares", "periodEndLabel": "Shares, Non-vested, Ending balance", "periodStartLabel": "Shares, Non-vested, Beginning balance", "terseLabel": "Shares, Non-vested", "documentation": "Number of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Number of Shares", "negatedLabel": "Shares, Forfeitures", "documentation": "Number of non-vested options forfeited." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Grant Date Fair Value Per Share, Forfeitures", "documentation": "Weighted average grant-date fair value of non-vested options forfeited." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value", "periodEndLabel": "Weighted Average Grant Date Fair Value Per Share, Non-vested, Ending balance", "periodStartLabel": "Weighted Average Grant Date Fair Value Per Share, Non-vested, Beginning balance", "terseLabel": "Weighted Average Grant Date Fair Value Per Share, Non-vested", "documentation": "Weighted average grant-date fair value of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term", "terseLabel": "Weighted Average Remaining Contractual Term (Years), Outstanding", "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r140" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term", "terseLabel": "Weighted Average Remaining Contractual Term (Years), Vested or expected to vest", "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r446" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Number of Shares", "negatedLabel": "Shares, Vested", "documentation": "Number of options vested." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Grant Date Fair Value Per Share, Vested", "documentation": "Weighted average grant-date fair value of options vested." } } }, "auth_ref": [] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesOutstanding", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares, Outstanding", "periodEndLabel": "Balances (in shares)", "periodStartLabel": "Balances (in shares)", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation", "terseLabel": "Shares paid for tax withholding for share based compensation", "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_ShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermInvestments", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails": { "parentTag": "us-gaap_Investments", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Short-Term Investments", "terseLabel": "Short-term investments", "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current." } } }, "auth_ref": [ "r152", "r153", "r899" ] }, "agx_ShortTermRentalAgreementsExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "ShortTermRentalAgreementsExpense", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount short-term rental agreements expenses.", "label": "Short Term Rental Agreements Expense", "terseLabel": "Short-term rentals expense" } } }, "auth_ref": [] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r174", "r242", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r268", "r274", "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r350", "r352", "r353", "r633", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r763", "r885", "r999" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r14", "r32", "r172", "r198", "r199", "r200", "r211", "r212", "r213", "r215", "r221", "r223", "r240", "r314", "r315", "r392", "r459", "r460", "r461", "r490", "r491", "r510", "r511", "r512", "r513", "r514", "r515", "r517", "r533", "r534", "r535", "r536", "r537", "r538", "r549", "r651", "r652", "r653", "r667", "r720" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "auth_ref": [ "r272", "r273", "r669", "r670", "r671", "r725", "r727", "r730", "r732", "r735", "r737", "r738", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r751", "r768", "r791", "r948", "r999" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "terseLabel": "Statement", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r211", "r212", "r213", "r240", "r591", "r660", "r668", "r674", "r675", "r676", "r677", "r678", "r679", "r682", "r685", "r686", "r687", "r688", "r689", "r690", "r691", "r692", "r693", "r695", "r696", "r697", "r698", "r699", "r701", "r703", "r704", "r706", "r707", "r708", "r709", "r710", "r711", "r712", "r713", "r714", "r715", "r716", "r717", "r720", "r792" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED BALANCE SHEETS" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "srt_StatementScenarioAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementScenarioAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "auth_ref": [ "r224", "r419", "r880", "r881", "r911" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "terseLabel": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r211", "r212", "r213", "r240", "r591", "r660", "r668", "r674", "r675", "r676", "r677", "r678", "r679", "r682", "r685", "r686", "r687", "r688", "r689", "r690", "r691", "r692", "r693", "r695", "r696", "r697", "r698", "r699", "r701", "r703", "r704", "r706", "r707", "r708", "r709", "r710", "r711", "r712", "r713", "r714", "r715", "r716", "r717", "r720", "r792" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Price or TSR Estimation Method [Text Block]", "terseLabel": "Stock Price or TSR Estimation Method" } } }, "auth_ref": [ "r810", "r822", "r832", "r858" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Appreciation Rights (SARs) [Member]", "terseLabel": "Stock Appreciation Rights (SARs)", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture", "terseLabel": "Stock option exercises and restricted stock unit settlements, net of shares withheld for exercise price and withholding taxes (in shares)", "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r14", "r107", "r108", "r139" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "negatedLabel": "Shares, Exercised", "verboseLabel": "Stock option exercises (in shares)", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r14", "r107", "r108", "r139", "r435" ] }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture", "terseLabel": "Stock option exercises and restricted stock unit settlements, net of shares withheld for exercise price and withholding taxes", "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r74", "r107", "r108", "r139" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Stock Options Exercised", "terseLabel": "Stock option exercises", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r14", "r32", "r139" ] }, "agx_StockPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "StockPlanMember", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "n/a", "label": "Stock Plan [Member]", "terseLabel": "Stock Plan" } } }, "auth_ref": [] }, "us-gaap_StockRepurchasedDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedDuringPeriodShares", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Repurchased During Period, Shares", "negatedLabel": "Common stock repurchases (in shares)", "terseLabel": "Common stock repurchases (in shares)", "verboseLabel": "Common stock repurchases (in shares)", "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r14", "r107", "r108", "r139", "r662", "r720", "r733" ] }, "us-gaap_StockRepurchasedDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Repurchased During Period, Value", "negatedLabel": "Common stock repurchases", "verboseLabel": "Common stock repurchased", "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r14", "r107", "r108", "r139", "r667", "r720", "r733", "r798" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent", "totalLabel": "TOTAL STOCKHOLDERS' EQUITY", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r108", "r111", "r112", "r131", "r684", "r700", "r721", "r722", "r786", "r799", "r906", "r925", "r985", "r1003" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest", "periodEndLabel": "Balances", "periodStartLabel": "Balances", "documentation": "Amount of equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary equity." } } }, "auth_ref": [ "r84", "r85", "r92", "r172", "r173", "r199", "r211", "r212", "r213", "r215", "r221", "r314", "r315", "r392", "r459", "r460", "r461", "r490", "r491", "r510", "r511", "r512", "r513", "r514", "r515", "r517", "r533", "r534", "r538", "r549", "r652", "r653", "r665", "r684", "r700", "r721", "r722", "r734", "r798", "r906", "r925", "r985", "r1003" ] }, "us-gaap_SubsequentEventLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event [Line Items]", "terseLabel": "SUBSEQUENT EVENTS", "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event." } } }, "auth_ref": [ "r539", "r554" ] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event [Member]", "terseLabel": "Subsequent Events", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r539", "r554" ] }, "us-gaap_SubsequentEventTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTable", "presentation": [ "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event [Table]", "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued." } } }, "auth_ref": [ "r539", "r554" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r539", "r554" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event Type [Domain]", "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r539", "r554" ] }, "us-gaap_SubsequentEventsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsAbstract", "lang": { "en-us": { "role": { "label": "SUBSEQUENT EVENTS" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureSubsequentEvents" ], "lang": { "en-us": { "role": { "label": "Subsequent Events [Text Block]", "terseLabel": "SUBSEQUENT EVENTS", "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business." } } }, "auth_ref": [ "r553", "r555" ] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "SUPPLEMENTAL CASH FLOW INFORMATION" } } }, "auth_ref": [] }, "agx_SupplementalFinancialStatementInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "SupplementalFinancialStatementInformationAbstract", "lang": { "en-us": { "role": { "documentation": "Na", "label": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION" } } }, "auth_ref": [] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Tabular List [Table Text Block]", "terseLabel": "Tabular List, Table" } } }, "auth_ref": [ "r851" ] }, "agx_TelecommunicationsInfrastructureServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "TelecommunicationsInfrastructureServicesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsChangesInBalancesOfGoodwillDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "documentation": "Telecommunications infrastructure services.", "label": "Telecommunications Infrastructure Services", "verboseLabel": "Telecom Services" } } }, "auth_ref": [] }, "agx_TimeBasedRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "TimeBasedRestrictedStockUnitsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Time based Restricted Stock Units.", "label": "Time Based Restricted Stock Units" } } }, "auth_ref": [] }, "srt_TitleOfIndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "TitleOfIndividualAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]" } } }, "auth_ref": [ "r915", "r988" ] }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Domain]" } } }, "auth_ref": [] }, "agx_TotalAmountOfResearchAndDevelopmentTaxCreditsThatIrsAllowedToClaimPursuantToFinalSettlement": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "TotalAmountOfResearchAndDevelopmentTaxCreditsThatIrsAllowedToClaimPursuantToFinalSettlement", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "documentation": "Total amount of research and development tax credits that the IRS allowed to claim pursuant to a final settlement.", "label": "Total Amount Of Research And Development Tax Credits That The IRS Allowed To Claim Pursuant To A Final Settlement", "terseLabel": "Settlement offer from the IRS" } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Amount", "terseLabel": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r843" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Vs Peer Group [Text Block]", "terseLabel": "Total Shareholder Return Vs Peer Group" } } }, "auth_ref": [ "r850" ] }, "agx_TradeAndOtherReceivablesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "TradeAndOtherReceivablesDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivable" ], "lang": { "en-us": { "role": { "documentation": "The disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include trade accounts receivables. Includes disclosure for allowance for credit losses.", "label": "Trade And Other Receivables Disclosure Text Block", "terseLabel": "ACCOUNTS RECEIVABLE" } } }, "auth_ref": [] }, "us-gaap_TradeNamesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeNamesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Trade name", "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof." } } }, "auth_ref": [ "r81" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "auth_ref": [ "r871" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangements, by Individual [Table]", "terseLabel": "Trading Arrangements, by Individual" } } }, "auth_ref": [ "r873" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Financial Instruments [Domain]", "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms." } } }, "auth_ref": [ "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r308", "r309", "r388", "r391", "r516", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r629", "r889", "r890", "r891", "r892", "r893", "r894", "r895", "r920", "r921", "r922", "r923" ] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "auth_ref": [ "r874" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "auth_ref": [ "r875" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r873" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "auth_ref": [ "r873" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Securities Aggregate Available Amount", "terseLabel": "Aggregate Available" } } }, "auth_ref": [ "r876" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "auth_ref": [ "r874" ] }, "us-gaap_TreasuryStockCommonMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonMember", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Treasury Stock", "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r69" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Shares", "terseLabel": "Treasury stock, shares", "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r69" ] }, "agx_TreasuryStockPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "TreasuryStockPolicyTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for treasury stock.", "label": "Treasury Stock [Policy Text Block]", "terseLabel": "Treasury Stock" } } }, "auth_ref": [] }, "agx_TreasuryStockSettlementOfStockOptionExercisesAndOtherShareBasedAwards": { "xbrltype": "sharesItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "TreasuryStockSettlementOfStockOptionExercisesAndOtherShareBasedAwards", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "lang": { "en-us": { "role": { "documentation": "Number of treasury stock used to settle stock option exercises and other stock share based awards.", "label": "Treasury Stock, Settlement of Stock Option Exercises and Other Share Based Awards", "terseLabel": "Treasury stock to settle stock option exercises and other share-based awards" } } }, "auth_ref": [] }, "us-gaap_TreasuryStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockValue", "crdr": "debit", "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Value", "negatedLabel": "Less treasury stock, at cost - 2,585,769 and 2,386,699 shares at January 31, 2024 and 2023, respectively", "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury." } } }, "auth_ref": [ "r31", "r69", "r70" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "US", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentByGeographicAreaDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "United States" } } }, "auth_ref": [] }, "us-gaap_USTreasuryNotesSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "USTreasuryNotesSecuritiesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "lang": { "en-us": { "role": { "label": "US Treasury Notes Securities [Member]", "terseLabel": "US Treasury notes", "documentation": "This category includes information about negotiable debt securities issued by the United States Department of the Treasury which generally have maturities of one to ten years, are interest bearing, and are backed by the full faith and credit of the United States government." } } }, "auth_ref": [ "r998" ] }, "us-gaap_USTreasurySecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "USTreasurySecuritiesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "US Treasury Securities [Member]", "terseLabel": "U.S. Treasury notes", "documentation": "This category includes information about debt securities issued by the United States Department of the Treasury and backed by the United States government. Such securities primarily consist of treasury bills (short-term maturities - one year or less), treasury notes (intermediate term maturities - two to ten years), and treasury bonds (long-term maturities - ten to thirty years)." } } }, "auth_ref": [ "r756", "r774", "r776", "r998" ] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Underlying Security Market Price Change, Percent", "terseLabel": "Underlying Security Market Price Change" } } }, "auth_ref": [ "r870" ] }, "agx_UnfavorableTaxExpenseImpactFromIrsTaxSettlement.": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "UnfavorableTaxExpenseImpactFromIrsTaxSettlement.", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount of unfavorable tax expense impact from the IRS tax settlement.", "label": "Unfavorable Tax Expense Impact From The IRS Tax settlement.", "terseLabel": "Unfavorable tax expense adjustment" } } }, "auth_ref": [] }, "agx_UnrecognizedIncomeTaxBenefitsRelatedToResearchAndDevelopmentCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "UnrecognizedIncomeTaxBenefitsRelatedToResearchAndDevelopmentCredits", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents unrecognized income tax benefits related to research and development credits.", "label": "Unrecognized Income Tax Benefits Related to Research and Development Credits", "terseLabel": "Unrecognized income tax benefits related to research and development credits" } } }, "auth_ref": [] }, "us-gaap_UnrecognizedTaxBenefits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefits", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesUnrecognizedIncomeTaxBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits", "periodEndLabel": "Unrecognized Tax Benefits, end of fiscal year", "periodStartLabel": "Unrecognized Tax Benefits, beginning of fiscal year", "documentation": "Amount of unrecognized tax benefits." } } }, "auth_ref": [ "r467", "r475" ] }, "agx_UnrecognizedTaxBenefitsContractAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "UnrecognizedTaxBenefitsContractAssets", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesUnrecognizedIncomeTaxBenefitsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of contra assets recorded for unrecognized tax benefits.", "label": "Unrecognized Tax Benefits Contract Assets", "verboseLabel": "Gross unrecognized income tax benefits" } } }, "auth_ref": [] }, "agx_UnrecognizedTaxBenefitsContractAssetsReduction": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "UnrecognizedTaxBenefitsContractAssetsReduction", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of reduction in contra assets balances of unrecognized tax benefits", "label": "Unrecognized Tax Benefits Contract Assets, Reduction", "terseLabel": "Contract Assets" } } }, "auth_ref": [] }, "agx_UnrecognizedTaxBenefitsDecreaseResultingFromResearchAndDevelopmentTaxCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "UnrecognizedTaxBenefitsDecreaseResultingFromResearchAndDevelopmentTaxCredit", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of decrease in unrecognized tax benefits resulting from research and development tax credit.", "label": "Unrecognized Tax Benefits, Decrease Resulting from Research And Development Tax Credit", "terseLabel": "Development tax credit" } } }, "auth_ref": [] }, "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesUnrecognizedIncomeTaxBenefitsDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits, Decrease Resulting from Settlements with Taxing Authorities", "negatedLabel": "Settlements", "terseLabel": "Adjustment to its liability for uncertain income tax positions", "documentation": "Amount of decrease in unrecognized tax benefits resulting from settlements with taxing authorities." } } }, "auth_ref": [ "r478" ] }, "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesUnrecognizedIncomeTaxBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions", "terseLabel": "Increases related to current period income tax positions", "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return." } } }, "auth_ref": [ "r477" ] }, "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesUnrecognizedIncomeTaxBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions", "terseLabel": "Increases related to prior period income tax positions", "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns." } } }, "auth_ref": [ "r476" ] }, "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesUnrecognizedIncomeTaxBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations", "negatedLabel": "Expirations of statutes of limitations", "documentation": "Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations." } } }, "auth_ref": [ "r479" ] }, "agx_UnrecognizedTaxLossBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "UnrecognizedTaxLossBenefit", "crdr": "credit", "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount of unrecognized tax loss benefit.", "label": "Unrecognized tax loss benefit", "negatedLabel": "Unrecognized tax loss benefit" } } }, "auth_ref": [] }, "us-gaap_UnusualOrInfrequentItemAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Unusual or Infrequent Item, or Both [Axis]", "documentation": "Information by an event or transaction that is unusual in nature or infrequent in occurrence, or both." } } }, "auth_ref": [ "r125" ] }, "us-gaap_UnusualOrInfrequentItemDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Unusual or Infrequent Item, or Both [Domain]", "documentation": "Event or transaction that is unusual in nature or infrequent in occurrence, or both." } } }, "auth_ref": [ "r125" ] }, "us-gaap_UnusualOrInfrequentItemLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Unusual or Infrequent Item, or Both [Line Items]", "terseLabel": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_UnusualOrInfrequentItemNetGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemNetGainLoss", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Unusual or Infrequent Item, or Both, Net (Gain) Loss", "terseLabel": "Total amount of fraud loss and professional fee recovered", "documentation": "Amount of (gain) loss for an event or transaction that is unusual in nature or occurs infrequently, or both." } } }, "auth_ref": [ "r125", "r251", "r498", "r903" ] }, "us-gaap_UnusualOrInfrequentItemTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemTable", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Unusual or Infrequent Item, or Both [Table]", "documentation": "Disclosure of information about the nature and financial statement effect of an event or transaction that is unusual in nature or infrequent in occurrence, or both." } } }, "auth_ref": [ "r125" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "lang": { "en-us": { "role": { "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of Estimates", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r53", "r54", "r55", "r160", "r161", "r163", "r164" ] }, "us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ValuationAllowanceDeferredTaxAssetChangeInAmount", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "lang": { "en-us": { "role": { "label": "Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount", "documentation": "Amount of increase (decrease) in the valuation allowance for a specified deferred tax asset." } } }, "auth_ref": [ "r482" ] }, "agx_VariableInterestEntityDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "VariableInterestEntityDisclosureAbstract", "lang": { "en-us": { "role": { "documentation": "No definition available.", "label": "VARIABLE INTEREST ENTITY" } } }, "auth_ref": [] }, "us-gaap_VariableInterestEntityDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableInterestEntityDisclosureTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntity" ], "lang": { "en-us": { "role": { "label": "Variable Interest Entity Disclosure [Text Block]", "terseLabel": "VARIABLE INTEREST ENTITY", "documentation": "The entire disclosure for a variable interest entity (VIE), including but not limited to, judgments and assumptions in determining whether to consolidate and in identifying the primary beneficiary, gain (loss) recognized on the initial consolidation of the VIE, terms of arrangements, amounts and classification of the VIE's assets and liabilities, and the entity's maximum exposure to loss." } } }, "auth_ref": [ "r145" ] }, "us-gaap_VariableInterestEntityLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableInterestEntityLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureVariableInterestEntityDetails" ], "lang": { "en-us": { "role": { "label": "Variable Interest Entity [Line Items]", "terseLabel": "Variable Interest Entity", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r504", "r505", "r508", "r509", "r570", "r571", "r572" ] }, "us-gaap_VariableRateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Axis]", "documentation": "Information by type of variable rate." } } }, "auth_ref": [] }, "us-gaap_VariableRateDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails", "http://www.arganinc.com/role/DisclosureSubsequentEventsDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Domain]", "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index." } } }, "auth_ref": [] }, "us-gaap_VehiclesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VehiclesMember", "presentation": [ "http://www.arganinc.com/role/DisclosurePropertyPlantAndEquipmentNetSummaryOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Trucks and Other Vehicles [Member]", "terseLabel": "Trucks, trailers and other vehicles", "documentation": "Equipment used primarily for road transportation." } } }, "auth_ref": [] }, "agx_WarrantyPeriodForConstructionContracts": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "WarrantyPeriodForConstructionContracts", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to warranty provisions covering defects in equipment, materials etc.. after the completion of construction.", "label": "Warranty Period for Construction Contracts", "terseLabel": "Warranty period" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "calculation": { "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted", "totalLabel": "Weighted average number of shares outstanding - diluted", "verboseLabel": "Diluted (in shares)", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r227", "r235" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]", "terseLabel": "WEIGHTED AVERAGE NUMBER OF SHARES OUTSTANDING" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "calculation": { "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic (in shares)", "verboseLabel": "Weighted average number of shares outstanding - basic", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r226", "r235" ] }, "agx_WeightedAverageRateDepositCertificatesOfDeposit": { "xbrltype": "percentItemType", "nsuri": "http://www.arganinc.com/20240131", "localname": "WeightedAverageRateDepositCertificatesOfDeposit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "documentation": "Weighted average interest rate for certificates of deposit liabilities in banking offices.", "label": "Weighted Average Rate Deposit Certificates Of Deposit", "terseLabel": "Weighted average annual interest rates of CDs (as a percent)" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-15" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(g)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "825", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-1" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11B", "Subparagraph": "(c)(2)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(2)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c),(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "SubTopic": "30", "Topic": "350", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-3" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "b", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "SubTopic": "10", "Topic": "320", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-8" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "60", "Paragraph": "1", "SubTopic": "10", "Topic": "820", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482053/820-10-60-1" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29,30)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "25", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-16" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-21" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "((a)(1),(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-15" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-16" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-4" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "5A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-5A" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-6" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-9" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "55", "Paragraph": "4I", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4I" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205/tableOfContent" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 201.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 201.5-02(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 201.5-02(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7(a),(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483613/220-20-50-1" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//275/tableOfContent" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r134": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//360/tableOfContent" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r136": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r138": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r140": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(e)(1)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r141": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "12", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r142": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r143": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "9", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r144": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r145": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//810/tableOfContent" }, "r146": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r147": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r148": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r149": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r150": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r151": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r152": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r153": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r154": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(13)(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r155": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r156": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r157": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.11)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r158": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-8B" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-17A" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-11" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-2" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-11" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2A" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-9" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-9" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481664/323-10-45-1" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-11" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-14" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-16" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-5" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479130/326-30-45-1" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-3A" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-4" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-7" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-9" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479483/340-40-50-3" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350-20/tableOfContent" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-2" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350-30/tableOfContent" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-3" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(n)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "70", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.C.Q3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.1.Q5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.2.Q6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.3.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-10B" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482551/740-270-45-3" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-5" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6A" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//830/tableOfContent" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481839/830-10-45-9" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482014/830-20-35-3" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-12" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-2" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-2" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-1" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481435/852-10-45-14" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//855/tableOfContent" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481444/860-30-45-1" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(b)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481420/860-30-50-1A" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(b)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481420/860-30-50-1A" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481420/860-30-50-1A" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481420/860-30-50-7" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(4)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20" }, "r597": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28" }, "r599": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "33", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "33", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "35A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "35A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(1)(h))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r657": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-1" }, "r659": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-2" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r661": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r664": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r665": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r675": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r676": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r677": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r678": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r679": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r680": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r681": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r682": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r683": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r684": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r685": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r686": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r687": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r688": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r689": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r690": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r691": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r692": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r693": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r694": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r695": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r696": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r697": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r698": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r701": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r702": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r703": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r704": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r705": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r706": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r707": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r708": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r709": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r710": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r711": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r712": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r713": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r714": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r715": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r716": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r717": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r718": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r719": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r720": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r721": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r722": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r723": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r724": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r725": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r726": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r727": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r728": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r729": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r730": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r731": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r732": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r733": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r734": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-3" }, "r735": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r736": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2" }, "r737": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r738": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r739": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r740": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r741": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r742": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r743": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r744": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r745": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r746": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r747": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r748": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r749": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r750": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(a)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r751": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r752": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r753": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r754": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r755": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r756": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(ii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r757": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r758": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r759": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r760": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "48", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482785/280-10-55-48" }, "r761": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A" }, "r762": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479081/326-30-55-8" }, "r763": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24" }, "r764": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B" }, "r765": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C" }, "r766": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r767": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r768": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r769": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r770": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r771": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r772": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r773": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r774": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r775": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r776": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r777": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r778": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r779": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8" }, "r780": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r781": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r782": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "217", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482663/740-10-55-217" }, "r783": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J" }, "r784": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4K", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4K" }, "r785": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53" }, "r786": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10" }, "r787": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2" }, "r788": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F" }, "r789": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r790": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r791": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r792": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r793": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r794": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r795": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r796": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r797": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r798": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11" }, "r799": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r800": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r801": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r802": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r803": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-K", "Number": "249", "Section": "310" }, "r804": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Number": "249", "Section": "220", "Subsection": "f" }, "r805": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r806": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r807": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r808": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r809": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r810": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r811": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r812": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r813": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r814": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r815": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r816": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii", "Section": "6" }, "r817": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Number": "249", "Section": "240", "Subsection": "f" }, "r818": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r819": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r820": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r821": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r822": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r823": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r824": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r825": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r826": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r827": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r828": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r829": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r830": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r831": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r832": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r833": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r834": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r835": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r836": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r837": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r838": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r839": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r840": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r841": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r842": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r843": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r844": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r845": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r846": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r847": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r848": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r849": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r850": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r851": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r852": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r853": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w" }, "r854": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r855": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r856": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r857": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r858": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r859": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r860": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r861": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r862": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r863": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r864": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r865": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r866": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r867": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r868": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r869": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r870": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r871": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r872": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r873": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r874": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r875": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r876": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r877": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r878": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r879": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "405" }, "r880": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-10" }, "r881": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-3" }, "r882": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "SubTopic": "825", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r885": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r886": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r887": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Topic": "321", "Publisher": "FASB", "URI": "https://asc.fasb.org//321/tableOfContent" }, "r888": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Topic": "325", "Publisher": "FASB", "URI": "https://asc.fasb.org//325/tableOfContent" }, "r889": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r890": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(1)", "Publisher": "SEC" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(2)", "Publisher": "SEC" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(3)", "Publisher": "SEC" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r898": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r899": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r900": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r901": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r902": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r903": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483614/220-20-45-1" }, "r904": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r905": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r906": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r907": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r908": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r909": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r910": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r911": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r912": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r913": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18" }, "r914": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r915": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-13" }, "r916": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//320/tableOfContent" }, "r917": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-1" }, "r918": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r919": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r920": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-9" }, "r921": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r922": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r923": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r924": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r925": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r926": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r927": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r928": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r929": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r930": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r931": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r932": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r933": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r934": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r935": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A" }, "r936": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r937": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10" }, "r938": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r940": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r941": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r942": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r943": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r944": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r945": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r946": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r947": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r948": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r949": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r950": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r951": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r952": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r953": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r954": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r955": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r956": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r957": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r958": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r959": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r960": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r961": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r962": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r963": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r964": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r965": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r966": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r967": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r968": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r969": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r970": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r971": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r972": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r973": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r974": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r975": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r976": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r977": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r978": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r979": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6" }, "r980": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r981": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r982": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "6A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480682/815-20-25-6A" }, "r983": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r984": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r985": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r986": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4" }, "r987": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r988": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2" }, "r989": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r990": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r991": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r992": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r993": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r994": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r995": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r996": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r997": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r998": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480832/942-320-50-2" }, "r999": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B" }, "r1000": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r1001": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r1002": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r1003": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r1004": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r1005": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" } } } ZIP 107 0001558370-24-004979-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-24-004979-xbrl.zip M4$L#!!0 ( ^"BUA!FKC3J!H & 4 0 0 86=X+3(P,C0P,3,Q+GAS M9.U=6W/C-K)^WZKS'W#\LMFJR);MF22>RF1+EN@9U=J2(LF3Y&D+(B&)68I4 M -*V\NM/-W@1*9+@17*&WL.J7"RR@>[&UP"Z<6G^^,^7C46>&!>F8W\\NSSO MGA%FZXYAVJN/9YZ[[/QP]L^?_N=O/_YOI_/K[?2>&([N;9CM$ITSZC*#/)ON MFLR=[9;:Y(%Q;EH6N>6FL6*$7';/WY]WSW\@G;01!;#1D@0Q%Y#F]KBP\N"6X8;<<2?YPY? :?N^PO_ M94AJF?9_$J+%B:\O\/4"FBZJ.47_?"VI+V]N;B[DVY!4F'I2 L'T\Y7S= $O M4.?KN+2F0@;3%BZU]4@&W?%LE^^R*P]>)ACH'N=@6GDE@K>)(I[HK"C=1B66 M5"RD1,&+0V)WMV4BDUJ^29"S%WV=+0J^29 *=\MS&A'>)$AM:NHBFU:^2M;+ MW3R1HU=)C(21A3K@Z@Z;OEZ2K MES+])&A'V]M<91GY51=:TF6V,!<6ZR 9X]2%849TKG"8":1D6\YT[/NYMG=S MP1V+7>PI8XCCFVS$Y9M$ZW&VS.7QW06\W7NP"F'!&B5TDC=;E" M3W@;&1)SBQH$2/:M:&8;';Q(VB=;E6GK@"PRB.(1,6J/S)8XL&*SV(H[A^.- MH6PY8]]RVEXS^!9SA2?\ 6GT-/)/C'XW28W_<)U-[\44 V=#33L 29P1$U2L5B24+I3/8$O3-J4F,+UTNZ1#]A7" MC[!. I42OU:"U1*_7A)6_./%874'C#QP#L;V3_)OZ.L"9EC9@-CC@L(!B:*@ M3BW=LZJ7VXN56RQX&.)U%(K0:*[T(?HP(#J6:6!_BQZ*\5*C'$JL @3+DRO0 M@PXFT8O*P=_]\6@VOA\.>G-M0&9S^-^#-IK/R/B.:+WI:#CZ-&MQ*\+MEEHX M5,W6C+DJP))T2J2NU$C=]NY[H[Y&9I\U;=XB5*EG]:E8WUG.<]FNM:=7(O:N M2M_J]V:?R=W]^)<6N^RY#1L=_]7^\,PG:B$2,+T,[2:Z M.E4H$'[7O>Y>'Z-/P]EXCO=E,DR '; @X/>Z:D9 9<98D9->"7Q5\9[-U;'\D/GQ7%OT2 M513 G^KXF?!'?!#Q/2?BLVJAKPC]'8K![LTG9NQ?W7DND/8V#G?-/Z5R&# : MGL5*6D/-6@L,Y+J,@?BLB>0=MP^?.XFS)R'_UFH*K&;"G2WC[FX"@ZT+$SQ. M]UN<:$?,G7F;#>6[\3*7*,=H3E.ITF:^3\\ID^EXHDWGOWU+)N#>SZ4;@6[% M!+V(;\E(FZ.'Z;/'(284 .A1! )Q.(F$: VGR,5T-AO3=\G\#O@ SZ+7VLF6VR'<<:M6BA/\J*Y M ]#(O/>KEG8B V9_%\1G1X ?"1BV?;^\&1R"-66Z8^NF94IUB@V@7/D"Z#." MB 3T&1 G^;2(ET<\])_'2T1MN60Z=MXY@][%P7T:F/ (=YR9F*^I^XD^L:DI MV-P9,'C.F0&E"H+,UV-58$??%=A1%#K "*-R1=)_@R%(C&IB MB$92+H&#$ M=4@HFBS?AJ^EC ]" ]\H)HS/UI3GS2NY=$K8K],S!\8# ?00-I#9Y]Y4:U$J MVC3UMEO_] ZU(!ZG,+I2*UJU']I+AV^D.F-WS7A?'DMQE2/!"6I4(O]#&OG9 MXV1R+W<3>O?D;CCJC?I#^"O:8P"SN!M/'WKSX7@$Y)(Q"3BWW?G$AM+3=>XQ M(YBRC[:2G.H*3"3E6U0TD8!KZ'BTYI%C'L'QQ_#_N.ICNZ:[BP$8(%^&4KFA MV+V11RW" Y>Q/^4ZCZR,Q&IK@:JT3S^A.!JNF6N"2F4W[9.%"G;PWY??P2?? M)&IN.UVE'?V9Z^C_63N6P;C ]4]W5W)K/Z.@$M/K*GO\L_FX_Z_/X_N!-IW] M7:[CSG]K<>L)TV8"-^MOJ3 %+K3O&^)P7JU25('M9?@H_+Q M#36<&?%2N<,:+7Z9^(&#B(?ZQ93I#/!86.P0L P*)4+OTPCU^OWQ(V(RU?H: M '1[K[5PE-HK+]KU5D-1YGQ+"T3E[>(92(61-_VJL[:B M%H1(+I@[ Z-GJ?;/H%#!<-E-PW"O?>K=8[@TA^Z@0:?06CCRKO5 4"IORN+N M+[-%9MR30Z6$)2/$D4%J!P(9"%^AITRTT:R-8DIM,"HV!-4H%)P!:%N^W.Y: MX;::&H62^VDM&KG1_,!\,@UF&QB6XP3MV'),FK*MQ_4UC$R9(7V)4DK^:,;!).3QVG_,XQQ;>?*AO,+Y28&[! U,E#:]3<7 M#N'+H5+"E1'D?^E-AQC98XBI3;79G(!OUJZ-YG8U>:.6<7"_=- XN$.?ZEK9 M5$IL,J+^_B-TF0<8_,!1ZP,L4^D,M-TFQU-C*XQ)8.S"@_OV*N6C';Y7PI$1 MX\^T3W*O%D:P\10=YQ:(G+WZA6!_>*"L]I05/Z;>*X'("")GC[='Q$+[ MTH:2I]C(F3B6F15KUJE" 2=XV^G#$;4V=L@W(;]V>[;F'L\QT9'NOH #Z*7MBML?$'7Z*7TQW':[P M"J"EJQ7'%)T2W;!$CB4<7Z'2,#)V,Z>X1/8(T^3==/P@M_RGO3YXG;\,YY^C M%>:97RK&&.\GAJQ;,SG>3&J;0SG84XMJ)6%OD3T6V2G#O*HP'3_*:$-@!EYP MH>1%(%MGXX5E^CVJO@U49U%@+2F?H/0@$8E"8K*0F# D)DUK77^I=G<.GP'!C.D>!TES M?=43U%A@"W4WB3HD8MV!P:"#S,F>>VLK18?NJYQJ4<:ND"N) ML<6/W% 2L2:2=VLEE2^9Y<"?3ZC$M=R5LQ:FBEO"/<.08F#'B](1E$S'JBRK M!/.[[KLR25?W#.+)$N!%B_)K)E:]W7UBSHK3[=K4>YS15TFTFL=$:3??IY[$(RM7:VA&V-I ??O(SX 7I:>39<>&.EP\0KKD,YU]\-F5;< OR M7(97X5%@:76.2D")F#11*D"T,10([2\FDGP>"-6:69VKGWD>IHI6"7OIBZ M M7N6/Q91^H=A95!&^BK8 +>61I@[9U]Z&YAJG6R, IT>KIK/IGN[M$V\"J7GVA3)J M"D4@'LH0RVTNQ2"^'&U_/X4A^5^B&MHC;[-@?+P<.?87)ER02S:RF#N3X+JM M/'CGI[4/[^+6,["3L"PPO'26TU*&YXN&G^7RA<-G(%['ER\P/(%YKT,1B2]C MD()_@]_CD3;:FN5)S'(*#<]-769CA */(&O-8:U,C05&5?X4=HY1\8@W$=)* M/.3>VDHM6ZFREERCA@);2#FG"EO(65AN82]]5G_$W/%6?A7>7MT[0O0A@MLM M:.X,5*6H$NBB\_T= O63B %!#B1BT4)<'F(8EQF%.;5G&P/VQ"Q'KKC"JSYG M1OZH7Z.& L S]HH2@(=LY'IJC)'\ D; J@6^PO=7'(MRS69\M9MPYW?\ D@ M&,^"'WY7NX6FJ+3"1[PM,1/(F/G,2&8.T-5'(%J MA95FD/&1Y\S[18GYWVR!/G'J*,4!L?*%E4 ?ETBJA;E62JD<6-7$2A@K))AJ M,:N5:BJO*RJ)E9B53SS50E;Q'F=>I)Q#IH2I3$*J%J"3?4:JRL+'22I5@O]# MQKI8Q4]*M>LCI\AEEFL"V61*4,MD-FL!.OH*5?6K4.JLYK7OV+8(EK^,4.J& M@1JG\M<&6F".FRQK3XCJS(]'?FJS1;7F@)F=?:1T.06FUT?;,]U9V>:?S(@>!X=O M2VS/EBI>L/'VOF#C+NE<=:\@)+F^_#=H>OZRL4(*UW0M*!9/ D90(O$MH59$A3(D M#.IEP:USAZ\NKKK=:]^B#ILPD"ZL@G(]56I;=)&A]CU=,*NF MQA:6?15E?[QX$<8'NMWB_C$^"A[8MN-W*?D,'X'6#G>)33=,;*F^9RKE%4P_ M7SE/%TPW0.ZKZS,B]#7;T'M'E]7XU"*/'/_ !KP^!U:!=Z\MZ4A@NOT##1(VN.E#7]65^,Q25 ME+]%-1 "O=[+7X9;NB'" M@"[VLC<./W$!LS^#&C''.+\T0IE. &,;C\[G@Y M2C9 3 :W#O\E%0M9D2\.N($4CF N&[*J-0O$CXXP@)< 05WJ+VZ ME,[DS/^:6[C=,<__N MN7AYW=3#TV?!'9I[+OA3 K[\:PDK6G)K$8?SUSNP4#J3[,P.G7D M:/3!<# EVA#B?/1'03=O(6!2]5"S3]SQMA_/4"WS U2Z.2,4WN(Z75B=_PYF M0-,QYG[5'@^6_(_#HZEH[6 T-MJQ7)5-J7 M=>/ H$#YKK3*:17]Z<4-7RVHA9/-QS-='B-5*N[H,G\0IB>09V#B>[E!TT8: MEZ-5J(K7%NS57X2M+_2=!S&["U'> ]77ILWX+IZ)(33*L#G*49_89 ];K(Z: MG]AF0R?.,^.SG0 NXE"S7((&*O- ?W=XN.8^MMFA+GGOFZ[*',('M3()BL:K M\^RHE=F_;Z JX;7!A,ABKTK>^_AXADE15HS7T&-)+7$B162G'MH&B,AW,\:? M3)VENK^2J('HS,"C,3R+C9>9B>4A.F8H7PRO\B5.."/]!:K*K8?2:@;4-50T MW ]K>,]U;R$;ZI64QQJZ2:R\@ MMBE0ME^8N5J#M]E[8IRNV"=,T#& J"_:$(RUY-<7Y;#C;8/;!*\YH$2^XE\* MT=ASD:T!EOBU(:HF2B,AFL-/W=EL/-OT0SX!KCBG?N0A3]]FSP)5RS5J8DB/ M@'>X,,SNS2= $#<(@Z5B_\EAWL?;G3^36S08)>?LQ;VUP"S.4@/QZ2HN"';= MD/2(X*]4FZ'Y8Z*+9,2>?MS$X'S.J8&9\,;NFO%] E:QW\%+05FM2$- VN]P M/U 7\SSO)K*&4"G%>T7,'7)^9>&SET-R4R"&V*A74\H4;^K*RCYY52R+\,&* M2@%-4U92]@:*%V]@#(S-IB(YHJA)FCBZU/8Q(B8'!3* M^CDB=U'74^XIE*8^W4AVRFS4+&YDZW6 M@9F".3@YRYD PQ5@VCV63\7I*V01UCRI:>G_=DPC'COQ$[AYWJ M 07$7W7P3RW"%OKDJ4VRA/N=?MO$4;[O'S.2'DA2C0P?<'J?!EPB0K%?KZ/6XD8W##3_$YYN!#"5#"\@P<,^<0$P@JO:GDDD'E M4BI%F6YNJ/6ZT1".=U?=J^Z!-W7XM(F&N(]:\$C B[GQ-G[*7K"G.>4KYH8' M!OS'F@IVKQ1L0] QC(H58]-POF_HQ8,6%#PP!MN628,'Q_V0C7&*;@ MO-BZ:?D?QQDY$-_(H!44"%P^[04ZE]!>F.YAZ<3JG8R)PK9Y309-=21CZ_I^ MY"L_<1);XL_8 ,@E;*CA9.]=3'&Y:KQ\% =+ Z6IF^KRXDF:\=)WS>^H+E>7 MH^\[N.'"C:.A$![Z,K[G5N*TQJE/L!PO4/'T M7>TX23V(IA!O/Z,ZZA5MHIW.S4U9IGM_*?'FDV54YE'5HHD5GJ_U8 M!@=-Y"#W!K(Z5!#L##S"FTZ S-B> M@H*!DD'X6-X/"Z,)<.&J%3H MC=A#3]>!@Q%<.D441=\#6[=C!J"B:8J:18 '.APNB^3IFDOW5O3-2=&><4XR MU+Q\B2/.R[S&6!_?(HUMCH9')_P.&1V6..9KZ@ZYZ%F6\XQ-T+>HN9EX7. IH+F#:1NMO=<5NX;T MFDS>3L]'RPM#T?$A]$MU%T>@(2:;?=DK=A[OI%5+-L7XBL;]\I\92$W^ M-8HVS NXX]3#ZV>V:^WPF(D>K4VGLE044C8PH.T]45-6>N?P&;78C.EXAPEO M^3@0L.]B%[(B5[9\D4.%J]_9.JKKYPZG7.8?WOD7[?+T5%,U5+4@SMBOKOIS M9/BQK/VENU1H4J9(4T:L@D$\S @;?@:NRAY)=.[@B#H:V,\';.'N.^IA%P[N MY^#.G(BN,>+ U3*YZ8Q_)Y(TT]&P-)C5G M?#.5?G-O!<++[=$@J(AGXBBB?"MQ5_R+GH!EPO=*AQ7EJ!L62:B$SG _2Y(W MU ]-B!O?XTEGY6$BW./8'_^1^\4BQQ>O7]VK[CC7:*6"J477_3U29H! 0N;8 MIQ;.-7AV]Y:!/XI+#;VERW@XA:]!\M6ZBD]V'),W,J2>M@UP3@G:H)*K<"R; M-]+8!\O5OG)R@39W23M!TY@YJ]INKYA0T\C;U0U>OAG5_F5:W''<8&_V,#C. M?MO L%<#AAOL<&A@L> ^^;@QJ!2M:\3%]N\4@7WA]]&XH-9X.6*N'%@ EV W MA,M+1Q/.GDS'$SBHY+5"_>K>2NO5'9SQG,JK3[:EF#1E_"\://;7JO9W_O"4 MIV-+=RWT:L.EM5@^U*H%#X>N7N,<8?H0^_Z(>W F75[]"[4(#U'BE?0U MLPQY]^Q%_G(L[)'[4[]9.1A?@4E&JU8[#M\H9SF[:YWF_ MX"(#[@6;0GXE8>IG]3GP<9!6",8.\RVF7V=#X][:EUR"JRQ?Y.?K,*E> MD"ML[N"COSA1ZRF%:8K!%_E6):Z!]HS?O>!CA] 2H)Y_GAF&!O@'6L(>.98( M+W]6N*WXF\ED[Z%E[BBST4.[9EC4:[9C*]VX<=)8KN2M4J_E;:):>)? M?X$^=.NY(\?]C;G).+($:6.TCDTJ_C?,_$_@_/1_4$L#!!0 ( ^"BUC. M<_(MSXKJ2_[Y5 M^S]XLQ]VM^HDX9'))%,S]Y9#R Q5!%A@SCGWTRG'%L'G&HN5;1+.7[\M/XB- M+5LR!@NX5>=!0(_^=;=:+:G5^OKW]X6EK!!Q3&Q_NVA>-2X49.O8,.W7;Q>> M_/UO__YO7__C\O+WAW%?,;#N+9#M*CI!FHL,Y:K3PC M0DS+4AZ(:;PB16DVKCY=-:[NE,O+L(T'S8$ZV%;\QEI7SM6HW6CW'UI-+XTV\KH>5/P&>B;F84E+=/^YQ?ZGQ?H4@&@MO/EW3&_7WJK7V%R2O4;S2O?W_N3_0Y6FB7INVXFJVC"P7*?W'\+_M8UUR? M2['J[R_$BAIH7V_Z8I:@?UU&Q2[I5Y?-UF6[>?7N&!PFB-/*JP<_ZE8X7U[3 M4"#U_N@_4&S*%\F:FDOU,89T]&<^9.% MWZIC=:S%7:E_-!W=PHY'$&V4_MO]/\]<:1;M2;6-GKU"CNOW&_OXB%S-M+@! M[=A)=1A[-@RN5_/%0JKC@/0[<_@30:>A3@!OOV-LO(&A+0VQ3!][1(@72VP' M:K/]6W40>3K9'\8GTS9=U#=7R/CXZ(F(NQZ!9KDPD.BP6M+!,T#NQ%LL-+(>SIB%2C.BHFXKM%UXL3 #JQ'P M_QE$L_ 6?013[TA;[VBTA%JO!U5'L_36?J&%750YCH$B--7>4<*"T,^:O9YL M?NZ^+Y'M[#)NR_6S%Z3;O8V1CFW=M$S?5E2!D;.'O:"+;-UP1ON?S9!..3U% MP'4"5N'1A*\(HK/@=*ZYW[45&IL.FN)'!-\39$"MG>>F/1)3'<_ 4@:4CA"9 MS#527KO9+55'[<1;0G%J##0+9CUP8TS-VGBD/7N&R<+7KJ$[1Z3C ?? YN\F MR"KZK($#JJX3#QGAV#L ?%:'(78=K+9G^27[@#3$2SNK;L$7YRMZ=Y%M(&/S MK>G2KAJ-9J.A7"J;!N!S9SB8#/N]1W7:?50F4_C?]P?=) ML P&&!;6$]U8=-, DZ3\*!X' /E+ZIGFO/CK:L^Y?-6T)=W*:%\CRW6B;ZBL MV[Z7;CZ@G2WM!EK^#4USC^K#4!P,A35 ?.\X3 M)LA\M8-AHJ^G1+,=3??UQS;\OP(=48T_O6#]50!\/YW]<=N^N[F[N84Q>'=[ MTVS=WW^.L3&FRRI)D0H?$RI=W*3)2QQ[5!?E;9V"7[\(JH_(WC!*>"0 M EP+6S Q$/EVT;Q0/ ?0XB6MJUD7RAOT,G?]7R320'4%=DFC*R1,)K#TGR#= M(Z9K(J<2G1-I_J2U;&=&A'K5DDBO-CX.!"2WT]N+P =D((##DQ2@MG_ *!)&6G BR M0C%>UB5'WZL 1H"+[IJV!][X<(F(SRSG <$2(;X<[KZ[1 ,LL)@@ZQZPTAE@ M^-5V@&[R?&,0GGH6&2^AR?(:/DO]0B0RTXV22AX9@@'_!WF(*)9L%:6#46 MIFTZ+@6T*C @?)7ETQA>>:4EO0-B&3V9Z#"\MUAJ)J&KTQQCD%WXE*0K@+!P M*-#2VEYU_PC\'>0RW1TBF( MO2K8$KI/B8TKU76)^>*Y= -XBH46^,+MR*<79?;PJH$M,!=_O=XZD]W'0>U6 MD"O7"6TK_X3V0>VK@TY7F?SH=J>'/ID-#O89FAO]>."!%P8_!I$'N:2%9>0; M,$FVQH=%,>$\NPI+8F)BNFM_9!S:O=&<.:R.ML.-W8Y&R!K&\Z^:Q79[>.HF MN7+3;K3J/F0J%EJ&0U0:JNP*$(LE9^YI;TJ,K MI0N>AF Y<85R_"2K'/-N?;#C/9A59)4M(\Y## ?//%NG+*-=YH)M]F.242[- MLD^/VU?+0*\V6U(%LN*I>DQR+(U']GDPNE:R.0/>X&-(EETAB?]3NWE[+ZT\ M!5'L>19,7?& +SY.??QK;V/:SW#VTPD4$,Q]; +?$I5@[6.06Q600B'>2K3, M[)O:BVD%<="V,7&Q_L\YMH!,AT[F[IHQ!HNKU8>CF&3Y](U7#'$+4@1(]GVH M&/WY"Z!T0:D%F$E[63MK$;2U^.[C=M4D3VZ!)^UCE7MIN+(OL&,1%4V24E$]XG(+(.AS@0R>['TRM";8+A;E=[(0D MR05-=F=7-0PS(&FDF4;/[FA+T]6L&#;6NJ:PX@F)NB18V=W<,#)V!+YX<>(\QDB,$Z6#H?/KG8,:E.*![%MND7(/9X\F991M M./QF(;O2.>B". ,*M]_J, =I&,^F[>MBP85[CIKGJ09<7"C%M_HY:H@(*[@.L:6R*\R;]+R:PFS@''5%C!F%1]MU M:PN#89O;J&67SQD-R*;DG%AY5P_*Y[.LT,FC'CK+)=&CSP,I^UEMU MUO!/C=;]?=W7]2H7L@!PV<]8'M&2(#UXPY8AYGB1,Q!N(5S9]S.3CV:(K2"X MZIZ!$I3G@XS+RF3>D8*7@[+*GH'$^7$?04*YE>D 34^8]+%F^X"B[#)4I?.V M)HMJGH$FE.6"A-EYTBN7, -!= 2<2(3*GA,$&CD#!:F (:&N?)9IEO!?N7\ M/ 8-\ ?SE^<49A=.8J5O ]3]8E#EPA< '@KY3M:)0EU@XII_^0"&L^T$@:QK M,+F5SD !2C @5(1[65<,T=N'.C!*Y'7)5/DS$+\8]FB_I\&Y.7QXV:?R2'*] M8%Q0ZPSTH P'(FV0=OLOT[/9RI@OXB5N53T#M2C-AD@W\H-=Y%(.9FI];AUA MMG"6JB+&C4AC\L.V:]Z)9 R&,+\A?64UE1)/V,#D-7:6>E2:,9%*29N+@6_, M;%+K[62'-JTD6=4*7KP[=1T2YTBD/-)NC*9!^L[\!]?RUKU\E<]25;@9$6F( M<*A,U6D@'DU'M[#C$901'@+F,G;($_OX2//;6'R9(6X:[49+N50^>J*I(=3) MCU^"+!#=__W9^U7M^YDAU,&CTAO\VIU,@TP1ETJL4^6_PV[_Y\ Y(\2>>:MC MNQ(3=XK(HIC0K*+RC=0M=F9M/7+"X(DR.?1>8VZ ;F'0/&_U(Y3J3M#X4X_N MSX1N;X%V_)@X,)SA8[G.8X!<8F74H+B1=+; >WL[=_$S61*2BS M-O/X9-H@][ZY\L_.M]\G8ZAK?J4:/-$<@F(&)'YN*(Z,T9!\H[58.NE17!%N M&>UO#K0\DUQ4[>3E?EP&/1/(D^="T;C63O0Y,CP+B=KX-H^-#VA0?"+B)CX@ M0XG3H42$G)+AEVEHQYD=G@L/0+[3-V2MT#.VW7F)@<_1Z+&9!=')H"0'9+]U M(P;Y'T@CTS=G.\7P)7F%X6,MR\RT 0R94):2]7#&+"2VCOZC[GCZCU^445\= M3/V3>'HR/Z('\;\H@^Z4/NX0T$%W3B-*H#RE1=%L0]E04]MB.H^)C'&57^7P M%Q:SB-A8[@^WFL--CN?8=I<> O_XFZ4W$ELKKC/"-X:/C_W-A%:X:[J M(NA)L6A7RC+LJ[:9H$\3:J+D5?9-T.:&$\P'S/BK'_J9:4[">%S*4FTE1\*G M=N-3W4\TBHHZ\6!U92R0?_\M1@GX5Z%@)>Z[Q^KE(/C)FZ=/+ MIB;#L"V 5SI/FH!-KC=I?H#I"0&=FE5.V/F5Y9-Y&4&RU:$$^F/1BHFKN33G M4A]Z*:D;/$VE:Q]1!'SW-Z M=&!%")]JZ4 +[L5B$8 83M0B,6J>M!4*H^>?Y@^SN;#-@C'1LZZ851>2* M[>MD)'M)[.MD[-\D._S7=DXYJI-<9)"G1G,7-5L>4+/^J ]VK AK%7W(9P@$ M_+_]U5*%6[1W,&2U28M$R-E?2O9&M);MV!DMW(KP#[P"Q['"@#:_9^ M5EZZ>Y%63E$[A+#*'O/)P A?= @RS'BB:3&-R&KA%+6!&V=A0*?X#)(YL0)0?)#S][4JJOHU2=PW-DSP^#9NH7@Q&.ZCB8W@]'!GWI98PS1ZDS>P5?_+2H MU,K#96DJ:S?)P?N;V[O62:J/ 'JNQT@/>%(2Y20>SBA3_/G8@<]HL<1$(^MH M6PCFV^E<<[]K*S0V'33%44P(U"J10;_9:MP6'*ILDB7C67"R$M#F_QE1I\3( M4UR@3Z$$*I1"Q<5*1*-?O^:<^RE^Q1X%9">,*JQ54Q#5AIZ\7%'9A>6S"9RB MR8J(XH F=OA1WTO4&R@?X?T J:,1LIYA\J81@UO.[!:.0/AL27*H@2!RV>-H M4OAZ-&L577L)^1&BS9RZEI2!+WN 30HD?(B^"[VDQ#+=-J)EW&2N$?2@.RJ MFC\_]2O/ECT?.69NXZ5=Q/C5Q[1^<-4Y$:&7Q[KG'#!\DHR^R)Z+,Z:ADJV< MLK1+HI?P\"_MT><<\647/A%!EP#)T*Q'#%[U)"W//]J,- MVW\7F_-R[9Z4)NV7*T>TG1%#S>D,;-A*^J MEH7?-%MGW1WCJ"FO(NQRRLF)L]#47V:?>>XOX $ !@-@A(B_PRT6K=!.I_:B MCU2%$0NC[EB9_%#'W=J""W[S^8H,=86(]HH&WN(%D>'LT;0\^-8'[ P]UP'' MS##M5X9:"[=RX '+H"]%V(/FF+H8QNPVY!O$)04=']2[8P%0E!)8M?KV?)E-UZG\+<]'3 M\3L_"G^,9IYMT$/'$4%+S31BD9!YX?9Y]9+*VP(ONNY7W+/YF'3LRT.3,'4O MO9IHTUP$8^WM&<8C@8')-N(998]/AN)P),RM'6I<%)&2:QPRRQZOW/CA2)A" M+P;R&68I9%F:C;#';]ZS:AVO+,L X]G\DL:A"2-S0F45]F92^9,$O9FP^RBY M4GV>3#I"*5_CF>5K>,DDDN%B:>$UVERBXP+ J"3?B,UE>'K@EH!7O?>3Z;&& ME(T(_A/I?@0-0U+YA8]60B5@5>_?Y$EF.\"M4#J,"J<@(1%HTGHS@J8]O]+1 M2G4'>+MY-%^O R[#?UY F_[V_U!+ P04 " /@HM8Z\(AIAX^ -L , M% &%G>"TR,#(T,#$S,5]D968N>&UL[7UKCW4W7_ ^_>#_??KJX^?;[\ M_-W@^Q\O+W^\^C)XN,_@[C%F:U<$Z+G^[S^2_SSA\0:80C_X\35P?_JP#?7I7_?3I;T%.^O"]8/0\FWP88#A?PSB+Z?0ML*8 M/;GFKT_(RSKX\NDX%A."?+K(P"[(5Q=7GR^^7'U\#9P/"8H2_7_(B,&_.N&Q M01[XSY^2'X^@I"V-\JL??OCA4_QK!EJ!%"/AZ33^;HO ^JUQ,"BA::&/YKF]_M.'N$P'X5*OK M3RW0=.,&M@>#"($;$-C(W1,EFZ^OH\#U01 ,?0=/%Q5]MCQBDK'5FOC/( AC UV;!_(]]TS1\!D/ M:SUYX!:B)098 CM";N@V,(1MC-DN%VXM%WVUO C< XM\CK&X=7VL7*[E3;#O M@*)D ?87!!>$53%>JVKSH/F([7)@@I=;?^-BG@^# (3!:(L_@F#B7UL>F6)X M5;Z#T'G!'G5MFNN,T3&5<+>'?N)9E7]KCTR90;JE<^@X+C&/1+-BH]G(>U/K MO5W*'A#< Q0>'K#&A-AJ$!NR)Q-E!L)EM-M9Z$#\1P90;9);&M8D7EP?[@#< M(&N_=>TAWO%JX@T3C98M?&):_(9XRVO12,%EA9KR!80L]"8Q^@S0&O%+\!.]X2+*,][H],&ZQ\>,-P MZ\&7=AR8E@9N?R]VXSZ[#O =@@6Q&E@/B9P68!\A>]O,_*MUWRYM7RWDDAT= M]AT!PA-IC$U)>*A-BZ"[EN62AB&P_;,!"4\TBPX)NFO9DH -46,L8(B(\:YO M+E@=M8QO;N8=M\/' 'AN#K9L#-L9MFU>/ 7@CP@C,'YNY*XR.\KA:R$[0SG] MLSP""';61Q!A1Y[\$Y_L? (!6']*X3^]8-."+GSLI,$7@#X(2:<=UG@('?LC M UZD'S"/KKZ_N+JZ^)QPJ3P6A?/J"Z+E.Q9RB&F,I^CPU0UN((D\IE'%0&$! ME^ZKR)\:&D3("[*#M[45/,6,C(*+C67MR9'DET\ CT>^(5T&!.*<*QOW>";=MT"NG%/%SNP>ZIK M,^BX%OMMCN@6XX3LZ E<'-G0(KK4WG-(8P5Q?3>9;O[OZ1@$KZ;3-D\!(' . M<([?NB$9X-1\D&L_2,S9X#[FM N=.R1K 6(:MLM\LW);*5?_#K% M+J#KQ><"HP@AO+(-GX+X]"@;R+.>@/?3!_D&*<4R#3[U3_#0ME$$G"I6#'J% M\"5R.? %:D_*.$1%NO%DR?I>([A38CV40B0*\#!PG_A@6=MTCM:U-@D73E3] M*,9ZL((#"6PAPF[*3Q^N/@SVR(4([U%^^G"I17=RV,WPQD-UOK#;L*<,K8TI ME*M0K$)IJS.%PW0HQ$/71*DBG9\K#&3-F2?ID19_8M"!RM:T!*1.3&6#@;_X M=;Z/%V!_$\?P%^YF&\[7CT%R%H?W&_-P"U R=@G[FJU3LI1;-YT(#";#&JCT M.A>*>!/E5\8WG0Y?#)@.G%2,I_#T2>"(U.NE/*%4>^E. VNCI%D3:^-MCH'. MY0DQM"T'\>L50Y=*,-UK2FE 0_2@A%4JY<\T*?_M$V4CJK)!;3'^QMVN_O## M#Y>7@XO!J6?\(>M\@'L?)-T/2/_9+O8X0C.%#H#]<0.?/SG 3709_W%28?SA MU_@D-3FN(..75)@"45%A!DS#J2C&/#UC*025*2QM(%OX3E.T4$F7$6J M7,B^*$J'??2#/;#C^SA4%>7"TBGC0==57AGF0HGQ>]-G#L)$JX6(MJ_B"K[" M$?'DJLPI$Y.B]E)MF/Z$L)4&ZDNH4*<%%Y9)+1.ZJ1\ERWPH@4MO4T02^;S? MQ41:ZW09.K]%J3>(]P4S\#*T;1C%25\/"/KX3SM)=>1,'Z4^F JFW(L&;JUP MW_/UT$E4[+[@BY>80@-ETLX";KQ'J2D9*$:M]ZFF2$M^ZK%HZ-T76Y"T0H;_ M=?R-ZID4?NT36ZJ2EWYE8]QO61 MPK*0U3H-DK3\XRXJ*W7"F0V<%IS(/[>-.71SIPBWC2KM[4T8.8% !8QZGSY< M$HIG)P+4S0A]9>55T@1^J= 7K8TX],5JI8/Z! 7N%"K L*DK0[46XA(P&7)P MT!?:HB.=GQ859'O?6)^6MQ%V]!@[["H0=>-*!]-"" E<,(\V6* 21!6!FVS- MN3R%XK%[W;#3D,UV[CPDFZ@S-:%K0I"RO.%^[[G)$A(\ .1"9Q3M(@]_\0S& MZS6PPQ6R,'T,EZB%GBK.0KDWF<[J38^V&$.='ZWTU9@YS:=8&R*&C=FAP2&K MIX=%7ZV^N+2Z<6EIG.46 )D-$0N)8S=0(KD]]TY" E 6E]ZG M&AOY_&3B(]V[N_> H!/9X1PM 7IV;9;#1P.C>DQP196V58?N86#;HOZI+-8AX# M=O86"Y9.'0^ZE>PM#I.A! YZ,KBJ2!^SN'C(:HX+'RLM7!]&F) -)'5YPV\B:^-K+:6OP*[/406.DQV>\M%<0UI!!P7K]!! ((%L.'& M=_\#G(D_MA"II1JDQ+@@+DQXJC3*\[P^'Y=]%BF]38O>? M$0UC@5+#13Q@C:0Q@V%L8&GRV@F'27 9RN#0:SB,C706#>,CJS>SJUC-DV0G M\'*ZZ-#L?"K@(R584.JITX[H2@@4H2V-XTX/(8BL?O7?EI".?UGH6H5I7/:J(O M^/>YRF!,;: !:B:+J^I50"G2VE-S#F>A:.S>5;R*;%[!Z4AJ5>^[R"*/OX#\ M:W_7AYD51HBG[J)F3!V1:6@(&Q*DN)-#U$R)#>6&32>.@HR@&F:]3RLQ*?EI M)D."WIN), @*S_YDM,S7IZ]Y[I5\!^SK?4I=:&?206(VPMU(/AUZ+_&_6,@1[/<+,.Q+Z&4H'7M[0X[K1>1&VZF*]_C5]B('.+>8\V31B\)XVLW7 M62KE T#)DG>@=\#S-[L;D>V]=CNF,7(3SEI1,T4.MNQO]J(94(VH_CW1+KE0 M*'4E0;W>([G\>Z<+-_C]^B#8RW):L,^P^&U,H%MXBLUI(4]WNR?96)AXH< @2"0[8YT\"J=& <>X1;%-GF-=G3[N:EABPK#XS(8=K[NB1/6O7Y M$3F2](;A$=P#%!Y(F)6\DDD0W\=U*$7S5Z(E.\HMU]8D?@@GK$1+=7ZT.TW5 M1 :5\>O_V$"&H,)I@APA!E3I7EFOPRCBKY45X?;X'%GFAE,SQ6Q1? MI>&F4TJT9.J69%N=_*#AQ2]5(&XIY@>_;>.2!$HB@\KX]5]^0(:@0MD!.4), MF9+'/W]V <)\VAZFX!G0LJO4&LM,3$%S0^9F4$53>98R^U":K]Q>6IRY$"S M92JUVHA'/PHBRYNCB;].7)*0!+$Y=H+3@JG5@C;FT,TU -PVJK2W-T7E! (5 M,.I]WG%)R,\](>I:)U.U3B;M3_#'^@?)]BFJ!TI>7EX\6 MVEB^Z]L?;;C[%)-YK->=KT-T_!(OJ1"9+3G \%H8+7$/@.<$KL MN;S\#Y0K_K9:#^2W^-!_]X^?Y]&:\ M6/[?P?B?CY/5OS]H?,MN18ZG&-.E#*3SS;U$(B2Q%_I \LT]>AOU.2P]E;:X M);*C)W!QG%1Y]:99!+H@"C<(^>24)K^V<^\C7A*'W!78#F62,V_I8)("X6E< M]3"[0I)^N6"4=N0]6FS6J*_,<^"ZE$?,GXM=.A)?&%S5*F:X56C0+X"AX[C) M\ ^6ZTS\D;5W0\OC"D/0IG?!?&XH& $]^H6T "%&'3C9-1&N=%C O8OE2T.Q ML C1+X^A;2-UG*&E_A$XOH&,;'6< B[8Z.< .I6%YGK3[7$&=NJ=)=SWE" 9&P E_)#+"N^ZQ M%X/^]"%(WM,Z_>[! #@_?0A1I&MW6@X98"/L10Y6J@>(8JZ'(7*?HC!. H5T MO6/*MIW.37$9936C':KWR(USE&)%-6!&DYO'P3P*@]#R"3$LH5?A3/$M)>57 M)< P43P@N$X>P6+G]1X!3'$1Y9B?Q]PPKK/\U5N(@+OQ1Q%")'^D[\ M*2EH%<'Z+DH?P9B"RK7O%B!Y]PVDSQT_ $R9DSZY2 #B["YF"+#K87O7K[\VT:_N^6&8WL4^ M<'*%[ ;/%NSYQGC'R,:_S6/L@O$K0+8;G(XD:3L(M7YZUXSO&V\6U @\#U$G M7G0+LN9VU+NP?^A V%P*ST/:B;Y2BZC6F=F,COH_T[OL;&XS2#P/<:<:VX*\ M^3V9P2):PAO*RA M45-51D%E99D1:)@P;TC)9. [02YO9&0%6X8(V>#]"ZY1=)U-B&$"NG?]&)TL MH'\#;'*D"DAUSQLW2$X B+/'.@'X.3E"8 BTO>[[5X!&X?GV"#=,8>C8%LC# MV_Y<826EDVYN/_VK0*-#@AH4"F7=4BP&!C=QXT/GZ.@HP@0&Y M+85]/C>8KQ\P"9CN&-T;DMKDG4CG)6]_=WEU>36X&)P&(A_&R]%B\K":S&3.)?[83%>CF>K80SYW^FX_T\]F]O:O!*% MQLA\N8J5&G_QZ]+> B &&4Q,O]9D9&MBK3L[IR M.4(Z,H,R7*:F[U1^-2#/FJH7!5YVG(;*+=DQ^EG[7[;DS%"!C: E; M32RU7ODL+?ZN.V%%Q-(BMGI8VNBE(FT6]W,[%I=!E"&2Z/J%)6.L.%<':SZR MI$N*XU=@Q^\\S-=KUP:(::M8@":L S55,1,5BS3]FSOE5QJU6;@OS2T<@R#] M4CCSUR6-L)M[ZW<@6E(BZ57T : W1SO+M!)L%(($D.[Y?#>W?'S&;Z=>J M5!OK-K)]S 2B!*I\T6\;%!_WTV:?OVO//A?I,4<$"H\2&F42:2K$?K2P*UL6 M3RXR%--@52!,L4I\>U)!NR/^\6?3E'&A2:VIGBM.=<@[YX"7P&TPY MBMN5/'U)%NU66)N58QG:81!$NRRY=@_()N0K)&$E#V.^P'0DR3ZW$-WCY6GK M'49X%2(Y0'C#4LF+,@,EW=>U&CD3VKEGF+VJS9#X/U_QSOJ8L';%L&7M#J'[ M@E=3.]K"J1C>Z MKULUL37U*.Y5HN01UOA(-DDVQ49K9:$-"&<180K&+/XZUKS*]9E&/>F^+-6. M7!6)UI\+M@#/P(\PIO%+[^1-4#L,R%'7\:%>#&NE*AIS(VNAEAKVN9H:MAA_ M'<\>Q\O![6)^3\I\KA;#T6HY^&6R^GDP>ERNYO?CQ3)IE<-@ ->##(4 M4*5$Y+&.C=_ M*1<6@"A)$G_+,HSF3YZ;Z$$6#EZYN_@-JB7^-E@G)LV4:'3KF>O6:*R^EU-$!_5D\ :\A>DZ=Z)>[3J.C& M^?R'ZR$(0SSN;UA/F.XG'4?IECN6/Q,E%9E'DJ-"_KVT\944[X#8'T+M7;I]5E%U4 M8]NI9_]--0#C('1WY%T22EUMRN^F[(&[D3.%X!X.Q LC'HOF$PI18'GS]0R$ M=PC_E!0))T50R8'NQ'] X-F%4?!O8%7JY;38K^Y(;\\BK\\HPZ*AM#C/U+6> MDE2QC)EQ1=W_,*N3JG:B.Z3=SSJ@RI4>C$CV+MAP1^+TC[Y#*GO'3XS'Y!R# M9Q0[(=]4=^YE]Z9 GA<]R'069VTZHRU)SIL3CJ36B1B?7(5_9K:N:@>ZLQN[ MEZ\J1\XA!'YDTV.!0.:8<+/]2.XWJB-,@A]0@A]4@A]9[<+VOX'J? M?%F&%@IOL%O%?>2^W4'>>H"_*[[I]U;?8QSO,0Z#<@SXY#=1L;<>0U%DAF&; MYL8\X5]&:J_[MQV5:9]?YZAGIZL>3=0IW\NW$9Y19LM;V^6MK<@+3=WLI>B] M;_K>XJ;OW0LW9.%[]\+?O?!W+_S="S?"&+U[X>]>^#EXX>1%)?)_4MOKV?)( M/="A[TS\9Y ^8ZOF4W^IWD,?#9<__RG^[V#\S\?)U^%T/%LEKY-,9E_'R]5] M_%FG;WPJ3$!8@>DO<83G^DJVU3#5)WZL?$0[K@\C*P0;B ZD]L)3F#YM3:7OTV/+Z0N-I:_@KL]A!9Z##9[2T7D?DZ0L!Q0Y+5 X)3 M/L;$'UN(6*0@IE2>56^&P;IU[:? =X?86S" MF 4I*S"ZU$QIV4:Z\Z1[FTIY-1$Q1;^LZ393%.$0MM(;MI DJE S3&X5,: & M+C6+ZJ2-]ZFR)=L12KX4&]24:(&"^/@$]9"^]@MP-UN\#(PX7>%-P0; 8G-!XCU5\>R^NUHXOO#^[6JOR MP/NSJ^_/KKX_N]K6HG'K^I9ONY8WB2_VQ"6NV:%?)K1991UJAWJ9].D75'P? M9PW0J39(? )%P3@@+[,%])^XT=QVAS!@N9!4\KP&M,L#_6KSN%PA8&$G]S"# M>-LL&:05MM*]>!U](?A"&.9TWCB*$$AU5EWN-4<[P"*$S7KQMC3J^'9!;,Q_(^4J< M]182=QOW/G6#GG1/!1]3G-&.)GF'6JW"9@KO!'[,7O*[!&B+ KI+=X7AG>.S7 U<, MT[<'!&T G/A2&IEK\S7O-.J)92;5NSGC8T9U8@T3.DN]B28O@.U909 D)!"! M.+]%R3DE(7'L0721PZO+(99EKQ*LC M>5 .B83AU=,#V2^DC@VIP3CW,6&K%TC)2.IX/%/<\98F4Y;EU#'7SE7/,/*8 M CPJ+?>M\Q%-B6*=@Z[E^6;XNE>BO\(WR85.W(TI :X6]:<^,_2;(-N.=I%' MM#BN,7S:19+MXW%O&,SL-*R[U5%RO-ZU[/LSU+*WNCH6J&UY=2SUW;N>_6#\ZECBD';;=61 M#R'21F/U'QZ]-,!H-6+9.2I7@[AHP]'Z5S 3 O -F6;XFE@\)S]]4C[Q*S?O M7UFZCZ"K>3^L;7#>*DK("6O3[W%P1QDC(3,T#MYO-WU2ILM\/)8O!U M.'T<#^['P^7C8IQ==3X./\B-/X#^P!H<<1C$2&B]]WQDW3 (0'QE/'M^+,[9 MC]GIY-B& 680^S%Y+O+N1K?8OXX+?AGVUX><:MTB\$<$?)M7YTVJI5EWL%M7 MA<+E0!E^Z%\Z:);DB"3W_I]42Y.N]*!?I&_Q]CPCQ^S]]GQUWW#\\V<7(,S5[6$* MGH$GMROF-M;DKS%DW]?&F,L2@R1?B+)5<%;>)7/Z,,D!4])[X5Z+3;-!@I[X M^R@,8N*NY/;,M!:FN%ZU])0R]I6XZ81A589JO]V=:/(=^5_#(E],1&$/?%-H;9V:ZTBH%GKR?I^O=['6N M"RT>KO>L"C%#Y T!!]Z4*T#="YO- _VI$Q,_M/P-*523H#G:DOJ[P<2_MCQ2 M^":8K^\@=%Y3Z^EX,%PNQW&:1#K>P/4'X18,LE$' M<#W(QC6D+GR&CEPE^!*TAJEZ+$]T'058/8-@F7@9 2<^(VAC5KZ"0#2%4H=\ MNO3;U10?;NRD!&-0;$1*U0KR*)+235;J WP!:.([41"2\#F)V3)BTD)H4T(8 M5#7)4CRY%'3#XG0TU_)NK2>459'QG5L7>(Z0Y4JM3=DG<$6@1%$W(ED!#^!U M?A?YZ?!X+5\CBQQ!V"%>AX524>W %*>=*QA5HO2O"-F:)@KM4.#TAF>8B--K M#Y?6[C,-F&14+*#GX3W=BX7*KP)R(4TQ;E*RHU)@V#XUPU$@!'-6=HX"T7AO M+,-/[[R2.VX"]I>!39L&DL(HDV&T:("3NY98Q%Q0":]&/Z;X!DIV38$^0R4= MWS852#&%,H$KS U'"LKW-*U!7G"]=MR#KHG9&?6#O"SX51[,2CF6T/7)>5- M)UV_S%?(<@!!B9_87 4SQ<>JJ;2ENR4EXO3+910%(=P!M !>$MK;NGN^B+@M M3/&=6I 6ET[]@N-0*(IZRC75G*>F0!X]-BI>2,\T7,HF[#$ ZPCOT]?,@@)2 M3<]@$G-U0(Y*PS:X'&)Y$0EQ,U/"2.U+,S S5,%!.+?[3@O*Q$N+NFR9'1F3 M&-:^M)DTGX_\9X 5'Q8U,J4:DS+_@T=!PWP6#BKR':Q;NJ.OBS;:FC_$;G)NX.I--3(GPCP@T02 M[0P*"PET4B2K$F'=I$A- 4CS@2:^SE'\^&EZ_"?(3E#KXMSC VK4&K:[>+ .2:$,F-JLS)H! M;IQ W,P4ZUQ'G0M/OPHI[:&H<_*F\'R=WZB>TC5O(4K>$5U9KP\1VF,#0EE# M:_1ARLRL*\.:9!LV12G^!4;5WEH!>$"N#=+ZT/CKC*KQZQ[8(7 P43=X[;+# MF'4[&/DLB]WR&*8$"9M._I;98IABF9N8RX@"-A5G5QF[5)N=A6'PRA&_^UQ& MGF*BQ4U,F5BJOI(<=8;-CU-&6S5?;/Q:TCN6*ZS6ARDSK;8OK$:N80(O^@B" M"2O;Z-Q#[2+Z](?:'Q#< Q0>'CS+#X>^0TIZ[(D.XO5A&>UV%CK,UTP@M1C\ M7ZM7Z1\6\X?Q8O7O/PT>IL/9:C"(++P/*=P1$;0X+T3&[)A>A%S75L=%DH71](D4A.L%ZJI:F!>SE!%C:\,N3R M ETF"9=@S(WH2[4T**:OH,920LV3:9A0I]@PD@HP^!_L5B#XG)2;XV83"MJ8 M$I12T->\% 74&2:_Z\CUG*1(3_:GM!PEVYH2H*HI3TDJN]F?WD8(6 MO<4.(#KD$6<>Q0(-FVM?P=:U/4$V?!G(E,UFS=E3)L,J@(@ZTZ)!IP31&[!' MP';3G+V]!]):0OG8"),Z5MRHM>Z-7VSY\:76^&"8_O#"4JKS7T_2KNIZ76_V M&Y*PVRR*>'VX W"#K#WV288(6*I1Q3)-(O?GU_T%W@$Y*70B#\TCKY.9D MS. F^4'W=D&9FP1IG=R\NV9PD_R@V\U6YB9!VF W^#T.(EI7WUKHXVPV/OV$ M/0S9^*2/(_J;(4+D 8#D=42E_#X6(QG-V-R;YEJ777 M0:0T7X\0<-SPUK+)LQ('WC:# Z^CM$H!#TZ^ @W0K)V%4!"%PBD4L]X!2F2 MP96&H(TI@F%K5UXL F+T2V@*PA @N6E"!37%!9.>*%0J-,6?LHC-T@:^A?T] M462P"*=I[68(0&KMYE"C200I#H]^L >VNW:!PPX!LF$-6+2%"G7D/YN,KJ[R MDRD79,HQ?MV[",S]>^OPY8H ^O5W46[:X@0?"$[.FN/?PD/"O)F=V'*+JH5 M16"3:9A/0]YQGOCD?;DX4X<\$KS<(V Y(\ M#?L1-B58Q3!R$]_&B 7@5.50-%5;ZM.4[#MIX;9$MV&3N;2OFD=A$%I^?(N& M5^!$W,R4>]KJMEE(FOXSQA'<[=PP/EF<$HU3/%_\H7J^.)K?WT]6R:'BQ2#I M5&].8Q:4X68NEH"TU'/EE MQBY-;,R8A)@ID?<2RSI*+-^!WD]4 MV*@73L)*-O!,CTO>;AQ=Y(!SI:LK>-Y"*#4(L!'!2[I% L)Q#&V,#7T(?!O, MU_,8MQ4<3JW?0NS._;$Z8,?>LAC6BYA2@D:K7 (UK><(- F9>ER"A?<+S;>_ P#7P<;F[!5^Q_<*LR$& MZ1AQ+6*]'N(-82%P8J&X3Q'A)4&*YR_RF[Q[CVP;)\/L=U_RW9=\]R7??4GM MOB3#6)V6-Y&/J=*!7M]3G=1B@A//JI]M,AN5*'*[90%LN/'=_P!6TI-D6]T3 MLE/IEXGMX3 AP:1"!E@#A.*(.O;%*=L/N6:F9*;5$Y8\G?JW)%.PL;SC)71; M-39]=5F]##P=WPVG>"\R6TUF=^/9:#+67&D8!D&!0FZ9809P3UX&V;I"SW7( M TQCC 6)Z3/V'6Q0L[8A?/9G#@F;&CWN'@T?9I%"'K ANQ618O'D\'XC3F+_ M(E:8,[@&5YFK(J^;UT!S>2TA*86\8X:1>@N%M1ZL0QQRO(4H7NV7( P39)F/ M??!:F.)(JPF82Y)^-VP90OOW:RL@ON:.9 3%^0S'E^Y&6[*5G_@+$&!_TL8F M)F[PB =5]->NJKD$R]5\](^+Z^%R?$,BR _CV7*XFLQGQ2?M$A0&KC] 1R0& M <%B$!$T#'G";KFU$*@P,O^8QO7A!)-JQ?#%0H[<&W>-^]=@ )+A\0";FJ7SCB[80#^I6( MME(LEH^"5R"X;71[V7W,C^([$EQVZ)>QD!$L/HB\^C8ZUIS?T1IKZ(_%-5Z' MSG0O49NOY)VU\'"ZF1W,PRU *^Q4)GA[VTDFCMM6S)A*F M['@Z4NJ>N6E84GUWY-^1K*1@XE//0OH?_FR6[TY,2#\:7^;Y-Z/K7V.^:]/U M\O!G;['/0-?+//]F=!US>PUI.P<"4$_.WK/$4MG\S2G_D?NE"<;SBW5@A MN+5<]-7R(F"$_ZZ&Y=E/'MT.OAJ[WR=-A3\&SY1O:N=0Q[J9-M>^H0E6W&^9 M-\N4\?N&-B[F3C5EJ?520*4K:B=!$)U<6M4Y9!AN9^_)=3]_#)/8-[-6I;O' M"(' O(5*#3EC:HJ:.\M,$]DW,\V*81KQ1?3-3)NC MI&81[\GL_L8_^S5&=TPN8Z2IRCU7Y2K(_.*&VP7PDI*, M6W>_@F-R(>K O#^GW(,!&<9"967*2D2<'BF.7X$=A>XS1G7MV@ Q"UVP '6? M$C10Q4Q4+-+T.W[GB4[[^WT.T^]S&*91666WV+%._'[N MQ0X.O&ZKW?>E#@XKVA4R]10G5V@\IH-VQ81Y_5VE\=F<(S84JRI?>CBI&UN( M5)8/,%HQ98UDWJ2SLSD+:T$'FO"I&S68^.1Q#>Q+YBP-6\Y]BV)@\3W1=OHWQ=YTF#33#J-,-'%U M*(O_0U+87'\3/[0=I*^Z6AMNMF/[8YU-M+%?U>,SS40UK,.[/)7)%&.]LMWN M$&<3&>TW29#**\-TC;R%!?W8BQ]9>S>TO)B68 $"@)X!>1&"0D= M,12J1C]G$V2MI34U&&*8:M3F2Y+RFKJMP?#91^ANZ/7/5^GCY\EHV.KL[+0!H0E MJY1H'ST-IUY/O'?5[7!G2L MCW>E8K*#^/)?_G?RK-H,AO\&XE?H.ARO?X7J-=K<(>>^%9T\OGR=?D7@6 &8 MOI'H7WM[C4GWS4[#5+HV4ZFE=NX0#%H_K..-U+]RGD?E/Q[/WK0&]EZ9Y6P* MA5V=1^C;C!)>VK5Z_(JW9&X @D)ABPEYC=8/7+M+598;NG_][34(WP\3WYC2 MSJ,P""W?EG#)UK\L,=#CWG40M#'HZH.$EDK(RIS'-.,::S/H M0ZS25A@[/03C\2M9I #WOJ=<4U.N7$BI95YTL#TR"#=L=IIN(8 6'-D89 M 36YRCLCRIQ/:0GD5VF:>Q M2:Z82YUY EAC,KM;$HN 7./F5!KA2!2'Q#2&SF\1WX:*&AF30]WZ3./3W<.D MPPBCT/U/[.+/UUEEZ:/-GOB4.!5E/M;KQI@\YQ:G:CU.F#J+0?!@N(7/78+ E$?(WEH!"-1.=O :7C[9&0V7/P]N)E\G-^/9S7(PG,5O M']S/9\ES"(/%^.%Q,?IYN!PO]9[<9(%%[GE,"4A'M#!Z"L ?$<9A_$P0X=?= M9D(;=KI"97XABLR#"@#7E!$2H M:!RAF'/<$3]Y0'(D4'A8(M])N7$1WK9#]OLH90!3+!M;D;+G3\J8ZU?^TTFTZ#"6 JCY MB)6)>F$%*5DK/<>A@AO3>+N% -ZH3'S*)>ZLXCHE,*C<@S''H5S9U2+-L.@# M[39^ANP-L#W\#RN")-?4F -/J6DH1Y-A,BR%$0J5,KA%*&0:&G/ *6E&Q12= MD?2XEQ[$[8PY!6TL.X/O%#P@EUF3+ ]@S/FEG#!RF)O(]3B6'U<5>25/^VVA M1^Z@X"_42W4K_FG)8*9W-+%.L_'_UJ M(3>]K@>PM0G'R>.\2N>A?ZZ>AWX=+B;#Z^EX,)FMQHOQR 5$U 6=2439Z> #4-'^;+ MZSQ@ PX/9#2-)X=NW]:Y [N=]0!?L&T]!,1.,]^%84+J/AR04YALW6&2H=_I MN[8\4LMZN05 YE8L&]RPTTQUFR0FT4QI<0\W>0T,L%.R6BB2CSDI'3/HDU,G MS 4O*?(1*QTWLX/?1+>EDU>]O)#X-.D7$]V!KFP<2I(2MM)[="I)%/T"JL!. MOH4'J=)G'4B5R!%13LL.207)R6YON2BYM\TLHRC9UI23V!JJ($EA#P&/.TSG MW,_OSQ,D@',#GH$']\F%KJ!\P4*QK2E'K0JR4J30L !C=NEUOCX&U.Y=/\8P MHYTQ^Z1:FG+T6F/N2=&G/^PTBH(0[@#"]H%D<21/PRFFX?^%DH;_N%S-[\>+ MP6@^&XUGJ\5P-9G/]*;<%TAGJ8ZX)_.9[ZS>(,D191^ T($TK%B-X M([=AH=%A@ QFUBY^>2Z'''/OPH$U8$'B:U0F!@X-/;C3A7'G/KW^*0]0]^HA MI3*9.\TBHF]&KUZ@'*-S@+K-?GU&YXCHG=$84%*G"Z"ZP_ -F)TGPS#WE>*9 M7P/?WNXL]+O:7K'43-/RRXBU-]HPEB@S7H(9NFI;QTHS Y9K52WE"[),H&&" M7%H>"!;@&?@1F %!E0\ZK.Z57U4G"RD&=)(,$]+0MN-*6@M@ _>9&!&NG-C@ MNGV')J)B4V6:M(( A,E[H'PQ5>%TNQN-Y%,E1[\L*H1,!5E4O 9Z$ZC$I/"C MF6\H5:I,VZEP ^L!+WX38\VBFH@+-/60"C6+"%&EK0GM,A<+T%AS1^4[CQ+] MZ2_+9)8FM3==?Z.6^/+7:N++HSOW+K 6A M1%$?%_2!!["[L(O\%)< 6U=D810C.XS]!H&(5#LPQ:GC2DF5* /.0T\W.O&X ML7,JO)I=!#0KFZKAZL\CU$AA2=S6+H,:L/"+%8\M#$,CWO/L5D(R-$OHQ%$V#QC M[W\&_52#^-EK;'C=#H*J;#BDZ)<+9_&L!+'HVTQ!4\T%EQ7(HU\=5O NWD)L M/ M05LP]0PDX\+IM:%,=X)!FV+6)] ":O'N4W6XF5?FR^/+XU?8B4I^/'+'A M_SDKZY4ASEH]Z3;(305=BVC#5(#_J8H=9#>(#^R>P?B5U+IE M'O=(-C:FI'-=CT>23L-D>P>A\^)ZGE2=$Q:P,46KH2)V>:A1% M3?*0QA16KBDE*E&FB8@4A<7[5%C$E6\B18V,*8U<5W "^@R38?$A5.+1NGY$ MJG,GZ)/GM0 F'.0>PQV_8C./F>?Z%CK$?*#7.&,&TSH1Z<9E=OEAH@/W+IN60#(THPP2418T$ MP3(=PF@Y\G(BQ3 1\+T[;>M*R_$3Z26C^TLNT7Z?'+U;WBW>7/O8=?&.2>DY M>K*%S_)R7ZI=B?G^\DOE2LSCP\-T3&[%#*>#V\EL.!M-\%_+U7 5?SN8S&[G MB_NX0BP&/R$QR&&A]1K-HQ\%D>7-$4EW!7]$A&N8>;S[,OPF&B8= R'.M1AN M"[,NQ<@(*#\WN:3I-Y ,]+C77P1M#,B*5=!$"5EU6Y_V%ED1R83R0^] [B;8 MQ]39>Q\J2S/.*]/0E(2]%J5=H,\$__,I2) ;/Y-,0C6/\@?*)>O'Z^7XGX_$=QQ_ MQ?_5^ZY B3SN+6HJJ(X@80D1?KEI)K197B!/$(6('XL<_2L9!37^I6 MGT#;!+(QYR6X$G+\LE]T6%-\0*&B<81BCN.7O_:J"&7:K4])P5>DP M2P1<4T4#-,A&L52)Q7^#K!*PL5ODS)\!\MW--DQ#?/Z&H+F$:W3\!>_?P.OR MQ=J37_C6JUF?IE@YMG(63P ;$6N !A3MAVC?RP;7?&U-0 ;/3SCK_>TRA/;O M"["/D+VU,"HW$<+:]P#PSLU9;BT$V)6+Q U-V=\J25>"+L,.M7@H?[4\YO4D MB7;&W#1K28(I6:8)D.C5 W)MIJ1R ,;<(E,120Y_PWC_Z"-@PXU/7JI=6:]I MWFAP VP$L/8$"Q!$'CE\);G$IW=2 W)A$<.36XI1N"44N4Q;V?(8QEQ=4]" MEEE@F!+=@"?LH)%B1'&M-2MP@^4>$^;,_;P?R"IV*M_.%)#9G+%D*&AES]4U%@@*:ZL;YTZ_)?YZP$?C[_P=02P,$ M% @ #X*+6#BESVCWF0 >O(( !0 !A9W@M,C R-# Q,S%?;&%B+GAM M;.R]?W/C.)(H^/^+N.^ -^\BICM"[N[JGMF=GMO=%[(M5^O&MKR2JF;G*EY, MT!1D2% M1K$7!O_^FP_?_? ;0@,WW'C!T[__YI!L+_[PF__]'__7__BW_WEQ\5^7RUNR M"=W#C@8)<2/J)'1#OGK),UF'^[T3D#L:19[OD\O(VSQ10C[\\-WOO_OANS^0 MBXO_X"0NG9BAA 'AM'[\[D/VPU5*+0S^2'[W_8O7[_[ M^M-W8?3$T'_X\/U_W=VNW&>ZC_)A,&_D$FSH>??_[Y M>_YK!EJ#;*#,?MTD.4(9^/??BQ]_\Q__@Q QQU'HTR7=$C[B'Y.W/?WWW\3> M;N\#/?YOSQ'=RH?WH^A[P/\^H E,R,\P(1_^!2;D?[%_NG4>J?\; A"?EG.E M!#_G-%*$[WOG[@DTL\XA_^>V7):1QN5T'2:.WXG=,F:)9Q_^Y9;]J<(U?4UH ML*&;C&\@I%$_/@Y75R"@/'_\$%8T?]B__#7Z]0] M38/-+$B\Y&T>;,-HQ^UW^A@GD>,F&1DN *=CB/9]A4? GD951IW(S:BS/S;( MGD)\[X;,X>R3"U],L4#?1N&N#6\I%Z$YSE_]1U\F4T6@B,;A(7)IF\^9+1%\ MM(Z3+9AC+HDAPDI$@XM/J]_\1X9*G&##UBE )EZ!_=V_?5\,UK]@E0_4LT , MEPAD4L)6RF-B("!,G/GPK1,_^HG)VS[ M1V_'8WI M@$%2Q%Y9'5 %IT%P99#8:KDC*6CU6S#(.FHG4F='M$@"4"&$,1 M'FCDA6R/N[EF#E$CU!$?3^\/ND482 MN>H@. JA8C53A./?1U< .0.U#Y_&/@".",#Q/_B2/GD0K0F2>V-789 40,:$2@D*6 + B"O;<+P/IL3SP TCYC!Y_)"?7*_"0Y!$;U?A M1JW3#5B8*FXD4%7CM2A(!F# DTJG*J@3PI%)&)&4 $*XRO:VGF=;R &O_7$ M_6C#6JF$QU2N!B&J:J4 1E(H+3CA@ "K$B @J8=?%U<1 ]1^.(%KGJOHP*W0$\4(DB5Y0@6 M5V.DS#2J3;Z3R?#0=.V0&^D[$NUI@*)JS,25AHU1N 0 MAC3ZKA=\W#2BCD)#JC_CZ(2,Q4P+RK^-_MWK@]>^-%]" &;T#POYG?[#4,U#XV!R,<#N'\L:+N(6+J]N''Q[67U#*;Y" X M'US%:O;!CW\?_8/+&:A]PQEDAS] MCO.]I4QF'[ORX^A?6C)Z_3,+&"* ,&QZ]NH^,XZH(H(O!\.U;1G+Q_9=AD&S M\3H3]52I%)1DL$A1\#]3W_]3P$ZC*^K$;)79S./XH E.*N$Q-_<-0E3W]PI@ MI"V^EAO5+A^0+OX.6"1#(P)O? 7Z'/J'('$B?G,9'>>.:N P%4;!=%51CH"0 M%$3*A4HQ.XF3,J:Y)I2#X][ ZD0XOGJ5P:+=N:J945^V MYCB0F.9DJH23?Q1=.0E]"J,WI8Q'4-A92#6&ZXE(.0AB+M(1#[ITI(ADL.B) M*/US/ICRKG:.[U\>8B^@L7J=/(+"5%XIPU7EK8 @*:^$!Y4*<%"2P8ZO K,= MC9[8TOLQ"K\FSU?A;N\$:C^F@,94":T 5=60@B*IB(87E:ID*$3@D!1I3)V9 MN]MH>MAXC,XT26@LG@_?^,Z31% =,([&-+.?*8P:RP:5@<$B@0!9=73EMP4@,K]&^+Q9G4.U 4$ZB<^9O3H M(V<_8WWFZOC*#YV!(>QJV+DJ3PRMIC\R. M4C<7BHWL:'[_IBB:W@B-5T&W08!R&5T%*$HM72TO]95[<;]:W,ZOI^O9-5FM MV7_N9O?K%5G3^__[C"5:,E?:'!@=ZP3W,5!ER4/WO)\]4A3IB8T>S5 M]0\0F)[&,67_MUD[KXJ)Z40)3_U.$+RLFAW(H*AM9SYK*IU2(C"=)*,EVLMD MU"8DIT(H<>A[VUX:Y]QI'NAT6,XEGS+V>?9 M_:<9LJN]"N-DL4VE4LA\!(/G'J7,EAU?!0#%I4DXD&AVG,!SYA0*V6+;$H.OLQ"N/X(0JWGFIG68' TU<)HV5M+?V,HJNU\6O?G4,0 8*LIJ;,[L=@ MMM34JBNSR\5J11Z6BYOY&KG7"?5]2/BF 8T)4^*4:8.+U36K F>6;/D2?]L*H$2$H!N\E*+V(^E<1T MJF)200%[/0O#S5?/]^>[O>-%O*E,6'OWU 2,N,IIV:\L>%)(G+5/PTK=6:? M$U* $X ?^NQ8[OAXNA@EYOTPUJG]2$OZ"D!\I>)4/ M&NNO-0<:$?MJ=-")K%^O#C(D.C[)&$#>92%,K=BM7GX$6E1-!B)H4GWZ08V(>X M3H(PQ<^BBY:XA $$&,5^Q36*)L12!L"STCJ;9<,L?D6QQ>/A:Q_]GB;5P,D$ M_IIFRSQ %<0P@)HMD?=X2)Q'G^E'B+0;:#J"-6B2IC0J ORVFG$;+Y\DNEZO9Q? M?EI/+V_907U!UK_,R&J]N/K3+XO;Z]F2Y[Y/EQ^G]Q/ ^,Z"^PJH5A719[;_ M]EYHZ5#/#M?>4R >W[EOO-.YPVN;38,-_YO/3_G3S=\.<0+7I6RF%EMUAOQ0 M@R'?CPPV?;5[E=Y'PKN/&4@4Q15!9;3CTT29/:5Q2##PAX*'" M[8")_:VN@L::T6RZW&RZDM+T.#D5&RYB%5,R?7$\'_8<3)25X].T&8Q'XUY< M63OR=CJO+E-DZJ[:T+;.0;5GONZ2KN83D(^.EZ0 MNREGR_Q R?\(UV2U[^EALL#''H*(.K[W3[HA3VQ&8@*.IC)=,2-.XIPZ]CN7 MVF0T>!,M!N8;F$9!JB]BE.!([V,:^)&\/=%L$XK5?E([N#\XVM8;XYQ3.LB[ MN'M8SGZ9W:_FGV=G>7Z9.5'@!4_Q XUX,BF.R9,#&@#7RU;G"O-+@@*"9\ M[?F'A!Y7NVV$ML>,CP30&7(*:H4I5W@Q,N84PSH[T$N2_FJE+?R9>D_/C+DI MD]IY2ENY+[:UFN0-N\+V9/"LIZO(9;-J2P/%WKHQ65/?C Q)Z1!!"$YR]>KS MN8V2+QE9=0.7<5;?OJ9A-O_X"]1@FGZ>+:Y#[&(7RE?;H=\8 M&NP=>OV83OHQ@_QC"C%)6! B%^11^S4Q?5*Z6C2UW.E,Q3J_U"2P@6=2D;#) M-^EY[&F/@1PM[EET0UO>6'(&ZD?Z\MFHR4./=?64-6:Z]EZ\#0TVQ3&/NNSP MIHP4F*&B7D89BW9T*]6(AW4]9H7W5^O#.Y'QBG7E17Y M76SSCJSQ="%]2,4,%;%45PO1*H6Z#/!PRG09,Z:OT7PYO9W>7\V8^LUF M:^2"H5#8-(D;-.T8"$^GY.R6M:<*@:(G,A;J==XYD#U!,#.F5RM+-#9M5V*D MN#58;/U5,%]7XR- 1&V6@=[ M<$@XY7\HH4^(DY", N$DL$\N*_%"TZQZA= 5",SZ$35&JS4C M\I^1ZD0$IO" MAP\1U'I.WAX8G\DTV$"P9I^^"%8(JD=!+GWX6&+4/:NQ[-!.Y@I<.^]T=^#)!<+Y*G$A;KLR8]TOZY 7!:.P; MMSU"58_F%H:FTXONJN9!PCCS'GTJ]ES,Z>9M>!O&8#J']\47;TS MA-8/H1TDF%1+>O:[JE[!2SRO B)Q;1577)F<%<23\S5/19Y"0(IT$66\*H M9+=3('DYA(_D;/H1F.-/@Z@ X8N1;&_*V(M*M MO:"Q*,"MC6S;$-&^]9Q'SQ?U+8,-?PCT'/K,8\<0I4O>&A+"S='Q#*VMB&53 M-,5%,=9VS-64L(2>1\*3-WMRS$\5;SZ]G-_.U_/9BDSOKRL%[GY+9O_Y:;[^ MBS6V9_;\0H=@A7T9/,100V/;D-EKAA*"A>\R6HN3W:Z6K,6.--<'YPW2"S+DEJKD*CIK#)6U#F?*;0U*1"=A-@+:'2=CPYT4S=>M:@J>%3- MUPMQI/QR8"S]UW$CTQZ )[*U -\*.HF2]K)$/S6U9#\]\)D*@99^G@GTUC[_ MO(YJ5P*Z2K2F#/1C/&M2T.6,&>>@Y^BVN(0^9/0+@[3MS&2\$[;KC&1V-K+D M3-3B+&3= :@A&]9$L\=9^\P7O4I>K#4GMQ+_T&/3U#K+L%88:)UYA8T6@-AF M>LR)WE(+:'N,M5&" L#*Q:A90DNTNT&GL36Y67_M\=):]VR-6X82;YYXP XE M)MB.S@N>:."JE5:+@5M-L4&0XR**"G"TVHE:?J0E$U,,4<>DC(-^J&@MS>+N M;KZ^8UL6<1]SM;A?S^\_SNZOX(;FFYA2MC E-"8_E71OAM=J,I[WQGSZ5->RFMN\I\B-(,1"Z+KHJ6%!+S&9R2\>KK MMQH8TJ,W!1^2%U193FA:B MKP^Y(+__X8?)#S_\D)7Q=@[)GP"1JU94R\;?HZ5E>+45 MZ&I@5M2V5M>5.X+!KEFM+:-6J4]MD[&T$T!J)K^OF,E/W$I4EO+A]Y,__/B' MR8]_^+EJ,>R7GR8__N['R>]__$'LT'Z:_.YW'R:___D'6=U\)R'_KQ,J/^&?/>ZV?""PX[_X'B;>7#E[#UV!"Q-NNJJ MR@ 1\3;66*S*M6PC%L[]K"%;]=O-')$ )O$"DN).2-G@L2]M>Y!OSS OF'RN MP,4UJB5-'"^@FZQMW]1U#[N#[R1TSHRLLG;]?8LOH/J+/-(@9<^))Y6T8 MPVO*Q7;MO*HSD=I10&Q)867KM>90EO.5+E7B%5Z&3/0C^!DA] M*][0AUMX'XR]1^Q=^K2.745ZGY&P+>QN'#6U*\QN%EZW)*Q^>C@=^5K66"1Q M.VM?!+WIM5/S=;0"S8JL ZU(;1[<8>)NQ#=\79ZWMC*XEU,BV7%^P5)A6G"II6>M^9Z+X9,P(H*".*$5 M/2:MNO?J+&DMQ@_-7#>A[SM17$3ZD?,GJK**]K33_)[!:(+J2+98GDH^03I*F:B*>7!LT\2LW/6TQ!!&:EZ3S8>CDV4\BV-1 M24K#,Y$6PPH+,SD-:<"Q+_910EMD'NI3CP+4 M#K/0GA!D)F%?UJRY(/:=-&74"&-DJ.@M1,0KL/!IV M>H+WN8MMAY>L1KB8V38MA*LFX!@@(N7D&',F>5I]OUK'23+ "EGP! M:/5#ZE$TZTB ZW#G>,>-,!I@\31)RWQ9@Z2 *)JCX:118\@7 8ZL,J7][QW= M/=)((:H$SHJ#5)5IQ>E) &$?FZ%ZQJ MC=;:C620UKQ1%.K.+5GF=8%8K0J MHX&W*A"C5APEL"V!&*WZ5 ,QUK_@TZ]IYOA6O]K3K'6FR+:^U-.O@0UO]&[1 M7ZE!-5*HC1WZC.K3/&";21HG6J74H^#IH8DH9=73P:-H6S-#LF*R%R4G=.I0+K@SS]$/6ITR/_EEF%\J6/.7LSKK1 M\\\)R0<@Z0BU%Z'509JMJY=9VM/("S>S0%LJ8=#ING387]VA;Z^$G*O$B1)[ M)1W'7QHF1%B5!6&4^F!'OH-I1L#H:0UFIF[(?:;+/%M4W-P.7+O(U(*'$& 4 MPU1M^F_"B'I/@>ANX;ZM(R>('9?[HF##_^;SYN4?'2^ /?XEW3*,)&1R>F&YA" M-G^<^25EV[S82^B*1B^>"X\FV#+#YB9\"C@57?6XX8?%O$D:9TJKEU'#CHET MGS6&4)(KL7Q8.%WJBKKRT2_X\*0\_H3D')"4!2)X("4FL$M\X4RON'1W2^2R M1IH6A,-$UO[U(8)S*Y>*B\)_6^R!V7CV2B/7BY6/0SK000YR=1&Z%L]J0P0O M=-6>2X7^"D)$4$IM.Z_C+D!2>B0G:$/?C]XF(-RGIBN L6,S0!)LFJ3:<3VYD\\.Y4\OE56]P?GC?_S]*L3,4-/ M1YKDQAW#OD PA%Z@M]^)*@DYL =[H=%CV,F'=1!-ZL3LB6EIG34P>'F\*>OB M]16$K'-H!F(;;TBD5&QR:(UL*NPTW9,4NQ#NOBZK[JOP 6(^6^HE M!_2"#/U-A]RV(10%ETR1YR99B11R8 <6$M,D\?FD,&<7B!+,Z4M#Z+;^3/T- MV8913HOL(SC1 4'^>^CS^\G$>;5[']2#W]!3LLYQF ANOA6RWG4T\]GD.[(E M_YTXCRX3@ND]+-N +.F>?:EGF+F:2]9]"#T>LI!Z@F2N%>I<0 MI3$,.\XP'<0KEPM@]IKA#YPD8WIRZ4\@Y#HA.FFT!1!,$.WT#^J2",U8UGD( M;7V!1ALIWH#(>3;A3/>.V]>!L:;.+2>\XK M)WY6S(0:',\+-HE0]GTJ6!2/IV>FIDPY>+4[)_L;PT'W;BV%@9_()L/!M8$[ M+P@CG@(LTGJOJ0O/O>@-4[-K+Q9YP!"E5>4!_R(2B14STQ]Y/!OK>XK*-MD7 M;10;[I=YV5,.SB< J&VM2$NYJN?B$W MMXL_KY!7!YJ - ]1")ODS>7;)W;RG >+/8V8'01/4V@G+#K5Z?6N"R'$]:&S MV)4%HC45G!6B(YOU)8(F_!A(,E*0$/0-4&-[G6])3I 4%,F7C"9V*:G>9J$P M77*S7-R1Q<-L.5W/[S^2Z=5Z_IEW9K3H_0)D( >NYU,V 46/XG78C]D/,Y0E M[Q1ZGCKEVX2>QL%_C]"K($UO$/+!>(/PRJ,M^/EL'17>C$;YC,*-O2=F% ZV M[&\N3.>^/)V';#K#?#J=?& +7J4;)_78E[=CGIIC4?9-ZP0;2;8Q]@53^YP8 M^][L,#?!S[[9&7@>3%TW.H"'$(=CYE.H]P(E)YA34K0J7IAXOCZQ:R+9.M05V-]+",_ M\:MD<1/V56CV51Z;OLHX<>$=5!W\)]\^++9L]\SX]]BN>1K'-%$E%C4A(<9J MC<2I1%VU&#CQ4P.6ZG&[$A+<5!=H1.!AAS#[$,K+T? ?*O0L$''T7VFL.%$: M3H8L"5&?](XFSR%S?/EA6'TD-\%%C0J9"W<4#&I&Q(H!F7(F"_V4;D=X(D_: M#4I0('.#^,>(\9[.@J92>:*,'&3 ZUO^?/#T'@:2 Z$ "SRB=01IAX[J2%8&5G8H"&XDJ, M^:II7([)7^\"[B2+,L#;75%.4U! MJL>9(RYD"[;U'L)]R?8]YJ<=\AX=.)G MX3<:(F]J>.3RN3HA:C5O98I"BC/4$=U\H>TD#OJF]>@N M* _)I=49&Q*6VA"PZ5*S24S]A:8*VY++3#U[IA>91= X)6-/3L_)(I>N+TOI M-OP4R1=>WW,>/=^"U!OI96UX8'O8XI:VS3UO#=4FHU2+UIA?<(1GB2&J&&N1 M2\#Q2SD$Z*O<"5+FXD3-XB!9UQ4\?F%^X\]>\GQUB!.VB$<\*F4\&QH*-ME: MHZ!ZDU.B6V)Y#?R9&F!&AE=1(AFAB0@+6VB*;<7.Y;,D@GJ\JL,.NP9QB;2U$%3+9:679LOS@O,&2 M/ TV:4+@;;$+;KT9T!.SR0K;B&^V#]51LL1*S5EMO5=-2?)S5)8,>VMPGL(Z M.IXP%;G,^Y+,63YLFJU@G;G+]@B9J&\G[31*5&PR<".!VV]WW-RZ!D$_8B?RVE-O,?\6:UB8MH0.(<'XS+[-,>V_(%X?P_#D?,3>Q'YK-Y$ M*B06208]5'K0$K+.< W$-C!@#16;#+F1S;8&G1.T\@%U;[-P7.EA?O]YMK*J MTD-:A1YZU;G_.'@1_87ZFW5XYR0'*'RVHB[\5[WXML!'3+YI*V0E!<<4&2<1 MIQUW]525%)_W9!04")"X2,*+74J$%%300U(GRYO7MN7]!,(HN6#N8&?/\TWF M=%Q*-SR7;^7X=+%M:Y$M"*#FP[44\R@MSA ;*SNN%7NR!#).0"3: @E0U_'M MLD6JW&D"IX">Q79Y['BF+X[G0PCL)HQ YD+&:_JHVOJVIF+1HFDFL';IU).P M8P$UX=%H&07PDHE.2$[Y8AM&%T#;ON6TF_3E1=6I2!F#[XJ;_12.#3._Q8[9 MR=L#$R>9!AM(GM\#B.ET:0A89+F-8FJ-5HEMA[TVL&=DJAF-">%41"IZ3L@^ M*VTM<]E ][FP>T#GLM)&67$,M-VC,G-TBXRSQ=,R4UP[#+/=2R296=K[PNQ$ M84L05C&S/-OU!WZ59G!A5,_'U0TZ1,?.O>PU^"VE9$U] MZH:["3P-^@X["'#2)^-^PBDD/)>[KI.O$,[C;NNT.RW+[[+ZN\.R\U*ZG[B&UA*RSE0-Q#8P60T5FTRWDG6K)=SR( L>'_X;KYQ?$IK[,#R[C+]D3PPS385/^A!*F8S4%&PC/V 2>N M[!4&& ;%?0PF1[UZ,!\)=I[96 0&@P910& BG%")SH040X@?(1WK^-]*".AI M(2-.YLW-[$ITNY[]U]4OT_N/,[*?Z<*:[[!7'Y0#%86*(6(^J]^,P)T0P1"25'WC> MC&#KR&$+SI#W@%9\AOO9FLSOKY:SZ6K&IFXF_O0M^S?N?,GT_EK\8?:?G^:? MI[>S^S7R9>(0&\BSW2KVOBD\O^W?$'N3L]C-[;D+F 7:2/(@LZ-R#!,R8__* M-G0/L^5\<3V&^*O$B1*+)N!R]G%^?P_)%\W3,)J[O/'#KWD=]RQ9+-A(H@W7 M7NSZ87R(:$-ZU>ED<9UF'U-R[#=/H8GF.D]G6NH]"="=E'H;Y(F&S&5*$[,* M\O;D: TT0?>+^PON.DH50Y@WZ3UQRWEZ!8?PNQ\^_/2!.P7V#W\MO>V JWLO M86[O\I#,?7488XXYMS*V' 5HT0!C/$3>@>8%Q9Z^X6G-64Z>:0 M@,UP,PL/R9:I*]R%[ITWGI%5>F)/W(PN>3PD) @3!N5M!GY9('- I\A;?EV5 M(Q*&R9Q-0A@N 60DQ]&78*IG8_RCO5'QX7 W%DOOZ3E9;#_%HLOAXC%QO N M,;*SYTU8U!+FW96:BG*>1!%O.]'#1)1W$B>00]E$G,QOS1 XQ8MP>\%HBF+9 M)*,*AI&'/OK>$U]QD"\#5X?] M7B0,.'ZVJYH'C-$=YZ[AM&&,C><%6@I8MGA#5!3K;L5;36/+V"0_%I 2 7OV M^B=*^NGAX79V-[M?3V])_B*#;?!O%LN[Z7J^N$^)O-$^:CB*"OJ:OR:6O?LG8 M_S!G:E2:*>O-OB1CG)^I*86HKZNE8>#]96D@?GU5'@IVBOE@I!BM(:>:TE?:'"@\%1&VG92O[0;8R,&JML)6 E*FZ'B!*#;\%8/ MJLX^S^X_S=+:&5>+^_5R"FG)?YZO?R%7GU;KQ=ULB9SRUB!ATUIICFZM;FK7 M-E-<&[6SR8^FZ.(=GKR-V8CK2V,0Z51IS\ 8TYRQHTPQ@W0I'1)N,E2S.,>I M3FH,M$2F)I:D67R36@H?WYV(O)P[*Y.=F9PKZ*"PIM&NE#+0M ATHF158K.I MX WIS$UD;$EB-N/3.'49#BZKHO-&.=G$JO-)CS-Q!O9]XWC19\<_T.)DU;24 MZ%'P+-9$E+)IZN!1;+"9H7KNW72^)$RQ/LW(W6RZ^K2<6:I33:M# XY=6J7U M^%H$:_2JR7_T?-*(3&/S$K&JZ?C M&AC205C!1[T2^M75XA,LUWL_YOX=>1LZ%L9[%(GFE4XJWY"J(U M-LZM?0:RIV?J90@6Q+$H/-]&N[WB[F#Q37]Q,.[OP #OD M#?/##F'<>-!8A[YFKXJ+HBM1P<%W9/;J[/;L3Y!8PB I28!9XKBN(%IAR/@^,!.$T2(E(^<*D6.40LQE.E[9O M/W;R4O;/_QK20-O>>PD;'GA;$4 94GMP&$] M%_%^/;W_.&>Z2::KU0Q[-Z:6H^D(8X2)F M=B!=E1ODPW:6T"Z34K83;/#T!GBH]4?-A#JJ/ZI'PJH_:L)5O4;GO;+5B:'1+$G'2OUN&E1&&*YA.*( M%H1-JP(T^7$EM"UJH_7."E +%*#^$ZI%!I!P&N%G=W6T1?FI 0,XF,Q*DD#6DQ3#,( WC#1P M6]71:T?#"C,R%U9A5;U=AG,0KZ*+$FRAE/)RNII=,_V_>YC=KRQX.FDLZF59U,:@T:E4S\ ]!/2R0+D M).TV 1W/LAZ7V5E&-)G.Z9*4,.&4)V15:ER7-XZT:A4<9H;L]!)Y=2;CTY$6 MPX*J9&8G'PTX;IVR%DE"3(MF9#W]+^R-EH3WYL0@'8I56M20"J2&MT6/FI-_ MLLIWUMY*=)'*&O.8.5' 3E'0'HBO&DVVH8%'['_8)$2EBZ$*&*<7H9Z;>A.\ M%!ZZ6(G=BEW&T%:>M)T46,/#;$E6OTR7 [S=@/>A6=_P:;!90^^K0_3&&QSK MKNJ,T)"N[%J(E%_=&>#@7>$9,V?[55YW0?C;X^OYY_GU[/Y:O#R&RXO%/>$; M=+*&C^HQV#EB^V)PKS>;J!,0F@U"&_MF%2M4F:-$'%S/DR%ZV:ZM6,AY3A9Z\VM I3@B/V!FL0H=(,3 &+T_U+RTS]VGGV M$=)RX8RZ6$)JEEV:8^Z8C3#MT2=#MVR 9H66F3NL%)/DJ-;>*IX@8Z]&)0W[ ME%O?U:O^-[=I[$@#)Q#46=@L(M2: %IHJ".G]1B1@Q,-ZHO_2G/&]!TA^]-J M/5WS?[6G3>-TL^&!N)*\)3'-%[ .=/"6L\Y"EQ>WUD10EKJ.7-9+B^5T2MUG MRFU5[3R;]"7^^1CTZO 8TW\8B^@,7(;VTLG]N+%=BIJ#GO!DY#'S'A,D?',J)UX98,R MPT0QK3:LU321(X,.%N@6FUH_HE8ZIOBVE7: MWDPKM67M+5['AQ3;VC97V4]"1L7,M,"WLKV57$C#UE959-O:6LFXJZEF!L1U MLM9N:$*RWRTVSKZF +E8SV[O>!$XA$7$-FC[D.VY%MO;,'BZ]5[H1L@C^A^R MK=JQH&TN+ 89";$TT' 35ZDHU/\P.(6(AI*C7NDG'XFP T4V%APY8+0+/ESN M9_(194[(6M/UDJ M/%RF-2&"6GHT3>GQ$$ILK^'V/2^7E8+,N+9]PS:[GQW_0!?;TIN$.(GX=87> MF@UQ\>RWE7!EBS5"1+'1%IS56\@Q7,*1X<16?CB3XUN\? XL.;(9AA'UGH*K M0Q31@.T-(N9)'!<<3,PKJ+&_^MSK&![-3J"':*ZG3D+%A+L2PS'KT[BM*[R@ M1S*"I$PQ+1Y8T$0S>H.7X^/,C"#1?SY&I?9A+EEO1 MS%2G= HK"HIVD.VX:J@U"WTO\MA5?]YLL6[$LJ<6O<'"VX!B15UZ,\VJ5Z>W M>'O<3<1[FI TT)0+B6M"]_1KZ55,% ;LCRXM;?'-;*H]&3PCZRIRV>K:TD Q MPVY,2I3V:^5U4X60Q2;:D_C+&12GN_T+F:]6GV;79'IUM?C$6T&2A^7BGOWY MJH?F\'TTQ7.>GB+Z)*)EV_2EP1HR&)NLUQ 7M<&=N7!';>R:$;&:U9ER)MLO MEW!ASYR]*_G"\2TRPE/$7+G/='/P^:' S1]+TPV)!)$8VA!DU-D_/[Z1)QH^ M1<[^V7,=G[#%55U*:J0[S1<:\Q[/1G:H!L>\T]2+4+W3E,,BW6GJF)'<_V7@ M]AE19U&P;S)3 UYLU'/FE!@1!3RL,_">IJ%LT-O\ MJM4KKEK9=MD-HPV;%2KA/F#&.LL[C2YW&?V"]LX> $OO/7H,$B7\LI 3WT\@)$7 MR\Y9OH&N651DQ4,65-I'2_S+<6+\Y=N=\[\KWM\(SM@@+C ?R8/7H!DWR*PC@FKA-%;_!/;)1#^E;4<=ET,$8@3)0- M+C(DX50+@#7YCRW[@)'S^2_\$B*D_@P>V:7X*?"'.DA.\(=VTCZ6?N8-?\$0U4 'Q M1DBDS.9Z(?ZQ]K(*9I*/2/B0]BQY*'/(X[1<:WX;DSV3Y9FGWDJ,.N2:R?0Z MZ&?M[&WK&9;GZGAF;@Y@0-.2[<]>(4'9[):EWR'P-[=]3I5L-]P'?=3M_P5TMQ1AN<>;PKXOS)JEA9YZ5S>Q0KO82Z644D7 M2XNYG%3/Q#ZK["SGZK#;.=$;F-H^%WF?BTSM*.%R]-S\\NUC?HT\A71'H^6] M+1'$%]N=Q*T\XFY% >===P<6FVL&P'Z_($0XI='-U2"-OQ?IRPNEUGHG)*#L M?S39&!;D8HA7\0MQRF6S T_>;SWGT?.]A)UX$KCV>C.S]"Z4L LT=!*\7KBA M%1G$@@X=^%06>LAIB9(/$Y*3FY",H'UK=G_S4+EA$H>)'=N<[PX[X@-5LD_? MUHJ'&D4LB>@C\5,H6Q+[[$<$PZ"ULA=GMCJ^>FW0\$L& '!L-0()1D4/P@XT M467/PM').IN>;!2RS*;GR W' @G&LL?YGM.LV1%P76SE]1[X\S)1]"&>NHGW M8KH[ZX,P?G#U]&F1)QATI8JHF'V!<0!F;7%X,*EA "&XQ3:O M>YG>B5_2@&X]LP>()U&TP9%UG@BYTVI-#ME!=>17:U(%3?A;428USR'Y)J7\ MKO6;"L^!9'H4_I/NF&BIWXR7H:^?Q-&L%%KZ2+:$[3!072=!KE[:$L-V3ET M8U>K_V62W"UD1 E0)2E9FW<3 TS*H3PIX!/2#8,USN":;FD4<7E%4M$TV&3Y M!!XURY'K3,T&-]!I N0^H!4I9 ?0@5>MHF?TN.6G675P=5FB:;/I]ST=?/GG MNPQ^BD@H.U-$D#*[\=B_0LUW+89BKR((<@))ML%@'?*6;1+UBQQ7$< METJ$5^TNOQ'W#PEMNX5H2TGW\/(&>KMM MPVC'I;E\2W]L<1G3CIH-;J'3!"@N5]J0PKY$:<^K/G]#H)"<("E1G$ :>@9A ML6OH>U**5$+&^,%/-P=%>9A]&'L\^K)Q$H?O.RKY&Q'G@\_6XR'V AK')!9< M6+.M6, 38M%6(!$[L98[B68"-G@)4S'ECJ$)&]D7F+&GU71.(FTOD63G"8LM MO0>1Q>-Y-Q79L:"9::E6G>M&!WI"8*"9@ U6:2JFHDQC S9V048C]O2E%P6) M_9KXA? MM,I@Y9N*GW"^:GELU7>]#G>.%R!\V3OQJ%;Y;8]^Q_FZ4B:S[UOY!%T:$9CCJ<-SPJVT[ MQGDG7O9/ JK_*.(#C?C5(E,,_AY+]@9+JKYMD7$BBNW%R^**YIAHT<6V+-9/ MN'3/^.(O5KSBAAER0Q+F.'D9]1#^EHV2OD>4/WY#*DIS\B0\&,J'&(G$EW&< M$K>,YWMG)XM-RD$0R]9*6*T4J"W]CE.*ML9 72G8WPC #+>'[_#QI=MU%1"^ M M0WW7((5"70;IU+:M#'AEE^5UG=QL@N6XXAD&X@Y8SFEXW5G_'N%65\U+YL M\+VZQNJP5X-&[(FR!5S]O@A U-N^ECR/?J%_R_YWGM#=\=+8#M7*B_V::(:7 M^SF>K1?\1PQVNR<&(H13L?.F_[R$/.7*OTG2LG1I$FV&:FGSB$\QW1[\6V][ MG"K4"M/"]A%UP8SZ1Q1H=C60..:K70>)"1'X! C8VCNB4<19G'@[7DO^(*2! MYFQQ9F@VY+W*:FS/V-$J@6=[4.25UP<(9Z_L'S:*^6E)PZXZ\HW"-E605Q*P MIG9\ X?F5>-S0J(L+U\TDI (8N1+$ATHV3I^C)8#U^8 S MLK1P8*DPXN5; 9+63>0E!,O=U0\[P>LL[?;V.83;9NB# =5\'FCDA9N;,+H+ M@^39?[OR0[:%?WJ(/)=*S][H+"&=Z='E/HH5(/.#%X.P0O!Z2L8S?V7.\, M M[@0B<04FV7-4V,EO\C8Q--_@[YA32=MDE.MV,G(N3,03A7>\7Y\]]YDXXAF[ M( B]D_,>CLP3;?T#%-=B+GASB'@/Z)2E[PBP]Y(+*7H<'U&"H7G%3R@_M*$O M:86RE"EF'LP!'L)##&)![3\H?;XI^G=$-#E$#%S4'A6TPQ<:P4",16_K,>B" M'2?)QX1@O-,T?KD@2%:O&=KX..Q@%#XYD9<\[_+345J!74SZWC_$A*?)L&T7 M=,UFL@?LY,B92_+/AM5EQ$YU%K7 +VM] 0$KX(]P!DF) M0Y*Q2 H>16$\P274OR(IGR1EE A.,0-E=GZD=,IRK^(ZOGM(4\F0G\1VG3#^ M/Y_!-3+9N7@?%%N[?H= ?%8[P%15'M[V2!_G:6[O FC+CRN]W>-;I5M*Q=M- M4J>7CI8Z,^P7OL-/7.J!V-[CD?)"._25;5J\&-[Z#9*]EVZ(EG3#MCI,FGDP MS9INYKYVL2TU?)'G%W4@@Y;1UUGD4FY?:QJ867X=F=7E^Z7;O&P['66DLZUD MWKF5;&';\L*W+4=-?] 2_OJ:CX(4R6F1><#/!CG%\KYML:UT@<)-"1Q@%OI5 M@Q[4M!5>K^?).$DS<$^6UT6;=9ZLLJ0O-#A06?T7,Q2\DY^)*.63G X> MY636S% ]9ZB" LJ5(B%6"%DQ3\W/0Q]I^!0Y^V?/5;Z[U<#BO&)K9#Y[R*8$ M'/TM6P,G-9TI@Z$]P$W+4)9Y43ZUU< B*4D3\[F2J #'5Q(])PU*TOM;V)BZ MWSV%+]_S_M+1F]"4]"^%HJ3_\%?&4%6B\@_CJT"=+?C>Q;^.^G&/AZU]27C? MQ=O\P(GR';-A59;X)R]XVH2G%4.1!CZN! .\**SRJ90, M""=%=3M>C6 ^@C>7B$%:>56\53YO,T:P[ ML]9$,CBWW@[^G*G#V?6VZH61#3B9(N5C2G7!&I>?]"[;-$.QF M615K;\= %ML5^]=XZ[AYCT+%7/5%',\D^YV>LN'V0QG%O/MD7;)DE$$N#2RJ>JB9/]*1.B"6HJ@X,=66 MP0I9_,GSHS!,V+!_8UY,>423@^$$$0Z MIK60*@4E*:P-U3&Z<]]_G&M#/>&RV1\*;\W^\M=;ME/W1;5(R>HMA1C?)C6, M@CE*?A[5"RO'E[R'8U!$@/6^0#=_;$UUU_K/.)]959?U^+?1/[!!1=7LNPZV ME$X3J #@N:F?B--V<[?L6,".!\JEU0P-9ZEM(U*V])K@H"W%YLS5]&=>7X_Y MX]",9+8^Q%F?09)215J?3Q!U^G!UYO&@VX8 ;)\#G'%CWW$67"F3VS@'@]4O7@&[3,4I.70 MA.VB(!, (9Y.VS'KZYCMQU[F@>L?-LS6P3U$L>,OMO'. EW-,HZ^K[E MVS8W? J\?];>CG4E@G>XZ29N^0#3C@+*(:4+BS5ESHB0KXP*RZA[;9QX"7LAL0UQ.D82< M9+HI%2>7I*":5CU#(E*TH"HU<'L^*#G_F5S"IQ MHN2:G;DTW;#Z'N2,KV:DT]7K]4QEA/.\HI&(,. US83P\<@U+X%L08LQH_D[ M9>ZMMZ#.AF&OOI^JQN=P?]ATGG]TW+_[X5.Z/S\#(],Y*7V1R_[(6VZJ+::H MUV4.L[!EO\P/NK194<]RX/DJ3\Y>+Z\]KJ4HZG3*I)6I6.XHZ@*W]@<%"7O- M_IC'4ZR[H'4.!MPH>6T?\(T39V7OOD4N>YTWU+MRXN=IL('_0,NO%\>'9QNZ MAZB&N(B%JML(5ZE ;8*(4UK:G#-UGT>V6 (:?Y/%_U BT/B^\"*X/KB*Z\1+(7J%Q<9<]#V9.!&MC MG KBT7BQG0=X3Q\)1^\$DLF\E@@Z$8UL#2R&OND(0-2/(123'D MA(A!B1BUE&\"=QK9P!-2#,TKB!6##U#8KXM9_T+]3<(82;C+25T/XU;ZBLL4 M"<_ S,0I6XD> T7535BJZ2L@723A189&"CSD;#[I-NVVX=U2(Q9BOIZ90)4$ M/3T*3D:>"4_U$ZMZVWP[UM.>%QH]A@U9=_T*UW^63+$2W*4&*R)ZDCMY-2A. MYDL3ZUF.BPH.+9M%SU!3-<''@'&>ZJWZ%_ MT_PS]9Z>$[J9,C\#75K8#NZ:[L/82ZYHE'A;SX5JOG"FX_\HD:@U!1Q#[BAH M9M\MT=',OA.?-;7+J!!'D&'&S[2:*2YO&RIZ%I;(@7O8"(+$+Y*VX7#PZ 1_ M%S=36\3TMIYG)24C^E^F.*1,"9[CI/^.Z&L&T@4G" Z.7U4)K@)7US&/Z3O] M1/7EY3A<-SK <3=SH_, ^M==IVUBVI,$=;X?+J'*:(>"4Z MVG$HJ7&:]@$FU(EXWOXA(4&8D#?*'P,R;)',SSLTBZ(PT!^,E]S"WKB<*GR* M7XJH$$%A0C(:I"""Z''Z$C3O^HQ]+R%H.NZ:U9S]0Z6S*Q>SR'4;*FT:X4H%7=/TI!,7LNJUFO]DZNPR'U0%8Q M(NEES$ O +8<.<>^@&[+?P+\>P;\CZ+JTQ?'\\$P;\)HY?BT"!.7[BB]VL.L M]NAX)M%6Q+*9F.*BF$X[YK2WRPQJ0G)Z%^SX>@$4D6WK1 &K\L2, (F;;T'& MBDF?*%S1S!C7@=QX@1.XGN//^3M4WFE=G8FBA,9S#PT"E+V! A3%^+6\U+4E M@R8%N!5Y)/P1X98Y@KQ0.,]MED@7KQD;L?PG;>I(OT/@*>H04U76[C[IHYA$ M_P(8V9$MN1N?5NN(.O$A>KL/$QH;)F\T8N$IO*% 91UN0$%12R.>ZAWJ5B1# M(QROM%7#+B3?GV1!V&LGS$ZMS,(=%%ASK\((TKK@!J"\_=(:CR$N8E.S-L)5 M.IN9(.*T-S/G3)]0.R$YB0EA2FF)49TBWZ?O5M\1-T,D&Q W/?*\(5M918CC MLP_$3U3388"(:%_&8E6,JQ$+Q[(,V>H229@0P,'/XQ/:!![C/JM%X_DO-KP\V[<7/N/,*!#-&?F/;C.MM*.[61YC2C! M(22Z%7&RC$GRI6"3S(+#CD8\$\J&=XS0(BBBS\#="Q4).9^"B#H^/.#Z)?2A M0/9'QPM XD50^JJ1%[.?KME?^9-_+]Q<4C9#=.V\*M1BP/&0WS$..8FU=XQ# M#(;WCG$X:>KO&*_F$V+D"PH.2,H" 1[(-\#%MQ/RR$2R"VI+ \6S=&-2UIB9DR$PC0308'VW/W=D$/'C M5/QR8)6+[]0"1'9N:\#?+:GK.W$L7C>P'5CAP6&NIFR%2"=HL2VFB'FYQ;;] MMJ:'\>S;UO0VB2;;FI,'LVI;TY,TBO(,E0'3!P#Y?N5XV/+.A1LWC,S7Z\S) ME?T;K/+LG^S=W@PULZ7JW4^\]2N;H'1O$^7#L7U/>. 3%/(/X58^A,<9M#7/ M%1+I>![=.F2R1@GLXJ[".+ET8B^>/L:\(EOK'#Y#JC9FQ;::$+-D62.2EN70 MMN"Y9C3\/V;'K"*/DS=5SD8B,%1C^(5\R1C!OK4>9AZ[9?!V?CK9$+,K#F'(KY2+Z&HH_LF2S 3$XF+!M55O%@\!'?T2)U$!_+]:M? MBB7++J ^/;/_>-%_K\?HZW&CQHZU(C-&^(H,K+RW-;F%6[@JK\J)F),$,'M8 MEWN/M!U-5BT$8!A0:"9C3RS-5&1=\*R)AA71,C,F^W 7EH6W.@IN*--0^V>7 M[78./GBACU$8QT5&!*1"Y'D./!DM.R4\1[ 0=PI?G3::E?OF/B;0<,]\RE"V M[I=/ETEQ/95G(R7.ZT0TFLT364T:S;==NXE!_B: MIDFJ^8?D(Y=3U6#L7!O8\.D-2A[/25FP.Z@SP,Q*)RJV)[334F38+*>UB>%),XS )U--@[6:*D4OWW(G6VBY39]^QKF;HLEJEIL4Q!D"-?INR. M= PRNPU+U9G%.\RFJ-NQTY2VM9&1=I/3(EQB1MC&&$H;SD?8/]L==SEILN1^ MQIZ=+R1XC1>4,1KMO':]+2;PU#VOP5!GM^,UEJG#?A MP+7.(3JO;7-WI3A];1(/CM]K;*?[S$HGBIY#<$6^+7;K$P6K7-D'G/2QV8\6(=,O=>X@1G3*[34O>>PD25>:HYS/R M$>WS"Q)))Z>/(%&%\%D%B22O< MP^29;9M/&,C2+?/)$LG[EH@=Z;M/;/_O-V8C;-_[5]&6[[;?Z]NR@6P_G3-+ M8E,=A#SA/=F)H[V3Q;7K.[*3AGH_"VSC0Y%?TQ(K?3N6Q47^^_$8\D+;S\.Q M$Y?:LW@T-I@?J"ZWML7%COM@WX=!N.>5@8,GQ6E?CX+94[I9E&IW:34\4I_I M)H8D5>=K[=;+6.C=IUL+-'.B@/T:%[Y&,54]TD?LY-GW)%5Z?_9%'*=;:+_< M:Y>:G A?F,MDR!=. [GD>SX7EV_Y'W_QF%^(W.>W6_K"%%;3P-80V0(K,!)/ MJN):3%S]-6!-HYPDQQ&Z.?UL11/<8O,G+)%W%:W+J>URVY*&!?K91EBIFIH0 MP-56;!_I#$W P_:/ME:C$L4$FU(%(%K(/CJIN*GYIR<1#R M@0@$^[3HQ]9:]*.=6O1C.RWZT3(M^M% BWZT2XLNWTI.]R:B_SC0P'TSV]&I M,2W0JF;!%'LY%1KV1D[/5TW;2N DA[=V^Y9SV'K35L.T0/>:!6O:H!VA6;,M MD_)EJGMV[<+*F\W\#&ZVD&I1[=(_E6B-)X0C/<4,Z8YE)O0O* "J[FW84! M?;MSHK_3Y 9"I%I=4P'C:9>>_;(^R2%1-$C'2MUM 3#9<6@;HMB?5NN(*_Y; M<1&F51H= I[B-(M15AXU-(H"-;%34Z)/*Y)AE&YJR1>!A-UWHKTXWZV^*P0* MP@2[!U\?H?E;+Z#SA.X:SSC]C&'!CJ#/R>K[FBHXDT%[WB&%X:+(T M$,E&@IM4S8T0'XY\@0$)'Q%Y-WWEQ,]L1N _LW\$/M""!_%R. M^Q1SJ]/ (SYK:Q*B\E1-!8SS_$S/3?T--(>WTT3:RK(.$\='UO^5^TPW!]ZT MUG5Y_\5[V*C>ADX "_J-2"0-GMC"2IG%/OI4E]S3F1J>[9PX 67+ZD@*Q>Y. MXK6FR1DUR#W.Z$&"7@*)MIPF=_TY55*0;1$-=("?*+D5U>+3_?K%9G>7Y/[ MQ7JV(LO9U6S^>7IY.\.UQX*-^**Z6A"PK,],W'* M%J?'0+$S$Y9J.I8C\0:[@";B&8#8].)_'"/J02Q7] WV3R]@$&E\BDM"" N9JW%K"QGQM@X"UI+]NI!1,FZ-5'WNIZ0E!SV(Y_XSQ&GLOUA\=;J;]IM--6V#AVVT' S(Y;H*+9 M=6L>)0_[,PID6Y#@09$M$,&V_%XE',Z0UI2=[,+=[A"D+,;S8!LY;-R#FQPB MVFA+;0G@F%,W,3.+:H>-9E1=V*Q?+M>(L,6T3 7;L(:2LDK%CH6W3UG[<2(G M'Y2R.,!MPU6@! [OP*1DNGQHJ@&A')P47-3+!N?QF%MK[N':\FZ')B]#W[\) MHZ].M&F0JP*)K\T2QF7Z7 )#U>@:'QJ=!EB2 MNBUZ"K,R@^( J,92 MXD!C"!S*$NTVX=@.76VTPU/MV 8=-Q:RTX)B]T+2SP(RD%W]+ 0-Z!,,VLNZ MHU5I13J'1LS+MSOG;V%TY3NQ+KFC%07$U\7M M!:V\'39'QWD9W)8_63EL?WP@G0S@=*S)'-#(7$M\[.ZJOT]26BI4ZK!/8 M4(]E)&S3936/+?5Y4M%F(&9)R:=UY&PH\*.OGE('PU-+%C)?7%%=:SM]=KA18#L29!LR"5*@1J<)RZ TW\U*-: M*0:)RBC6KI:W325FC%"M7!=KHADNAK>X=5Z,&6N[C;/HSG(P(6VULT\QW1[\ M6V^K[-1AA&JCG=5%,[.S L\R.SMFK)T*3HC )T +0^F!REG<>+M>+"M)!#Y MQ@M$@ZEO;36U6'=WTXQFHXG%RAN>)AS+3"O6W:HTG=ILN!WJ*)IH-S[=6? ( M4"-!*<#.6(T2[Y^RI,E3"%EI7 UB&YJ;@HIM!JAEL[5)EJ]DRN3LM=)V\K>6 M#]N$[ZDJG:@)R4K3+(EC:(8,PS:3RUEJ;5X,.VPAC8A::6@MIL-T/6RF:)NA&K/B/A.]NZRFA,S#Q"J<] M67;6H/RL[%D_$0).-.:B([W]YESPVJM! ]GS M,VG-9# ;^]=S,^H;-JF]38X@=DXF71;_-(L&2F=BT 6K?=HS4#T[<]9,!3.N M/YR=-3/8_N:&$SLK:RZ)?Z(U,]ASL>:&S-P!RF=J[":SLGZF$>5"XMI]5DYRZO[C MX,4>K\&D?@2BA,:SUP8!RK:H $6Q,RTO-6W)H$D)W(JW&3(QX(_L&*I]C6& M9Y=*285J4JX*DC5J)N'*2.$F)$,=L)[H+:5I.:9YX"IKJDFA< JG:1C.JJ-) M0-!*H"EYJ:G DNX9 [QD@Q=LPV@G5N@]C1+VZ:'F>Q(21HYDY;,80:2*9^9" MW:[GN Y3/8/&S:AV:/IAF(Q[4C@N=$NHI8]:AM\%.?:GD%)"4M9(@CY M)J>3EX7_UIZB,+W(O:';X;+[Y:6J:>2%F\6VO&,ORO3?A!$3(MS1M?/Z<(CV M87Q\L.U( ZFL=5=A\V+7;0G@E<#NQFF])#.G R_ZG?*1M%2OB'?[\#@UDCBO M9"_H897.[E?NQ;9Z%%^46E(P8D10(XP<2>DAN2$KOKEUQRXFI_OLQ/0A\EP* M_6E$/=1L2B TX29TPV;DFFX.HE>-2-PS/SJ<,H95Q[G3)ZOAZ-=] %N.B:=* M8'BD+ H;912YAREHIMFEZ*^KQIBBW-\Z@AB;C"/O$]$]N"FV+TS]T #[I.EF MP\6+U^$B>8:^!M7MGL0=-Z/@[(),1"M(_I*ELNT3HD'+'%(6+X'"S5[/3H& MJDZ0[6@@QC"Z"%L)8K0A@!/%:,]A_3A?E.ACOJ9>CN";G% 1S\ .8O0@=L58 MK2U3^!"%$+1]>V"\)]-@,V,;F#WP:5:DL G=AA*%9B+*"Q3J<9'+$YHP)^L9 MS)$FA*/QEC\Y8F,]PG',#U7$L3J+R^6Z?%NS836W[$:8J#W&304[:C3>A(;5 M;=R,KW9*."& ;<4EO=K"V*#::WHC3 LUL2Z8D286:'9IXC%?W331BKJ'MXPU MZ+;-_L-V8%'XPIO:ZLO=->#@Z9^1,&7-TR*@Z)P!1_5+=% O^/\R!ODB<+ W M%B<)Y)4PL"/\G@\G$"9*]D=C>S'$Q8S(MQ"N&FDW0$2*H!MS)HF,"P1K;:HW MX7JS+VG@^N80!1YT_;MSW&1%5)I.9H>$$L-N(E 6Q37#0 MGFS-43 MR3-4LLMPN5+1#!LI?MV'2%"GNBQ3Z2R+ZP+Z$U#QT7"7V<_TV7/]AB+&KB M>OS,P/[L4_Y.*:A4[52*KYBN_LCCV6/?4U2VW+YHH]AXO\QK2\&6Z4](/@(W MJ/(8S'-4?=X M04(#)W!561!&F(@-=\P%JS3>:4;#:DO73,,X_RY2Y%YB980D6W^BAS4%B519ZC(X"Q0%&T.2DU5[,@W*;E&?9*)!-".Q4B33E*#0E]^ M]'D6U76G,=(_BH8LZ4OHOWC!4U77M*-GF:N#&5XM&ID$GE$"C*D0#%S5MR$"&V]LV*4/* MP*<@WE/7VWIT(]W4-L B*443\[EBJ #'5PX])TH%F9 2QJ ET, ]Q9DKF[WN MO8@N@COG[:TT$RS$AO)! M"(-DPY"?/DP(C(16>NV$"1#0\;$HR"EAS-8A#+9D2X@F^E0'0TP+4[!<20P[ M@L%)#9,R4=.+#(P G!4QIS+CVHB3#- .Q5!'F^I0Z,JA79"/U,.*.-.*N@?F M 1OJJ[.'7[1GPA-I(C[,[F,R*J^U M3R&(\X3[=([K&U%!D^2H)*)FB=RL_59R%W7;D&S:@&-'&%8I3-.] MX"UJ=JD!1^;W@[?6I)1V$:NPEFD4L1]L>.?5VA]UE&$7A5PB$.GOV M2_+68BK4).PRIB91FVQ+A6^-J>D9-+4\>![$Z9"<$,DH66B(+84N9')>',_G M6[L#6Q4CLLTMUK'&8J_I(UNSXR3B@8%+)_;B%3O'.YM%4-[!?E#,ESDZGJ6V M%;%LI::X*!;:CKF:H@(Z*? GA%,@@@1$,2HG$V3#/%'6>K*<$'$>PQ=*DF=0?;&]>,R78C8(6,DE(H!: MZ$D/KC/.5,;QNENYR7\#9O#ZY=BA;8'^AJJTU5!FV3$)Z0@ M;\_6;\C)*?8Y",APKKNH4\FAO[1IPK-,M]5V>%L$F_=+>\&DT MS(K;/O&0:^4T58Z1P&&_%I0P77\;6 )"? E8XT+]+&Y)7VAP,*D>T_G0_I'N M=LY#^)5&J[<8;AF4>5A*2)P#=@/CV;%9 89V&-;R4V^= M!D#^ D%O!(Q\:6 M?#^L<%W9QX,3.4%"Z>+1]Y[XQX@OW^X=*-JEV8LUH^$Y.E.1RGZO"0?%#9HQ M5=U.#XZE9DPAE]5+!HJB5GAE5KH;CDZ<,'E=W%GL:.1#>O(7 YA+2 MKQ;;3['H&*.0N0$'3XN,A"FKDA8!19\,.*HI58Y#?!%=CP#M(MQ>'&([FFMI MIA%.'M-:!!#"Z-;+^ZDCVVH6ZJY[2?(6,?-2=MG#6UYU]C- MK;";968W; C1XVM2"M:P\WCAOK.!R)=B*#(+V-$OXGL$Y"U!=>+^3$$PNIF^ ML']]HDNZ$P]Q^(]K&NU463WMR=AB0N8BJVVEF88%1F'*9+/V9Y1(2HKDM 0$ M 6K(UT8]R9Z+ZJ2B\H63)#H!\>WVVHM=N.""U)\'RJ96>3O;GHRE=JL1V=AN M)33LLULEDQWL-J/%T_4F)"5GL^6:2U^SW$TF[# Y;:OG,$K E2PAINM/(T?I.!I?HHE ) 4F25$1$ZM.D:K\H?+/T[^IY]N'RS#8T WS0_SQ M.K.I4NA/(IHA'H[1MQ(JLWPC)#3S;\%=M]H$4;[O?>0CP,_9$"0LQD!R$*?) MGXDFD$D)NQSA1O04IXCW*8C9[S&O9*+_=O9=%*6OBY@_#.-#I*HQ:X1IUW61 M0K"F&Z,C-&LNC:1\F=X;9>_=,FPHOI/M8.D&>8O>A[2%B>7)]S3%M>ED?>LY MCY#<[='XP7GC&Y'K YT^QDGDN&:GZB82MIRHS415GZ;U^!:]?:NQ'XC2.F;.1BO56$NJ>OB;KK]1_H7=AD#PKRRUT M)H?Y5.&T*:@^8>A&"^EIPRG,-BKVA-P<>(;&'=M*PB)4-ND) :I$D"6"+OIS MB%ZG@YG:[\_#MO]"G6C]-3QQ6G(J]EORDR< M5+$(3_@J#/28Q89G8J=Z\9FU_,L9F2<;4]GRI#V=,S'1LM"=C12(V&^F!9>] M&2J0/"=3U4P!LYU_/1]CO6$3V<.$"#+G8:IED;M:*M"PWE +)ONR4Z!X1F:J MF0!F-'\X(ROU7OI84069,['2DLB=K931L-]*T[+=7J?!=C+9"R&K+E7#:@_DZ0/7LC-AD+M;/-*)>O;H,M*&>5"=: MEEIED_#&)JHB9)^]ZCGM9+QEDD30M*5X5;\30;S=_@!">FGA3AM3)51UNI70 MMB5 2*MO*T M2FM0E1146P[R.M=.C >1CTE>'/_ ZT?:M,(I1+DZ1)'IXYLZ MDG5V<22.@7FD𘏖E%L8R(2DF>M'G3H+QY<,5(&0?1CSS[ALORY[?@IY"WU4S[? W>G;:%IM__>_"ZDVCW'AS&LC-K ML+R_^YYZ999=5O8QGG<>H"V7@"@HDFVS\F*M6QEL@V[K(-XK' "ZT9A;D M%(A?I ;;;FQ#K??=1K#8@ =9];N0M],I#+KV%\.\F^6_QYE#\4S2![Q_YMVT MDK<'&GGAYB:,KD+>0\<%GJ"+ [R,D+W@-47$><+;3JSL#:\9%MHCWC;LZ5[Q M0E<6]4O>K^DHHB=+# _:B!NR91I^W] M=?E#8$+_[ M[](K7-XG)MSM?.3G #B6^!^)-QS;.SV M>ELOH!O.L_=X /X?&+=K:.6E<-UZ%,PV>LVB5%OGJ>&1VN4U,21ID<=12!F' M !+YPM&0R[TI)(*R.CY_>WO;T*JX#0'K-$\CIH$>2K!MTDHE>RUTM*!A4Z_C MDP6>L?4X?*.47-* T4JXL.AM5*5"04>')77#I\#[)]VTFY!C7.OL3RZ<@>E5 M$6VR.AEGY@8W(8!/"@)V6IJ1D%=LU^L$;[_-"R_QG>(F%=TMBQX[+VQ?'9/] MR68H/=X)*6KN(NUI*K:(DCVD&1K.T:Z-2-G!S@0'[5AGSEP]$4"<0]C12BA7 M5;= I_B)C?>O%3OZ"1S='H*_!'?!]3KXA?UG]5LBCH(3KJ7TU8$CVX3\]N'# M7WY_]^&GZ]^2J'IV9'\-(TB]V;*3! P.73_?J!,Q"MX+)3O^S'I"G&##X#T& M2AD?SAM6\:<3)EB@RKQ5AIZ>!1$/?*>)5U8.Y-3(,([SOJ&N1V/=04\%C)C< MJ&6_DKTHA<1)3]2P4K^W9,"D MUXDALIMW!@*;JK?QPE)=5G?RO4GOWEKQ": M"7UOXT#>(^,(@KR23DMZT/%5WH1U4'@=W*CJWLR(9 ]7@),,?KB.21T41=H? MJ0G8'F6I]T+20UJA,-J^1PJ5L:+?4BETX,P; =A+-X(&,*%X5/G+_+ MMP(D%63ZU8DVBSTOAUKJ4W]_T/38&V !9F M_+_DT?&A;O@8L[%*G"BQ=CXNZ9,7!"93_"/DA<3S0,03/T9L+S?0K$M' M.E]/KIFX/GVY9)BS].9*.0;UYV)4?C>27I/PD9%/6"//938/FKO7LW!5;-N] MI1Z4,LYE'VB"I2.=KZO23%R?KDHRS%FZ*J4<@[JJTJB%OQK(4?TL)C%@!U+F M%89T52WGLIB'&T%_XP03AS\Z-G'S!>SQO,2BTE[ M02_WU6-D\:BM<[INT(?(4$#W2KHAOZ+!UJ*]G&NX&IM7// MN"&SN6L;_DZ+6EQ]ULHU(7M]$/"X-/?PA^?Q]56TXQE\J'ZWI9,G+'[[33= MO7K@5AR2&(/C=4YDZ7W?&Q.D-T_SL37?/ZX M;. Y>@PY$?-B6Q]HAG;I_?) MX/FZ^OX_4Y\K0'_7"T+?XMH9RWNUB,O@'[+3&#!3LD1;][QP8F_WCX"5O M<]XNBM]+KY+0_;N85_7\\<3*:R>A-XX7?8:6]$=?UA*><-H56"!XL498P1!: MHP5+))>O"$2<#-SRBN!45X2X!+=/5P0'^..]^)(WXA4.4O "K2*T:[/Y$#8OV9;IH$\FB302#I,0AX2RFBWEY MM:XOUIQ/ HP2X)1P5A%;3MCZF0("S$MF/P5+L2]?:(A%^(2D[_2A;B'S]1^(>XK"-OO0MPUIC#L M4MPG5V>V&/?_04Y>COMCZ?P6Y+YE5SN2RB)Y<;1(\B:$@A4>4TMCHL>AMG-; M2P>?74MBT>]F51W/'(S7U?>:97@?!L+211VQQ99#:VO2#S':^=Y"-DQ@GU>* MBJ'.\GY0*\N@R2'YR%F)0%CUQ.BV%+@:=U[%G%QDDV)KL2K423$O/'4>M[NG MSLAY+WJ?QUOQY$.=[W*GF[K^TV?>P4*G%F305>[SN$M)!]O7[HLW1_K60;9]^?_5-1GN,=NLD>YKU:)^:= MN,^V%PP8#+P#)]KJVF#\T<_;E9X6INX]BF)#''K=?2V &9T;?;50' M8SHMV""<<->D+:'<;IX_TB_Q=YW+-E&N0\X'U^+-NU=DX/.V\4J X;H M$;,.#)VO(S[],XQR,_$^W?6IXN+=7_PJW'KOGZ>]I[?G0L1]IIN#3].+'-W! M1%D6?PVO1%3?JC_ZB,ZX[TFJ^-:^B..XRGZYKWN^E'Y^I7I2ZPKRA8_U?[ = MV/N:M%$(*(0T1%)-4G.$,D81P9O?4B7X!1DG)ZMCZX]^]RKMLZ\XD0 MFH#W(;+QW[6KK4[RR%Y6#/Y>'6Q9.IM\JRT9GHBS7ZG/4,W7)-]X@:AX%7]K M3^ZF+7-5R\0<;[IL6)M-)\IH5LY\G:XF2HW^38Z'?X^KM'R*QUFDJV._LS5: M)ASB$GV<:GF^K67[F7E.BLWFK\"+BI0D-"]Z//Q[]*+R*1['BU;'?F=>5"8< MHA=-2W\-[45;O@W&F_EY'!]^'4XT3S!"\Z,2#MZC*U5.]#C>M#;\.W.H"OD0 M?6K.T:_"K9K.?S$KOP+G:OY8U8I;TG9O?8&Q=57YU2XEY[=^_#INJ[M^ M.-U%]DW1+^(;6"[X.>578%7KZ9NZ= M+!%MQR)MT85UUT^8WFA/AE@_!N[%>CPAXEJIZYI@&6]GU@YNJ(_3 M?X_6$QD[O]9PP\Q S9&LGR6=5$N=X9RDW%N"O>'"+8 M[++?B=C)GUL+N9&^PG@K MXR&NR^<9->G"B+-W=GQK+SI^JL:!-X2P>I$XBP]7*MKUZUHHJKF%ZS!Q?+R% M0<_,>UP(3*8?(W>YRLD[<_3-H@[12[IC7O/DU^#!.WP1#E0Z"Y_V0EX:59LY M$=P&Q8PK+A?[[S:,=G SQ$64%6V25M ZE1A.W.IT\;- 4W=*:)&A4UF65.O: M,SZI"+AS4MQ_[&F4.!Z_=$Q"0M-1X9_%Q@/^E V<;ABCHNY7S.M^'6!PI-A- M[_.4$2QRGDB))A&N55[ZC'P1E+%2SX:=C_8JT;]'G+,A@\1[H9SYU'DK79X6 M&L>G&0B0.2T-*)I7:N1)YW9RY-1F4G0DQ]%>E/EJ$7]_S_ZG?[U>TH!^_?_+ M>YKFQG4<[_,K>-ON*O?4SG'G,%7NM/MMJM)))DF_J:UWV%)D.M$\1?)( M7?X$YR;VJ;P>TGOZ0G+$.75C$/F32^3Y/?DI>1OAN5Y8.)XZ0"#EF1XH:)[H MS=MXSX,AB%@7A>5IXV7G(IW7D>X9 ^S#_[3ZS"D CGN8V52>T/XKFM&;V!BW M003+!TIDSW"1S-A+&LXD0 :0.'_N3UD]=U)6/_=)P8'[[YC/0_\"7\>Q*6F6 MQVY.B5_6VS5F[A7>D_%46;.-%:D.4=1$(M[ ^RWZF;P=W@AM ME+)W*R7L,,3_@>PXB_\/<+0)B260/WJ9_84O]U@7&)Y\E#=+J'(-=%EAJU^2 M)4*8:+XOAR5BW!5I1K[4B#9"F]=L-9]$*7F7RMCW*^$L$8Q)_I9G?,=Q%>V3 M*DJYR"7;CM#BG6Z_YL77 Y1@0+T=[/LMNAQ!!R_RC!9:CRJ#B:!$C)%<=NQ7 MT)%32Y)F];U_%2FA)]B7?I"$O03/NPZ(B&L?&&K M7+]'20J)/J8K7F(U=\% [W 76 ODJ<)9JGUZQKJL>AXO8998EG0>IZC'YB[- M1P]A:7(^I?;&O*BEH6CR1OO"[_M8LSFS$44 M)P4ZGSI4VG0Z1;14ZURL]QT_9*>>D,BAR '&LE1D"(\(Z.K58NJ"FVLR6MS5 M\5/1)WP 6Q6/Z@YK:E8':*7Y+W9$NS;2G4UK\@[R $L?>S MB&'9Y)U 8^_FC.S8MFW"#6N4E73<<'9LGM)$Y2O9*E"RI6PIM"7[*-F27'7P MQ'62S=L^S8^4/K(=8A)3\S*N[F[#PTG)*Y[UOU_E976;5_]#JP<:YR]9\F]J M.Z=:<#P\%UU(YP^B*[G1XLD;C:$_:G =HOR6_NA/^)F2.@BO@MAZCY4X9VRT#G:1 ;%'FD6C8*N-\A\K^@U5JR'DY=I3P:W0%T# &U/6UIX7 MX*"BK1G;GGS) 2^P/-5;C;/4J/:.=EF%JI[BG&/M!X,'&?7.J5=#V*,-C9#" MWM6A*)BTUUFSEM+* M7X-P^*]TR]A..W*YE6''0G?=/H$,_FE#P71"-T]63Y-H9E<+PY$&2B;!@W"6 MQRJJZ#K;WK!!AKI,'RZZX_@)9W ?-R*F$_EP9G4ECDS8!I5P])!=:I2<'"D( MM_J:%S1YR8;.058L=%?J$\@T!UE04.<@)T_V.4B@83B,QRLYXV23X$&XBV4E M.FKY&H"S](CCOY\*<,\T85^T\,P"AU7C=SVN[K.X/O*%[BCC?#M?(F,213SO MFD$1NNM-((?BEY/Y[1BWHGC9V8SE](*/T;NIG7_5DLD.B]5KJ8\G8[";B'@'UH0?]#CL82FN:_/Z,HF"N)$ZW7A"=OB0L@L.!7A(-C(;]U(); M'?@JP&,=T$WVTB$Y.5N'B=XMSV33\OS>'5O!G\>E0A!FV4XB)=1OOC:R;T+ M7YQSS2WP?K)'%N0VS[9T>V!@SRF5VY#-SYB6< 4I/@!VZP83_W(,JYT%QT)Z M?7EIY=6/,R\U$-[;S@^+\Q;7_)!KJ0_0J<(RH<"E \I_ !O MP']T[9PU]%AMM)^/)-KOTR-4X&P9?%DE<>W899V4.$T05CG9%Q1^E7_Y O] MCP1LCQ&OBWIR51<#V=>J2)X/%;_+Q_ S77LUB] U2 I&E1);SOO/0UE!%"J?^-,1]^ MS-.HT*1G$XPB%*87FU;,WVC$ E>VW625> =ZN&L/(!N*$?J$[67$OP;0-.8K'2(D6*Z>1PTE5SJ$#EIJ;00DM$36?:]2R>(UE4?B11 M/0;YP0;AK^,:G2&"X))4"<7*UBR@)<-%%D65K$\48PN/B"F8Y30RG[&@S1J+ M.5;])(4X673.'6H#7)(/)87L;QD?RA)P&8_YCS O I@FU+OJE1;3YV5)YB(6 MHBV11ZX[.8W0EYD:D_.O*CGQ2UQ"NK3"_P:W>=ZB#)R].=41VU+MY(-7]N"Z MN6RDD;U K?%55!3'75Z(UWC@K,:BJEXL/"?V%$CWV1X4%!?UXJEK>PJ+ !II MX9'?.*:]Q0NRO=TD&;VNZ)NM!M0+,T2[ZPCF9WLU6F#V=\+70!L$;,+1L7L- MS2$AOVT1Z[B+) $*&I7T.JL9?8[BW^MWT*Y$DA/^V*F?'H&/MLT?+J2VK_=' MQMS(#^6R[T'[1)*$ZL3&%(&J?-J.'X7'@C"'P-R@3Y9>T6#+32VV<''E&XB, M$)&4B""%NP.?3^0!W_#\(>B++ ZZI54W:@(S!ND]<'!"C; "E+(&"N=PB-09&!:C0 N8ER8+)?KNPJC_9-VS66=;?F. M6.RK:?(.FQ#9O]6R,AM,!;\AU$"!G;U+W23"Z%?JPZ-/CU*9$Q$Y$YX^JFFM MB*062&.V:;)KN?.B1IE_IJX7%]=;N/VY.S)6_WZ(^(_F5'93M&4(5=/(X$6L$CYGYE"94PBL7L)K-@H84\!&R>FW\0Q:E/N5D#]M YG21RP<5$ M572*+D;2PR^\F,1X3S\=K?ZB*8>N&[IHE=&!AM&%E*2=)TK"I*%,)&GRE#+A8IO2Q?Y44#/&0]FT)XW!4Y5?NFI,ZDZ N$9>WVA?IVG^ P+JJ4JN7IF< M]-K<'VL\&3P#'RNR;MY#:: 8]S@F.Z9=DR$UG17IVCM< 9=5 !^^4/'3Q][U M\2R+QM,];#DZ'38+5?SEY42%F-:<(TD&L1"=Q+OKE*&U[NPFRSD*?^:9%'Z2*LJI99+GXN.AA.0SZ! %:@7' HM@"\ND_GE9>W4 MPR<;!NTU*WXR>/WP2"(Q/CAL#!R0O60!/HG(#M@@90RC MO:^PU$1;M[$33K=EI?SOZ(%Q)BUH9%KW\@4E J3JN/9T3KE[UKFS"Z]_Z4LV M(+'DGE46@@7A0PII.)"C)R+[9[;'4CP<+07 ME%IOP1#L.K\1@NKE/U(\"!\2OW49)(1RO?$2^GR!8;0\FD?&YB++<''/<@9K MF1 LIWI6:+P3U1X!](-3"RC*^:B3%_]UR+*^(FXE;#)GI^N9)%D1RAP$GO!* M2GB][,C6'N>0[K&*BNHL\CW3ER3+^*L/?E)B!@!UGEZVEH3\LHJX!,-@[_.2 M-W(;&"T&D@XNM(Q2C4<<&D0WI* U@O$A?E.7=ISLM,3-*7FE#%#J,9 KHA=4 M4TU#/Y_=ZU?(M)7ROE45XF1CC('XA4:97/:/CC)5R^)&FA_4Y8HT< MXN*CS5!5&>--+)5Q:1&GK@!OZ^0FVI?T;K?>[],DAJW:(W_7BWUTD[PE(K$Q M,/Q,&RFX6#2'XCP"TY1A0HI2T^48$K+JT4YC%A\/]AK-B$0."9]J@Z*_EG0^ M16Y^[A/UXAY3@GC"3USD23T4@AF^5)*^K8SF5+2$9MP,GOUA?:A>\X(W$!^F M\;%C!!>RIBG+(UB-&R"D,#5%@CE.RK211#M\,1;1!@LU,,VJ.@TMS*7DK-*V M7Z2$\^8TB9Z3-*F.O/W)(5.M&F=?5XZ_ .Q_DGJ*%U3-A5FH0;=\0ZN3,''G M.$=L7^,%BL66;J7A60HBPJIN\!+8^_XNZEG;% E_*>!68]\=&-QU'#P$G\,# M!^7=KG/9<_U<'VN,*%,&.XD4M^4Q2P MN[I/$5, _?5B+L=;5#"(PD5,EOK4T-I[E<87Y M/9/]H#Z35=T0?=C_XFYXME63_N-K5-#/;).QU0&N\K*O _*\0P7DZS.JSAD4 M9A@GC.@QFR!^809^KO]0O]>E4^0E7TT>A _[Z1G&;8/!R*$%IN64^5CE\>\D MNHQH!370Q3MO9[V.X^( CVS#_W1[([,6]A3K?.2#CDJ#5#0P$GG1#C7Z#&!^ M2L11P_!HHP9:$3D4T<8*/\9,49D26%[Z6N*-EU,!;B K:@\$GCA(;[SX"E._ M\=*'@/?&BQ]GMK3@,V6+9\KOS\>1>ICVO6X\%*G&0Z6X0B7]#]),/(U(HJHJ MDN=#):X=YD1[QK.B;*M=1,6Q]<0E/_U(^9%(VC")]83,2.49(Q3'#2#D3!'L MYO2+.4,@41]8.KET=T&CJ002;/P%MH:??A+A!"1?7BTA:N4?HU;#@U0G--7H M]L8_C.-0XM5HW1HC6/VAO2L4WFYM7OD?7-]N*:T@2@/;HUUG]T7.3+4TR^N[ M]NPE$]">RU-DY]ZJAT88>R@O)OW\.,F(I&7UY-"V0^.DMWLQOW@==':8OQ#F MG2H7P 'Y98M]]\$+0(;A8QHKGLD!H8C4CPA3#^ FN0X93$:$S]DN?;'TF:LH7D=58QSF&_KQ:; M[=_[P]%8ND%,8].48IGQQA'%GARG<.V>1S7*<)-2$5BVU-2_EG\I'=PS7E_Y MJ7Y2(RR;--;8O\HS%J+$+2E5.-MS#M6/C9XD]A70D!SN0PTA*>S'H]W9(*VK M'5! 57M-1):XQVAUZS/*>;IRT(G4E>QX@64>::^,7]ZYXL=] =6$U?&>\52Q M&+CYUR'A^2/U@+NWS!Z40HHKWH*[8TPOF<#BC2>_SB:BABAT[!PPL;]&/4?@ M>\G+BNR!FQ5/85+%$/\M!Y8L-+*\(B7=1P7SSQ3^5,9ISJ;AH.+>6'W;%U;W MM=8X3:ZF34MI2V;LID3%L;I0>&W[.%>$?$A>7JN[W??2O%,:@AA2_+.)Y0YW MIUB!13[[!#)91S+Q$=!D6S[:T2-[A(B'OF Q<\";TT'N<,Q)43/+4DCT$ M/2@!&0GLW=UD,3G8IWSWJ?FV0LSE>)Z5=3%"R[_XG)J=@@>4,QDW:>-.R>,E M"N@LK>Z_ZU]Y;T;!=PB7*":/,,&CNH2=H0$^L>1Q6]LGGGQ/W0;()<[>?$I= M<4ZU)Q\^5W9&UX'S>D66:@B+\:"EH#3-A,H;DU=YO].W9FL#R0T6<#@:(UIH8//!PI@AOQLPI M(=5L[8.\;?WQXH+K39+1ZXJ^V=8ETTA>5)#MJ&)BH*WI74JP/6'8N)HP!%U M(QP/.?+"06IU_$:KUWS;\&FS;"LTGM'V"*#;HP44Q=2\+N MRS%,"LT/HC@6#12B-(!43LJ?WM+C.&[!Q:GMJ27>55.8@5$JR#IXQ)21XHBE##&UO5#?!M M"[0^),RIRD><]JSEPD":P/I9&8=TVRD M$87?J=@_-6&^A"X?)5 FE).&BG).&VD:GE<-+>'EYO&Z+3RG1P1!HB@BSN!+ M*4![?/#QZ4HS@4!F=UK>1\FV+S(KJ #F[S;#Q@E;@.#.T#H/CBF9E@3@0LE! M;Z("5J7E/2U4=^0D_GR$!6V>7:516?J=['G3"2';/%!HDY9^I 04])>XK0RTTX,G 2U!TO=//5,1GGC<3QRI@SW<;I[(]>W5W;<- MN=\\D,?_7C]LT)<;!7]P+TK%M\"%*=?:3:6GO.G'?Q\=^>6ZHF!BT9Z$PV3" MJ(N:F=1RL@Z:2!5KZ30+V^:7P 5A%0,$:;(^N2GW)4D/5?).R6:W8PM\F.?T MIR_DD$0?$S]WLHS2A ;D2\.A/'O1+&36695LY;?U2..#>+AS\Q-B.MWR]^+S MM_VA4ONYDS#JMXJ=9Y 0EKASJLN\_IUC!.3%\7PB.%?.^C"D&8>H@<1-7&TH M\W([C*7S1)WU+;+G(X_GA7.K2/>_N6BC>-Z\S'?3<'/Y63B[@3-H[%.MLE@L ME<3L#QGL]RC%/Y:FA!WE$5S M#4TX. %X\AM@(*]_#7)\R:&VQU]N!1^4#;6%Z+$B 1R*'>G<^%J2P G+EIS7 MCBRPP=B0_6*1$3 $VW%>'>K8S6\"''M',$4&Y)7\@ZB,N(^*ZOA41%D9\4:B MY>>C_A?';#R$ )YC#!=3]Q9_;!07&LJ>H1!6E,=PN%4X\[K.OG-"-P&&86SV M*;P+A6X\SDG;:"3+3=EE46DFPGYKS(/]\K]?DH+&C)1Q?C8!G-\<[&R"&73_ M>M:OWS9\MTV(!.J?:T=7^+*M:PR'9R^4'Z1%)?M?GJ/!WO1+\IYL:;95.UQ# MW>!@"CAUO2,%526] ]'1JGE'\=EMD/9*R;ZF!!?&.2DH6VTE1;>2' "3$@@B M5>_.(W9#A2@R[(?ZR)R+K$@UV2O$FMW9Q>[]II$WB"#%?9%8&^+I (A;P0Z; MK?U?_5><3=_)\-U=$C_TX1#8>SL_5O=.5L]GF+S@^6M>/$4__Y%4KZ]Y"M5U M[(.F_ 32QY1M$@S1>QHI9&,?*7K'+0;2P7.@48R:[??39UMMU4J5:?$A:+J% MIE[\'ILV)KE[3I,7/DH([CJC8DJR9[2XS'#+[80FD<,A#*6YRE;2J4DI>&!L5I?]1=APTKT?@OLIK)\DAVZI]@BPH MWT@SJ_CWN"OO@0^KE:/<[>[C'D!4ZTM\T)_7_=T0U97#$#;!,?U M0S]4U#=UO44[>4VW%P_K'5U/QDPOZ-99@E6=)H!'GYHR%]Z[PWG=\3PKM0EB M/M"7 UQ2S*D4MHV8ABK9@FI'[[MVR Z3B84U4R5%D MBNQD;20^S/E8A*K!M)?Q!("^BQ$W3) 60$OJ3-%6T;$ASV\8<46($\1*:>V^A;/\BN8L>A*V,<28M%5/6!>5?HV*!.YI7+.= OLRJDU6\:I* MOQM(/=@A7"WR$M!\9\B)BGP9R(,WYRT?A4\4 :(H]%[<.5.Z*@11S^*,GT63 MS\=72JL;& '><[&7%=G!\=RM3P3=OVRP* [E9J9C5A*<<'BB$(*H"#))XJP, MP5:?#)S7*/B.B)?D& M);-C MG(^NL^VAK(KC(RW>DYB6QFL6+D"#$""CF=05Q!KX&/(SH=\J/3P@,YK)B-Y;WM2%P8@1D5>Y6 M! [P,*RJMQV!U:J"2%#>%_GV #O8$[&K$0 YB?0*T@YD;!"60^/'6#F<0ZCYGUW-+^%OTS M+Q1'I6&!90/"N:UM9U?=V.Y"G/W6MHT%NR4LMCKJ^?9OHS=ZMVOQ:UP/]<#B MV$(O\\HDK(!GMXP>3AP&,L="QYA':#%SEYE?<7#EI(-F<6R6US;9Q ;,[$U$";"R+W^QBEM'R@[S0[T%O:TXS6#(MX.\7% M?.LNB@D0Y^:)G1/#)50.AOP00QQ#\1#C.:;).Q0#.&W$#H[X7$*/"*T7$"RP M.(\:.)GIMK.0X*2!#Z5_\71)D+V@+&E5/N55E+K-OPN':/JYTN! "6J1UQ' NSVY0[W#TL>-5XG83S,6-X>(8S^)" MJWYJ6F_^Q5?P%DI SF$0Q>D>&GP8#M)AR,-%>'<7B87^>M$(B;36K_F.O+42 M926!)GOTQ?W*Z^C$J>BC<7)F9FK.8@/$29JZV58I4S,46L+4Q8ZCP0D=J/>UD_/1Q$+'N@^+ZHD>[G.=GGQQFWN\U'^T:^K MQP!*(73X&"RXN=N'-QGDSA\#^72VQI#@I"9&-&HK\GRL(4)K"A*F%A8K&&*+ MAS)/DRUGB2^L+25C-D"<4B$WVZI.R QU]B(A%QNFQ68#+#9A:-5D7<:MQ61V MT% ,Q%Q*9H,+P$CZ3E*Z9A+$ \29.W).,>ZO2!'AP\3_ 21O<')P** M5WAP9+@[V> 0#2D8%QDM%+R7$&7'EE#8J=&"K8VCBM[FF?1@]QT8.SQF4K1' MB'9&U *,E YU0=OQKI;;->V.J33JZ5DQ/4RE=?L+-0L6G# X_E3KQ"Z$UF!43RGAQM' M:GG 8OD\#C)4E$8 N?H)8K[9_-S3;)M4AX*NM^Q_YJ%/^4V>O=PD[W0K*CG< M$<*/ OKL,T10PR3D@XXY%_GS9PO7*Z+16!%%!3JZ YU/G) HU<%VO>DRWQV;"V2*+4YHP46<__M M8+Z][S8 (NVWK9P8MJ02=D48-*G!5^27 K^EY1!)@/TW!4,2A8G=Q83"^SS< MPTMZ=2@*QI5%6 LL9L\2!_/M5B4&0*0.)59.#+&3PQ()O"(2'-GFQXA !3!R MG.?/K8CIZEM2QC1EO-+\4+K-OA<+\13"3Z#6:80;!>=4PH>G[CJ?/VXCT%:D MA1B*JTP0;/ZBNG4<%P>ZO1?=DZ$]JL7P^X!QBNOZV5<%=G9(M"*[/I8,_:Z+ MX@A[V/5(6510RDMW"9.3^\O++_ M(PD9\>?XCOR."SP+*CMIEZ)]]I_)=_E,&3.B%#ILPX"QX)/P%!/;ID@^TB1Z M3E+QD,V'+6,17GCE;74I.=*H@ )1^1& 9Y"62DE>[\WC8\R82'8D9?L(6GQ$ M*B <_,5(!"(Q>"MD]'@S21+53GUZ"_4YKLT!2YNW?9H?*?U,,[I+;&'*%PGU M"IV'."<7Z1P86-?I>EFRVI;"(@H-VU-FD6K9%^7E*#/H>]OTH-^981$/##DZC);HYM840]ME2 MD+X(YHN$O[R;9A(.ZQW2S9MMC*7\+QE.E2X7K(]^Q0'J+TKKC.=@7] MUX$Q"P?]KALR;A0\[_ 11?<-%SR*9_0SU+$@B0*39(/$RTE6\-GGO'H-XW57 MBVR.;EQ.C."LS-:#RP$>DHTYKGAXF5@ #;@LDCF[;_7@!&=E]KY;3H20+,UY M3\3+UA;K1?RUB YP&2ZKTB.\2!/3[7UTM!;Y^J'@['E]15&[WCYXM'VO'V.& MWEM[Q@V_*))HU98%3<6ND>U-=QIE!L1)D_Q0/><'ML']D1245$64E3OHQIFS MS6=2P+ZWJ(Z$7WS.W_8I_4GB@A>GIZ2,7^D;5LO.D6K2T8C$(Q(QR&A^TU,8 MW8\67$SOB.01UF]0BZ']F!H7W&^"*8<>*>7C]_O[F\VWS>W3^H9\O;Y=WUY= MLY\>G]9/_%-R??OU[N';^NGZ[C9(%[NE%3Q+Z7B7V0R67S^PD90@B5UWD.UJ6;/YG4#M*V2H@ MSM]I0;?(]=B'YU*(N8$*/&=3$B,H8H6U@_56*;4!#J=FVLI(-X#7H(3#AI$_ M.1&@;QUD!P_&:)SK'AML",;3NP+H&% XBYJAHGS__+CY^W=8MFQ^9?\^XCK! ME^0]V=)L6]Z+X\*G#G!,=V$YJ[_]%/C++[<__=___G_^UW_][R]?_N=^^MQ9N&:P M!H[?,2$P?+#H_+#\]\[D MW OJV=(J*FA;SK_^BO_G#7VO@R1TO+]^>M;??GKW_G$P$-71M,P;(3?O:O_G8#_O:39ZTW-FXT_-T[!,N_ M_62L/K]@;5U<1F+_OP\QEY+_]IS%P/$M?SMTEBYV%IBXNU]ZX^7 @*AO*X^UZQP- M2NO_O6%CK<[> ?"K=?R@I7IZ/#$@^O,[\"W3L,5U_Z#96M@S\UWS7^^NO4!S M\N#/ #%8&(_RFJY%IK[AO3_:[@]Q0R+5H@@)'BS/M%TO@. !>":T-GBZ&"_O M \]R@.>AR02M7!;Z[@0"#_6 ;VHJU[A8N:;@ S@!\!ZANT:@^M P?>\WM';W M \]WUX@1_.*PM"E6"JQV_'^8O1^&C;F X!LZ'\#S0V;P"\'0I%@9'@T+?C?L M +P _]:;H#:G0(3('3><%7>CN:U(;:70S1FG)6%6NYY'L?Z M16M!; \GT-T Z&\G:'$)MR:(;!NLL1'P^7M+;TTP6RT'K8=H]]&#$$%4FJWY MS0B>'=SUVBH]#Z0KB^W7,U@9-IX@D?SH<&6!$MW+:T-L+\/=07A 0U!L@..5 M7.1([8@>\^C38&Y\E@$S4UELO] 0C%J? #A[1_M'_M[E-"%^%7VP/JP%L--\-:.%5!.8I,1L?,.QXD3'L MW4FAC"&A3-.B97KSP)\!^LC@H]QB=MR"LE/2!!W?RBUYI3Y2]ZEICJ<,*6>G MI.6:3U!E!6)NN(;35%D9J(W)/;.4[3*IG?K.+V5[SM*FM/-!:98?-U''+KQL M=^FM2=N1ER?S41.2=^=E>TIL2.[^JS0/".THVHN5%H/W \IV/0_ -RQ;[J9G M]XVZ]SRHK+%:0; RHFXF-4H++>"3M6,@4595,DW!VK#P3>-KN%!X^*(=S6_A MJ$*GS/&;;47XRY2^1"=JWB&7%IZ]Y9HEJD4X#>3L?:#/XJ7AT84S5& &S !: MOE5AZA+QS9I12-P)QD[T2[!X#)R%1 B*/EC#B7"W6Q@ZG@^#Z!;9F6)=0-2U M<'4M#4#U+\J^M2LM&J4IN>?A_CN^)D*31NR0@?8^3ZZ[^&'9=FEARGQ#LI3H M5.8ZD4O#X=_$B#9^@"+_9\> Q\S;(V/)/\.EW3LA+<(*M!5 MU'?EHM%;+"S\63PW[(XLPF2FMUZ?76@6K-<&W.(S"Z%0:9$%?58G+.ZW3\!= M06/S;ID]" Q%V!"[41]6#V # 5HX,6T'G]AH!<*[1,\?+U_0T< '>&'%OYN" M#5IYRT^4'^ ?9KW[C*R\!+3*24X3E$_H66&?N"HPBO:V$NC M%=,WZT!![$FAS#>DW1&F3Z7)R-W].=YQ53@3E?N.-&D/OS@%IHLF;=NJ>O;C M_8(T"=&>>8QVTP9>CYY=S^NCG<'VS:@PEW$U+DTN- < \V):*?_ #Z [88G M!/2G/@2+*G-0F6](D_+50:<==^58_\:6DOC7\89(B(AL'Y F7V+A&2_Q"%DN M@8GG@SE 6I:"YNKP;"^O!WIS)_8&FZH21#QT-+#IQ#8U'XV/*HN5 $6@NIOF]2'H3/Z!=Q MAW$30D)LI#$!GSY:1<%B]UO+QU^YN+BXN^A\Z20-I?]I.(M.U&HGW2SN?R*! M[9J9K]@X/HL+"ZB"?O$[K>>]-R_T1DN:L8TW8(?M,%;[A;N/N?18 "NB!_K' MGA[HAUTWYJC%@UX>_OGWF^[M]>WU#9+_]MO-1??KU=5!!],TZ,%L9]%1-&D? M_?.(&=F ,'&)7S9AK(POYKME[_2]A.Z:!\*X$RZC0"Y$?/_;3Y<_=0(/=='= M1)/-3QTD7'12>H[@(78^[#G:&WD@+%FC$GN.$QAVM$^@*#-=K%5*+10L5N[5 MD7)K4Q$ZW%@NDFSQ@)8VBHXRY;*R7':[WZZ;JZ1BR6(M=9LX!-%*B99,W.'" M87A8M%5:9A(N5O1U_<,QDN?1LD%T:Y6CIL,BK5 /DU"Q6KZJ4LL4K"SN\23*O6(O4PR!8K**;)DV1"0JF"[%-.KP\/G8&AMN^NR#KFEJK1:KG MES-FPC=5@W5N? X72%9K:441+0LF5$+Y%NF01\)8>[>JM-=;+"!^"QC]!QW= MP251)WPMO+J[ M"HT42Y2HX]C&4=LP&7R:H=,VP0R55ZP5RF$6+-&1,NO#;\"V_^Z@_?\,&!Z: M=A=#SPLHU@="^59HC5_"1'W*S _?73M H,+0(HTCNQ/4=E"N1>IBD2Q1DS*; M0^QWM7- P^>W@*RM_.(M4AJ'@,F-LS(31.BF:> G;>#!\(VXZQ1#>U[QK&C= M[BW>)#53=QP")KI39H((YX2^X8.5"[?4*\I=J19IJEBN1$''U@;MK\%F:\.V MDU!\1-5F2K5(M<5R):I58+R(NCA8 [A"<_L3='_X[_$C/Z*BK1\N9 M^6M_ *$+^R[JIDE1>7&E5JB^I)@)!:KZE-1%@7@E>4?GW:+9.5VH%2IF%"M1 MJ3+SS"1XLRWST78-\HDC5:9%NBF2*E&-,M-+Z@EB')8C\'$6UD683X5TLJ=4 MRHIYC>3L-E5YW&(FVCRVT&A\$(FW!P3C=NJOK=!LD3R)T_FQH4;/Y2^6Y]&" MZ^&"K+_H[VW2($6B1(=5'^_4K,,D%SA9BTF)-NF1*E.BR:J6G7HWHWV WY3; M0V-K]_JBP:]G MV:1+E-VHIT<])-\BE#'?,ICY>RN46BQ1HLACXU!%1?[7+T<@/:-?B(@6L0L( MTG<=S[6MA1&&T8Q_Z8V725:0GS(Z(8:,N+S (2-V#:!_]\>CV?AY^-";#QXZ MLSGZS\M@-)]UQH^=06\Z&HZ>9OQQ(S)L71K>6PAAX'U9&<8FCMMA^U[RFSUW MXU_\'@7&VO63$%:BL'3%<5:FYW%NIG1JIG1FIL&G:0=A:!'/ ^C_XS!T!*E* MM*352&;4)1[ HD46%-/B \ W5]2D789,4:3\&!4"33)EFDZ 8F&($2V4K<9E M%/L$7<^;0'=ID>:T5(FF*[5(%%'A+US?L-6I= 9L&SL, = PT9;E]YB;3GA MNW;L>Q5',2-HFZURTXE004IBY(QF#?LX,=9PC;.=8+AP'&;2#)!;N.D\LEYQG("A$ \)M"!_AXLW4R\[L$G A+);SD&W X1NAZ" MSL0G(3=<.9,0Q-1SL)0O-IV'=4-#C'/2J GM,!U&G&J 2K^CTNV@#IM8Q& I M#9N[HM,:9:^R+]!T]19(0@ZITJB1O$LV@ 7M^3ZTW@(?1[6?NUQ+#'<[3:>' M&(')P5T:=9;)@,'"D%9IGZK9R@9)#8XNV+4:@G>TR%D?(+5C0OLB:^5$5^3F M-HQT:H2^]3UG$?YDQY'J_PBB9/4XT]22?+,AYV--YUJ-J) CY31J.J(AUOLP M+!O/TPBZF6&#.,2#!3PA-.5IOLW$K(P#.3A0HZB8 T\!NR@UFDX87M'(@8@: MM88FOAB[?%YTKP52\:9KGTLNELV"\ZU[C8\*JI7. MI*OL8&6BX,ZA>88#3CQ8-F!#PZ?KA24/@5>T$05Y.Y!8L:M$F;\ MAO;R[TCB'NJ6L0))'O&CIW<%"PAO,UIRB6-A$2(O.8);HQ8<5BQH"Q%7&UJ2 M1P@CRA--^H*6)ME^TKK1B7'QY%WTI+ID*V?6\4$C>;D\C.==V]DZ>9V^RRF\ M3_ULVN@_I%T52U4M.<9WVBXG(SD:9N7;RKJ?1-P;MN&88/8.@,_Z%N**_A;B MOO?<&_4'G=FO@\%V M>_WMF_KAR:.;]%AE$$V_?)SE%9WDKV;1]T%9+=7.H#Z2SEG$D[IK/#0BUK1V M&]Y[SUG@_PS^#*P/P\;OUGI^WX!PBW8QWPV;_+*%I:[&/&%1>A,[*)'=W(E5 M-"8%)QNXI6SEK6SR,I5 A>3/64#NNMV[P_N8IJB=*I&H1_E:'29]PUE9:,\< MP878O8LH4J!\EJKM(49I:5NX8WR(.[Y[!;:#A$ 5/EJQ<- K0LIC;,![KGK-U\(H@0 M6-0.4R?K51XYLG]LONX9Y!'TA%^GP\.S9;Q9=O2RP5F$M^WOKHW$]/!NV=\6 MW'&Q5M>2'F5O.RL)W8Y 7RD(V"Y#R16TI$8E%5,9PR*]U!LO1;:IV, _,;;8 MNL]V]9$MK#M16#1+OOE@D+6=M( !ZO<1BF1FY)?/ /;MHGM]K<'K(A'DX!!7 MZKVI*A_)XSN>!(TM_Y788=5VLJ:TY%*-8VK(PW4I]KS*LR#D- MNRN&$?56P#')G*#4. 6.\(HO]3)%#6>XS6:,H+>4,9S22[UF4>6R$?<\A(+F M+)Y34DN*<.HTSUF#3= 6>H.G7KI1WPT<%&LG#YBDE+KW5'-0[2T65B3%Q+ 6 M0Z=O;"RT*TK!03*)%5;,0GB)(%28R4X844K*W4('H"GP#D#V!IF<3(QL45VTF=DG)+W;FJHP$6*J$+K"4$14X*)3!,R% =R+*C5>EH4 MR=J.A+4I(S'G?H.A9JLX4E;>=B2Y34G/N,V@U&@K+W@V& W/AW D-75W02C= M;AX4[RL:'J+\2.+B306M2KO9P+B=J)Q/5BTE,I=&,0:A^"R7:>GRK2(#GY2" M4LP>,:%ND^3NE]YX2;9J%Y@EN_08SK,Y^L_+8#2?=<:/Z*=Q_^^_CI\?!M/9 M?W0&_W@=SO^IUC19PA^2J:Z2&ZNX9W/\.J^H^V&A++WQ._/#1#UJ!W&Q=K(W M5(6R4:R*:N^8=GV/Q,27L*X3.BI_6J2YF5I';]62-411*[.81"VKW8.] )Q/ MHGCC%9736X',NJ#NO"B2ML/^3_#\HS*!6J>UK."7FG@1H(%?(U7!^85;JUD. M<8GF?#U.2E2M$LMG);WKWGS5Z:140;%\$A/-\7JZ#]*G:-;ZK=5]-02()G<% M7,!OAW$4 M=&K:Z&#MHQ ,^GJI]6I;4:YQ:::$=7D0DV*_>#NT9+$D&[N65; MJU9V:8DV<97'Y6>TLQBB?Q:>D7<%]=9DJ8,Q73:I+]!464L.[4)HR8FBXTY< M&.K-]Z'U%O@8SKF;/WV'$[L$2U9CBU+&>9RTMTTC*$M^R MU?'I=A%4&6)2'^>J"0E >SG8^S L&V\+$+ SPP8S8 8P>A*T^".(LNL5/-04 MU7Q&';<7W*R"B>P$%2DAK)1]&AX)[DW=PGW#>%NY IN41/4.YVVD7'<6(+\&=5/5D2@ F.NT)(!BEH9-@&*_\ M@MQ32>0DPR5E0@M9 MO#A,:%T/+UXL)_Q^$<(/EA?=].(S">FF]]?HJIC (U'-MXMW M4E%)>%KZ@E7+^2L?APQPP-R]>"-OW;G;R6)\V;WN'OH8-(EY8L1/*%;Z2K> M8FINMIKF:M1X,DK$)&%HU9O7R,MDX!QSM,F>1LUG#I-X"0FJWFR229#XGJA\ MSXTWK(^V^V.W!2MXQGW-\XR[WYO]VGE\'O\V4_MX>RW/]]:Y[<7=S<:%F*P-\W+<)=/'I8W&_?45GTZ&S2_'>,WUT+@DO\.G"\C>4 M'297W9ON(01J7X&SZ2QG6R,&B7:\1"WKAZ@+'P0ID]E/4:+V56]I,RX6V#_" M,2T;((#W[D-S5\QD).-3IT7/VA!LXS,1KNL[A@LH3VPVE*3.G&H. M6@C?T"22F$:&3ISV/#EV(F4 ZP,?3)$V"$3C:^1,P"P!!:!7=:8KL%.I>7KP M %#O38LVPZ6+G&EU<.E3A(W49&QJFM\ M&_#O4.WC)5K]#6=EH56_YWG )QDYZ)7.7#LX>_*C)>@EA5X3VQYI?!<:74J] M /_=12A_@%@YY-U^<=TS\8XV^25!J_K20DLWAQ!@#PGRZ,)GUW#"[47/B2(O M892(OGX,-;,P=KO=6PW2T"GD7EG(),0'5\V[)]==_+!L>[C>&!8,KV3)]P?Y MA<_LRK*+ R6ICRT4QD? #AL(VPCK@E,GJ?R95CE/P9F!DNT0KVR7=F 9W.$: MOQLNN*QB;T!+^DF[@JJ(BU3+F9J+I5PCM!N@@;^W/O-8_P^J:DFOBBQ@M.2S M("'Y*88NE.ICKT8$YV^6_]Y'"PN:U&%X\F9F%K&%4R48'R"2[XFT627QWF&_ M2M#,9VR53Y5=S%A471$;0JQD.I\86SR7HS-T?%6;R@K/O4K2&CM5XI7&1FHD M,IW7T028;:6U=-?*J1*/'Q3)5U%J8BVQG[PJ^VQKR31I)\^*N(B:WEPT5C29 MW@B(1-/W.[#2)(NG%CK:\DF053(N52J!(MD@\>MJDM-$X!%>,.+(Y2.E[Q4 M8V[@Q+A6#1>I[P#4'$V/1A\Y.NX#>".MF)RMG!CI!( CV2RBR'?C$!B$/=J^ M^MN);3@^.JIC[Y8-+L)*.V(#)\XX/ERJG@T*R*;&H_L($SY?-=;J)TXT'E2J MVCL*:*;&WG&$R'W@60[ KE%/D/+"N*!:%L"OWV99P6Q2KB(BIJ>:[Y3,T"24#DT7(,QQ1@/J,TI"7UY)G/>)&0X"6D<&5$ MAYY]B%&$[3Z29,':2*ZH)7\$*9^\.G+BT:-("0N57.DTR<6 A MV?='&R(=!AUE9]-AS9.G%!,@[;1QI2W.'*E?"NME(;S!FY V+3R MI\A!N/+N_+085A$743D!-3H0#I9+8*+3S^ 3[3"=%9BB:77L8)#P_V%+WX=A M@] G'4?@-M&DB__0B'PN]Y.M)7Z&J H899OVIB00?$S8SFGY:HQ1*( W4A"Z)]I2$#\ M6_?ZFP:A1O2B80R*H.N/PSCQBDB(,=T]$$_N?YQ%SM;_P?),V_4"" KN0*HV MVV8J"L=%0G@1?B8:JT_,KNN+R^YER##TB]]3+A#8JFKY:'S=!_[(]?\)?)RW M^X ^3'6TY(84Q>[Y4QZ8%F;$G%JK=S0&7[THVMCXS31N MF+*SI4?8(N64:K&N>226^D(E4;/$Y%W[I?@!>":T-E%\U<3_$ZW?]X9G>>/E M)/6)GS*Z).3QNKQ _Z_SI;/_ OYA,.M/AY/Y<#S"R;OFOPXZ]Z^SX6@PFW5Z MHX?.?6\V#--Z3::#V6 T[^&2"A)[C4.@HFBS_72V201(&HGQ,M[>&/8^XUG! M"BNH;14A\ZKT?,^#.6+,O4UV%Q+]&2VG*J$,RX3?JP,]*>M;?7/=%'P )P"A M=T,2-\)+!XY@2U5X>7%U/,5-!]\'H]?!K/,X';_@S(7S::\_GW5^&\Y_[?1? M9_/QRV"J(EEA+'1:YDSL*?JLQ5Q;Q?FB^8:U>G8DW'6OKS0X\W!J-7.: MKB*W5#-/M\[)(,=:CZ;*G!=J!7-!]W@NP,E)_Q*E*!W\XW7XO?<7>C/ 5RGE%@T"91H28;^]?'0?^P-IQTTX%\'G9=!;_8Z':@: MZSO!]OTK&NGT*@K&>5Z'BD8TM4Z&P7<7W>L+#9X-LV@J/7+Y):SEC]5>OS]^Q0OS=- ?H%7Z_GF@9'^>2%(T/'-+"C((SJ&QV*682'VH M^/C.65O+$4C106(9K"JBK!3>M8PZ4FJK@C%W: R'VGN$Y\M[F''F'H]ZH/QP]=7K3 M*5K5O;!1*^49=]E]_KR\#%RC6.*54<9&R^_ M>(W>RSZ#E6'C2RVTN &TQ '&$79Y<3S"G@=/O>?P(AGLQ?,R:PRX6#6&FNEJ-Y$JZ30_O\J(W? D-0U/<&QY M,J]QDDD._[3+'/^TV7S<__N7^]YL\(!7ULE@-%/E@K;O5QAJ:B?<%-@XW$K? M]7QO]HZX]8;%3V+ %&UV*S:J8E/,VN7[=)<+-\_56M5R&A'#F,QF7 )*#9]Q M4@[@C--,CH_8<(0FET%GWOL?)7N)G0S,.P=J#96/%'B,V>0J6@YG!BWEODRH M>8.O:B#NY>%<[GN+;)@7#]5":HG AQ.(J M(I\<=(9]C#+4U'*(%FDK$]JDI(P-WQ&G8T('\?3EY(W2;D;9V:I*#MH[C9^5Y-GO+=86!'G=KU, M=8Y]D'.WDQT.W6[WYD[MYKJ4QHYG C% M.[V?#?[QBL<\#@.@Q/OQ4)K"@%^DXDIBEV4[4[AND\IK-719-9,-1,8C6:,W MT!R1AR:N;3%[ANK9,IS$B56TG#"D M!0GB1D+6!%,O9^(9)7X[C,Y D>AL[&&K?%H\JH")A,AY"ACUBC-!#CS?0GMG M8@JH;*'38@B#[.U(MQI'4YH"TUTY%ONB5%COM/A2#@X)B><413,ZCMW#N+=A MJ9O%[KKE5"H/B:BT0^(3'/0^#,O&=Z2/+IPA@6; #& 85)U.$ZZZIT&3ZI ( M2@ZD.D\XZ14TV\3#6OTT2"4$%4'9?A3SBA*%(_E3! :!6,SU3XM9U6#1(G5/ M=??_]<:P8)CI 3Y8WL;U#'N\?':=U;/U 181&KM<@X_5QC3. M2<6U'-K%@.=9=3D$;(=#\\Q\!XO !N,EV9,%N]*AO9)MA?ICHDK59EM#*2E MR/)\5I-0C)\E0N$X*SYBE:(G9=BJ[38YTMQLX4TQ>BTU#HP<^< M2H^QF2SM;Q#M-BJ6]BMCM>29[Z)S!->IOCD?]40HPE>/]-'*![=>S MI*_L6X&C&EJ.\LJYOW@%UF(CF1\C8B?)H^58/H@ Q_#O<9A;")C\> 3>UFPF;M$ M?J)=9*T-(5D/_I2G2>3:$7T[WA$5)TM4N44ZD:R)I1^\Z#TMB,V0V( ]475G M[*R3^OWV";@K:&S>+;.'?1V8EAN^1MK#' %R"]K2:)#>CVM=N,NY5=DG^:NP M +0RVU_D]C]&!#7PY7[H__]L&6^6;?EH!^UC(^V6;:3RMY2E[3=$VT,SG^9Y M 47)K,6$7W (#H6; [A&4QA&![N#3'%0BO$R"X"'RV)<.$Z_51MO+)-J@*'1 M]R7Y&>IX%H3+R^,%@92G3N7QX)RP[M" F/\.)&1$]!C$ZYF^]<&Z0%5O6*M9 M1BQO\DVX0H&2%PA9%4%';N@R 1915J-R9&1IY.2(5QJ4=MEQ22-PBK"!EHGQ MP6/QU;$0L#\,N! Z(7)^Y>1(*@\U019>#9)\[.FI_S<\]; MS%;7P3P?+W>]C*\?[H$#EA:;1V2%%K6<*S@SAHH67PLC@$":#99+@*>\_72 MC[*5W"GYFVP7T03)+\\RK(IKKPZ,(E[^&RP0*O&@\Z:N;3^Z$*^^G$SC;3"+ M\VWWZ]>;!O-,B/3MB$N[!^4A[C4")+J4Z3F+Q-AK ;;KK)*MM8M=U467%:]6 M3>9MKCURSJ.AO/S;*O?*34[$G5IK#[J%?97-T"YO!S[@74^X6M-RN/,D\18I M=Z,?#!XFC>,:ZCD>3D-I3'>2*U3Y-X39\<2B%0R\,O9<^-31,&H,+QL:B!]I.J% (2K@<5 MO2;DR/KW 'S#LMD6'33C'Z?E+)GT+_[N.>>?H)Q_!0YZN8P(QP35]8Y<3:LY M1(IFCSWP.-&0ND@)3!?M03\U;-!/^R&#?OA]:C@KT/NT#C.P9?ZF%1TJ:6VO M_&(!*1I.]-2M5T\O8/T&($E3T5^UTE4QR#D*H<*]#C'6U?L>;&P/JQ%8-B$ ME2RWG%9Z%;BJL0LK2/&V6IWCR(6A4Q_V2GZW-G-WX* SS?;!71N6P\(&>@M: M\81/P07$*"&WH#F_7LH,/H$98.>9\7)IF0 2Y_W\@FD@;I$(W;NOFA&@A"*S MU. 07.-5G\-,$/KESM$'S&0NSCQ5=:2+;5I/FO@JXA:.U:[!#7*8I,$)G\2LK-FXB0:J\>6 ;VL[4\O,GEJ-DT$M&UGS/I MEX2@*3>X%6,Z#=#RZ0.T_<619$)'1'<0>H 0&,751MNY51V,6OR.M&09CF9D M.89/FKIXF\G">]F][AY>OY\$U^AX2'AZ5Y%N^7NG(F, R1:0SBP0K*-(-/B] M-3[0?W>Q!1P'8,-O8]'!WW(7CRY\<1W_W=[V;=<+D]A9)LC=DRGN4EOIK2VV M$IX2JIZ92^,<_L]WX(5I'D,D+PFSMLA/M)7RM6$E]2@D;K9'(IA8BRLP1?"& MF:^'3B_.(@A2:=E3\<7R#>#LBQB?L'KI-'J%GNXXT3F46%8KG?(KY$"97%+* M>G;A ?/GE?OQ2QCM'&XC%<8_[#48_^+WU]F!NO9_T$\W7/CN=5,@DAZ*& X( MBA@.6J<(@DA$JWZMBGBZ)RCBZ;YUBB"(1+1W"SIS]J//AW$,B,X9QX5: S^' M>$1[JCY;]&>"3P9K-:W4*F!?5TENJ3>;:F*_%)QZ!I^F'2QP9"3/PY=U.(YA MN?-K7DM-(A>=&<<$$P6'5)^-KF:6)4X+TE5)"]+92"11LBG BVQTC9/XH8_? M;"L:3\E5YMQ:HR+CY0S]UEL:H2F?9DX2TWAVA'6[7[_>J9]P*AB>)**BE3EC M EU\W3.&,P _+),4OB.OF,XJEZ&WK-6#&1'53N)5:(%#0<7R>40K%[&L5@3A MTEFNJAD%%&A7R3U%_MVRH>OZJ%-_(!(3SY%YQ715"".RV9,DLX!:>/WG6F86 MP(H&(?K'?ORA'WY_1IMD.WIWG3,CYY302K6U3L:L8&@5H**8 92X$X=_UDKW MK.K(*K!0'-FS:L_''O^6&4\G'G:R,ISM,R(EXB9QEF6IIIUZ"L'.3K2E9=1S MYU/GN:O(1BCN UJ1K-;YOR8L*<[PE>R,N;/1P/.M-?[EF;^W4_5T M;61GJ&(X] L#7:SWH1,;,C&6T#/L\7($_">(_H2FXJ7EXXQ=V&]NZ$P@^+#< MP/LG,& A7\JV>^:9/!A;^+(KS^*6A-G>[M26Y YV[Q3ZU-;. M4(&8->3EUQ1?-CA@T5OC6^57!W4:!W/V8>3 OKL*R9D16:N>-J4J(Z7?NZA< M(HW"IUV+_CM^3#/&?8ZG=SQ[SZ'A>!%NQ =_? V<224 +ZGOE:[UNK[=*>4U M?/?E+2VPR-4/]T7O46H@YJ<"NSYU4IWJI'K5277K?#&LIX&B[HMAO>8Z72Z& MLS-:31?#==)LYAO0?T G)TK0.+$?T9EV,K@C@:C%>+:7L*H,MV>B"L>RO:ZE M=,2J,+>=I*3SI"0Q>2?&ZIP[C(JE$>=HZ--#@8AJ_LQ\?_AN),?A@V^]Y,)I'"3B'H^^#V?PE_%FEO08#@*0^Q(%NIBFJI#11 M;W[G:,87IKK9P?"U>WUUH7X&8=->?C9>7EE;&'8UD_*^CT[?*Q=N<4R>-W\& MS #F>X1RUM:2..5I<$RI*CAH:]4('\W.WPUG#M8;%QIP.UQO# OBA:&/N&[Y MV"\!>/O+W:$S,"!>5;T8 PMX.-?3?CFAQ?67]CTMZ5>%,L<$K!<[Z;E,.5CZ M*[ 7/NJJ'T(60X=DR?6A9:ND)5_JU? QPTI IA--\N?X(KMK02TMB2)R72LC MOZ#S^@> ;ZXH$VBN%\9^)+S$K([,$#G^%J2B6A*@C-*R[A) M?;#H(6+AL*-H2GP &]>S_#Z OK6T4$-X?HQ_F4,"SA9:R@T1*.CG?IK_2,15%A-+Y^Z:0^VC93[.]J[LQG[R[T<;Z3%+0DVVM. MT>PHN.EV;S5X_%(,=(ZQE54X_9[-E\K-_8&&#I[&'ETX0_CLS\DIPXYUY-/- M6[TU]*@DL(1MI)*-0=$$T<9Y@7$ZJ+P#='W#3NM6CT6>1GN^-?_(H9YYS=_U MXYN:W+2ZM5?+,I?F!$"&JV^YN62BNO M@+TRBZ74,T8'BU)S[Y,._JJ58HN5D:,XBAR-5-V+Y>!T0$3E9?ZNI_HH?K0?",?W*P-0.>S&"":?* M-?LNQ$Y=^"X];?:DDHNI[IEB5<%JAY6Y!O\W3<@E/T\ZB3S9^O/G \"[7^;'DU M$9Z]/UH.C3I(+7TH5=2!V(.VZO$6/GK! > A>,>2?X#(C?350>=%&S]R^=6U M<5#<)W02P"".G90JH.6A/SV@'\-WWI:[N =+%P)RZCMIW]-RO(A92NK%K(6> MP1/HF@ LPGB,>,H8+^E>403N\C;38DH*@4*_6++2IE,\*J? M W/BQYP8(4O M_@@B;R6,8F_<'\;0C9=[\$8 +5/\TVGE[[68N_5B)C6JK1J2DX?ZHV'![X8= M@+G;6[O0QVM3W_7\>\.SBMS+*K;:8L+*0":FY8T^M,Q](%:P]4_+G#RDQ'M_ M_$)N@4W?:,]C@^0O./0ESM@P=A!>\Q]NSJ,RJ=_+*N*V>WUQ:&I40%$9Y-I3 M6 VF^IGWZB,WP@0!@[Z:]V92\A?/!*\-U1::_@Z!.X#U2$.,^XBB9DZ0M$*A MTL]>4&:R-R;W)Q:DQNL*E M2:6OG5E="Z()KS6Z$&QF'+238*@0B!+*R0K2K5=(S20,_MB)?@D6CX&SX ZU M=5TZU%;2@8[K=)(N=,(^M"[.EIIL@8=AAD>NXVX 1+1R5@0Y:%4R8^;RHOOM M0MN NVG@CR<);B%K\4VI95;8K]/AR_+P2867]XQX[$SQ9(D=T,-YF&]:N#Y. M>?;8&TX[:#)X'71>!KW9ZW20S .[SW=2W\>3@M'9]:$3=D+IO+"#;B]6T:Q MJZ(H]MZN2SW/ ^&2\&P9;Y8=O_<.2;%(*1\50,,#9KA B\\GK'TM9YLBA1[/ M-7+Q:'P D1T\]]O=/W^UT%P,S??M,_@ -BT,$E-EO8DDA184&O)#U1Z.9=:\ M(Q2HD9*XVM";QU@[=M2U M7G%@(^@YCSK:-#G6\>5EM_OMT)BK::QC,MVDP]/XJ>W%=<#VQ8#_ GYX24E= M!/,+:\D;Z9H_)AL'.HVGS3Z*,W=T;&H@WA.F#R="[0A57&],[!-F5WFP)+RJ M;N@-\7-!!&VAW]"2N,K,6](0%?2X6MU*G.\JE'.ES^7CE5._M82D$^28E-40 MTR\B4",=@$^9@)4 :V.XGA!Z]BF/6/[,L%((U1)WIQ9'TIYIND%DU09H8G_# M;_1X/$2_'GN(]OK]\2MV"9T.^H/A]][]\T"IP^=>M"(_S]R2:F(F?U@>TBJ: M[IY=P\$C -$^C))*7%3HE;001?&J>WVI00A71GY4E%*67:F6^7N(ZCLKG#0A6L'Z[S@EJS=T[@T;0^*- MET^NN_AAV3;?Q'YS/+$/1_/>Z&F(Y_/>;#8(G?[C[W4LI^._@T[RU8Z[["3? M53KY)YT(WTQEH4HM@O1E@;,-!1/%/BM8TE>:;S^AM)930"G]I2<''F$IJT:R M.5/SVF.7-N4^\-#&UO-F8!5:1"F7\M0Z6NJ:1U4YBN:6M_%W4K&$U/OR3!D] MU 0V<1H*EH&UUQ$&YS"DKKJ:-"?/+6 O"C7-4;L5FJ\J+W$W+DB;!T[< M-[177D(#WS&:/MI+%"J4KX%6Z%2 R%+RQBI8A1.3V)4&G'Q2:C M5/.[FGS!B>!3U[8?7?C#@(L"&J1*:DD$-E62*5 DG]0[0#5GLD3T LUKK>XB MM9$5+E/+FS!3(CH60/](UVHBL"12#]<;PX)X[<2VYP+-9PMG >MVN]]:P0,& M(:LN '<1*QRPPG'(CACQK3FCOS5:I^FYZA8O&OT#YUC3.HQ]L$A%+N@^]=QLNCJU9.UX$K M)M>!W0>QM\#^DYWHFZ?E-O"[FAE@;P!\M!S+!\_6!SCJ+9LO05$#6B\VS#JB M.1B40J#QE] 4J>^W+\8?+NSCM.[T\ &L+6A)HHH,.*9454#:S*F]^"-C#>AQ M;_A:T9);5:G 12YF5 0Z4XB(.;$ N+_TM[.'Q9JF;6;='&N<272=5-H//-]= M S@%=G3=_&YMZ-JEU#@A1?.B(-#70N:4_UST"IFA:E;^ZV[W]O#>H.4;!SH2 MS8^.1Y3\U0/+P'ZVEL10YPQ5M:1/:6WS$*< RF.>ZKM8A1@:6;ZHFJG2R** M_"V\TJ'@D#)2QCF20EWS$XK0T E3C >16M[O:D.Z$2 F-J%6.F$RD:07%#Q% M0_-_+AB/ 7;O30^G9,O*>R/09;D1B/K0"3N1OA"(NM%)]Z.3=.2TK@ETFUK2 M*AE\;H#C@1%BP?P'L#_ B^OX[R4V2PR-:CDU57ZK* &3=CR$YP,FSDHJA'AQ M6V>^T:%H1VS&$GCDY"VNV-J9:D5@M"0^(S%L ML)(MI3*OUK;,$A7EUS:.5A)AJ&?^&5A>.#PI?JF$TEJJO*+&CBG (WRC](W_ M"0'=<[2PGI8&DD6ABV)^? @X:0'2PL9[7;,M'WOCQ-:$FPTGPXIE9E+*0^ MW>ZJB=QN;*,D5FX\KRK:"^+J/**S?(G8SU,[.-HL1_[[SA:=!:AG.6OJ(J6FA>PXRXM M>PL?5^QCNQR'*1E\'HPHTBF.IXVVDDH<&%)?4Z@Q%63WD@53$UNEMO.HA/02 MW*L4O::80'<#H+^=V(;C]YP%3I.ZP6,*K?.S8+TVX':\)!;BNW_^=IR9:3(= M3P;3^3__TID\]T;S3F_TT!G\XW4X>1F,YG_IC 9S5"CN!PZVE/0$E<=]Z1C. MHK/KC=(+:B)&!88YAGI*+Z*)_6.[AJ97UW)J8=9D_L5S"8E;&&2;1HH?*H=9I%@$*U'9, '[96[BFW <(Z2AM=O)/ M9O(PU6TYB#(2A ^ V#1'1[X:E6DO94$E\J183 M-;/*=_!NF79!$+YLH98R@T-8J080S?:GSP4^6\45M>1+7><5.@I2#?V:$8GJ M2$.MI"6!2FJ<@SIDV5NXNTV%@7H 2 S3BI_X;&P0:M7)A(1'R_2JK2;7-R22\W9<=6<:Z;[[1-P5]#8H'UI#P*# M]]KI**N'V&NGMVUGW[\.[F [;Z*4I_JH\2Y*][F'-;5'"9GU?'_C03]%%O33 MGBCHA]]G2"VA&6L_$@T[YY:)6C8+QUWW^NN=>@I4TN6>&OR"-Y,'48;XM("Y M=TO4LEKQ@%]Q!TKGDE)6-@4/F#^OW(]?3.SY"[>1"N,?]AJ,?_'[Z^Q 7?L_ MZ*<;+GSWNBD020]%# <$10P'K5,$0219N2;X%/%T3U#$TWWK%$$0B7@:TNG< M*]I8W*Y-2$44M+B&U-IF4UY/91;3=+FR21F MFK/HNYX_7KZ@N=8'CN&8^'=3@/WD.5.A?CL.?,YD-$EWJQ/W*S27X)YA4TJJ M;^'OX]ZUTV*B9'Y)JX#0\7219LT?-!_<0JG:$5,\&N,)0O'X01BE1A9![0PU MV\.&LL+*VF34LF(\6E@P[.,%H>&L(L M!GC&GRF=LA_ F\\<^(]46(7C*]K_C)=]Q"++?S1,RT:["IKUFEA>RX%*UTK& MH95++FW]F+,"4%XU'!?,"GK9_?;U5KT"^=22,^FRB=D0?5)?)>05U5*GC#HI M4B9%0IU2\*893'].<%2P =JC*($^QU(DU$E[4_#AVA]H_Y(5FZI(:ATM=HEJJL,CQ9992>[9KU;GUFHG,36J&+[M73Y;34 M6MEM#I^4E).DA%U.D1+CWKXZW@:8UM(""_+%.*FL5LKD4\:!$KDDE!\K&,\$ M7L+(P>?&@F#LO!C;[B4N3 D?S%)1/ZUQH;_77$61=5H+OR/Y\80S1?RE'!L/ MBVFE2E&'1B8A*;ZPBM^/I7I//3 >%]12FTS:H"NQ(4?%&3 #1-KQ!X".M7KW M=\93+,/,7<+=7X;. GS.?A@;_!?JQK52FUG$KKK7=X?Q-Q7S@6M_*QX*/3T2 M*UI_GPL\1JAUM&1,U?6 7V*ISU'5!'++ ^'%^+36P?K>A=#]@:T Q@;]Q=]R M,(?41&.(1"<"&YFX0&CA4T-\33-T/!\&X>L:P[.\&9+&6(R=]&Q_2> 5:_76 ML \XQ'$Z0=S M=^P'TQ^_O SGD?/+ET[4:!4OF-R)=]_M0O^6XN(J3M6)29;Z*#-32*L1R*J# MS%&W6!P&EPI&9A'P'JOVBOJ5'PB7UWTS*,R-H47RRS[4+(QFBK&.FNXX)%7IWGV*3"@X?@ C-]L:Q6B[MUO1P8.B$J9<(NJ::GG M4C-O*4FUO:#/DR:2A3H#%U734MVE-,=&@$+9=1KB\5VS8>\DH>Z*2<4;H^-" MY1SKF$MFG72[/Q84W)P?%]12GZ6F:$;96G@QKN3R4C>JT+4NZL:R:/"+":GP M5=%EDN>A*70#H(%OVD)C_@"MD#YP3#!>CD,AY^X@O!X@WBQQM-$N0E477>H] MN"*?'390Y@"NT>+K$]_\!A Q8]=#HP5F *L 4C^2->XTGG M.-YFVLR@DM+'Y/IV*N3"OCS8[PV?="< FH#H,LC;S F1BU7ZF%RW^I K]W9O M]NY"'P^1*=:.W5M!$ 7-RE^D6*JT@PRE)8T5?Z>/XW&NXG>3Y+V+W3\1E9H[VF>JUAP+EQ4VLAA?Z$$'*56+\F @-B=!-E.,V\:!F.TA35>"$ M-G+>6R6VYKH=T!^#,-LJ&DE(_G!9G1C;$L$9[XYS&66=TJ,/==;1ESHV_E1G M$W_K[*M.W2X^6\8;?FAA 6^GG: HMB1/$UG"?^UV;P_O/C3WT\B+.B;/!>?U';.O.,!IH67HCS /+H!.=PD7S-GWG'@TD(? M-"YJU(.YEVCH3D!<XJL)PL(%3D7AG MKC'@(>H*-S=#O(:3W*NSB.\?P6+P:>(';/30+R7:.A./%QRI=[V'V2]56H9) MD?8(I4^%23SBB[H>SIVQ;G3B2C^ D-7%Y+#2B3.'AH*H>V72N8Y:9!O?U3IQQ!4 D5*IZFT":#+5: M4/=8R)H/RWSA3% QD"54EG,]T57D^/.;@1.Q8N1Y'7V.\F]G'7WV#9^]>D1' MH%0\B$5'H#P88%JDHYKB[,2$/&*[OVFE%0ZD]^HI%J?>N* L6LF-E'+P5ZTT M4PQRCD(H]C6NE853-ED!,G,WD/'>=#L!J/'%HPO[;AA[QL0?Q:D- M\"XF[W$-6T6]E4?7PUZ!%>65ZKJJZIG$8+VQW2T ]\ !2\N?V(;#?6ZZII^; MDD]TXF]TPH^+D(/66X#UBX&BG:AH5;0:LF7.5]S"-?VTIS M%V%>WB^F16LVB4JL M/& F%@,4^N4ZS3U<10(> 19W,3I,YQRR6*JUFR&54*@E<6DM%H=GL#+L78I- MD_=R]O+B.#7@\^"I]]SICT?SX>AI,.H/![,J-@4!^:!V1I6>L\C*6F20*-F& M"E]QU_,R_:+9)_(+9ZE^V[W^>NAPK&# E])>QK>;75;]YOQ21P5L.75M:V%@ MAW4D./:,(%@\2$6UI *')K/G"2XIM;)6Y?4\-U4+O;!6ZN362+$R*5(V+">6 MIKJA )S=4O$(J5,FE:.YI>C03JZ@E4(KS9TE9:UE=UPO/1)?T4<7ACOF&?#1 M!CC\%8$?E!K-( A=Q\\/#!=(WC@8:MS0(T%\+M M>-DS?>LC>DD(("YA.-M96"=*X7SNFLW'_;]_N>_-!@_XHG)VP/YVH0]5O@JL;P':BC9=I4*? Q@L3 MMN!XLW=$ZS<,>T*^@F-/;@[AQ1JX>=)5;AZ+K?[HO$/>[],. BTJ0W M#GS/-YP%&M>C@)+W3?AWLH/^#@WZ0TNJ"O.1$%9EG(YJP4W09+D)35HSWX!^ M/&$VD-%/V$_(&SJ1?>X)HH5+$J=SOG1FM5#D)&P5E7A?HJ5SZ'D!6#P$$(WD M2.P0(2^USGN#3P!-RR/>W/ W="I\% -,U;!O=Q'='+2_]>.RC9Q"T1Y]"2P< M'GDW1B5-H3E?.A7*UH1&T3AO=PVA49T*S R00,X&627RT7\_7S\-!.IJ"0@8VP[;G<1F.9(P+<3TX MCXU:$)601:^)(R,!2NG@X.I$1IO=B^[%W>$3LO/X$ .JC 2#31PC.38S%:.$ MLQOG<5(?K#("3NHX4EIW]CCA<2$135%!,]ME;54P)!B_?AX2TM$4%7SS! RV M"L9)M4Z=AX\JD)-1)3+UF:HQ]5:,[!OW6KW++I_$N@H,>P[@^HHVD.KMR2F- M'@V038:,R+1M#1PRY+6EI"%3HB?G(5,KLLF0$9ECKH%#AGO]KGLDB>O@ M>8#I '@R[M3>Z.>^SRV]%Q[\&5C^=A@&(0WUDW(S)N,6WG4]("T_&A;\;MA' MN1^UZ%/+1XV^&"<#161^0)T'"GEA5S=0>/J45>)E]_I6@Z>Z#1@HE3%.!HK: M6W^Q Z7L6BQWJ(CKU7FP*$,Y>4,[M")/$K'RY'K1#C&H,[= M20#-=U0_>@\6*GJ-&L#-\CZKORKWK#[J8\=R.E$O\>]0/[]$'8V?U7L=W^TD M?>U$G0TKA]V-7^"?']T?--K SC2_$>H^(2RD:XEG:8)7VOY=*P"O?,S?!V? MX;>+V_,X$0ZHJ' #;3)*-7)LG$U7$A 5 M%7U :Z^U*4((6MC7+ZSPZE@^=ZZ7;E6G-+CK1,<+OK-+,5F*$=%6X>4!V@OM+'"BL)&Q!KE)265^2DOZ%=.AA$U8%#@ZI=O,VQ1- M9Z^YN5.9ZFA)A]I4>\PJ?K!THD?I>Y+G@JRMU1O6DV@U+WN28*2X(6N^5C*_ MD1S[[P#.T;GL\ @]=6W[T86XDFCNENJ$GCR7PSN!!!>'M:"W)CIE4:X!53DY M1'B_WZ[!(X[32@8:1272WG/M1]KA&XZFC[2L"TKM RW[^?,X4S_.�BZ'D9 M*=7[8=:-I@^QR)]%V1#+?OX\Q-0/,0:-2'GLUMXAMG-W43;*CGIP'FCJ!QJ; M4J0\I-N/M4-7@Z:/-?W/9AHX=YS80&/2B:0'?>T]FS5@I!T:GLY#30^E2'A8 M> +CK-#O30NK/D\OL_2X[%Y?-GEQU-#L7UD9$F+UG,"]0.WO( 5VK5UCLL:A MHN< IXWJ\TU$6<.S?@.\RF/=\RC73IW'MH-6)$K*[3J;VVGJ?/ M UN[@5U5G^?;HTI>)G/7-VQUHYG6F?.ZW(#ARZU J3=0"4$4!@;H+196)-+0 M6;IP'?Z2-Q# -4<@@/T'.ZDOGM_\G]_\EWP/=GW5_=K5X *_*6_^$[R:\I+' M@WZ*O.BG/7'1#[_/\30T7@Z=A?5A+0+#SHD40"RG)9'DJGU/,SY4ZHT8P*OT MWRS_/1QH>)%_MS9S=^"@!6J;&P"@1 M:$85/<04*+R&W]#?9!=H?? (S\*T/ M),?2,@',?9]/+JB_+DOH)*ME#L%U>F!?,=K+BTPM/J!D\2/7DV "8&B <,Q( M[KSH-+DDX*M\9L3^0KTB:@P+6:F[K5QZ# SH6,[*0WT.D:A$E_*-G>FSIX]@ M%"4X4 CBWA!)Y. -?&K:)).+4OK,GCU[>&&BW,&KO4F7'*>NV[W^ID$0586; M%GZPB/>Z@B:$*7# #WPHK+0*E6CE3(W]!"(*/N*EHB"RS*UU"7(PU#J384^& MLG 1L\(I6$@2H2GVMG01/=5?L[FM$!#*KE*MC8/)3D8;!YIHO% #9*51I!)H M",]_MX G!]P/X@1\4$)K["E 9J=)%J$D7$6+,A&ACJ-?7I#-0)D"[5 9@TRR M##&G$Z-9$W+4O7I*@E&JN[S"N[&W8J3>#I$:?&XL&!8N#B(FHGT]>2V'9P1" M2X-1JI.6PO!Y90 +_P<[\%K.:HI]CK$9&%OTC)7PY&RT;V45==V]OFNRHW=M M?.>&5&I(D8:%CDR#%TT7EZ+W*3F?.#-=*I)2W^_>*"$X0FKM.N&9KV]L+-^P M0XB\*:()_ "+1Q<^!OA9)'[_C,VG!!9SMW/:5!4#E]1-=,,FW"@L77PJ\GH? MAF7C4PX",GS@)'KR+?C<:;.[5E0%/= 4^/ ZUS"5%2T)1 MKYEM?RH<+U^,3VL=K".AT+0]-^ *^ ?3>C22\ETTR[1TFJ02#5C,MEM]V"9I M,\FU%3Q-;I7 )*;/78O.(CM/>'0DLTR0#\8NK$((L!=&*$C_'3\C'KG^/X$_ M!::[?A4C_8R5 ZA]O=XSKX!-"T/.!E(JH-'1]:CF>9,L:#8,^&LYV MMOOSX!/#"OBBJ5Y=7!Y&4QV.^N.706?>^Y_!#/VX_V;'77;BK_Z'UXF^VT$? M[L1?5AI5=0?#7I:"D*G4&BHNJ@.(1^NA/N^! Y:6WW<=WW("M!*,-R!RY"Z* M"5N^P>R0NKF^N-# QYY!PYGK:K'2:_%H3!3''@$2QK"/4*$3B51+2[8(5C^1 M7UR@2'U?H<@%-X)AAI2+W[4_HX_P\HI>]Z3950(:J>\8E'+LT87 6CF\LQ:A MUDGSB@L400\'2+GZ%+D%4I$NM:,Z:4;Q8"+*\Q\;"#69HA[BCHO;O5=H44LB M[%5UI(\HME YEL)<%JXJT_0R.P_R[&-I8D3YUQI MB%JXU]^-PVB'6G*&HU;.0OFMV_VF09#2&F0(H0+SRUT57,OE7+]E/WB^C:OV M:F"Y!":.WKWKV!1MTK(0]Q+K/][ !:@/VTQATE. ZBVW88J0!8.@TUAVKZ)R M+7<_+W\'0"S>9""4D MJ[I_N8LTZH 53MRJW81S>%S$S'ZPT.2-$;>PG#Q32U%K3>:.#-$%'9)T7%7AD!"&2)_E$_VBCR2P\&-#_)H=P\2W=.:UD,7QMMN].WP$I2^M1(E; M-9Z0YIOZO.G\!1AH)#F+@8/([AN6P\\FYF9;3+%J&$@(1*0WZW#,6*2B=X3. M _@ MKL10[O\=D^,=QP@B(K\(\4P1;"_>3W/E#OY49_>MT[[\)^TA(# \I*J, M5G8QW?K1SAS_\"^;2X0'!(+G6R9QH.8HO[!. MTQ5>3L!V/:I(3>)HWQMN5*(M#; ^<-R)^*43JV,HO94F$T:DR!*R$BE9]O-/ M3'M[(^_J?UVP^B??ZQC.HI/Z8N@1&'_SO O("_8S)RJ33:=/5+D;\=^ MI/#N*@&F[%5?4K_)'!(CK*S=1XM-WLVBB139)60NE./!FTB*7WAA9)#$ (^( MT"9[E$N&OX&F,T. M%KXU@D[ B,0(J&/C0!+%X:9$F*WFX)3,'M#3>:08*D% MN<;9RFBT\\_JV;;[ V=^/42F_X[C?0[SO33+-I,!\^M%]^+N:^,H)$1F0A) G)+:G[N/%I)I!GS?!H0]L\2O-9UZ=4.CA5L<879;&A\NQ&;N_0EC MN-X@T!X1NDAN].N]=#_G3F5\332=/$+DE9&I3NXA[ %$=ZIHN 0VWAMB80O& M#OL)K4SKS2>27"AD9'$3;1Z:@F7@+/"]VP2"C6&E+^-H=B!:O:;SHKR0,A*8 M*;F.I.X->>\BOQ;<1:8_E@Y,DGRO/?>0OZL)5468Z C])Y3.$OZR>WUYF(]5 MKU']^V5Z7)<13M"%XB:\Z)SY!O0U"5U& "'QVO(R*]\$=S9.J65\3EPOS%O* M21ZNIEO-M.I(2(W:V !"QNY <'*WRI5835C@P5>]D&C>)K95/*8?2-)A"^=()NO>-SBD# MYY@/I7)WEGM7TNS9HYJ8@JYN22&V566LG)GO:*6WT0*.3?UAO!D=YU4 M]SH^ZE\'=["#>]CQW4[2Q[!^U,OV6+K4)&5*Y3<]8D!1MDN6NDV;8?*6EO*" M:N%@7Z>O6G4G-2T)4YX!E5S7ZN+4?M4ZO'921# \-./?Q;?5F5AWSB)9Y_.S M:?==K^C1H,A/9=5TU;V^T"#/N%3*R@)-JJ&VU)Z\#F[CFW+X$3[E[)DF#'#H M*OQ?)*UEO%DVS9@@JODSAZL )=62>[C^57B(?XC!,[:ND$G&5*>US"DOO83G M*A5-36QT2'Y!\& ]7E5+MG):E"F)AX1W+JKME4?0#)T)='%,8ZZ@A+S-M)9N M0@&1$":ZXAHFX>!*"2.77_CTN$,66T)DYSU##H.M*6+($T2'<%:&A(5/CR%D ML44]9,G-,*CF_$9 ,K4%+&!+Y@C^Y[N*'9=MH+1XB M'3HK'*0S6:^S/Q=/0.7:U9)A%2E#G; $PE35[EK@0?!-QK$N)7[?=1"(D0M0 M!&N8<&BE@V8^ M'HSG^L,:[:9/60 DNTJJO8;;'6?8K];RJIP6W:QMPX "XVJ+3X1_821H=!F?!9A.]>C'L MON&]/Z(I<^@@2-;A=WF]M;\5>6OC3G2B7G22;G10/SKICG1P3SJX*YU47\X^ MV94DV'OP[U-F1GV<@HT+T1H6Q8'R[K=]M**M7+B=XY=[!/'*-I<=9=?=Z^N[ MQLTA0F6G&(#5GFTBB<($Y5A G*$\5,FG14_KGEM#2[4+U>,Q37CA:!H3'MRU M89$"R%+K:,D&7G4Q*YPB,U'E*C:*V'0S+H3C1;DF5+N>X-LH?_L"_'=W ML9>5Q"-"Z;90A*[#8YKPP"'U49>:FYJ)L0WEG;L]$R$! 1^96*N?*KLJX2/( MS8KT]EV-274O])P0S952\E1IQ I%0UXX87O47J2^NUY;N;,,M>RI<8$?#*D/ MG-2\%=A9EN(8ZO@1X.*/@+Y(T2N=&H\JH*+?8Z?;4R"04)[%Y?F2$>=*&65^[UQ<79V:QXB3U392:@UOJ*G)B M6 NR-\)QP5.C$B<2$O+\J#]T921G8\J9)F08*(EWU#Z5C#J/G3%P$$X^8PY3 MW=-F11EP9*3D.3Z'U>+_@J;,"(<)@&'0(#Z'EN[%Y:%#RV@P3YQ:)H-I9_9K M;SI0ZIDR,""2?N4E$A:XI9"*(R9\O;OMWMUU+[M7U]'OEWUB+/3V#/Y MQ72FC);CFPOEX[%;+*"P9X-)*@P%JOX-X/%9)H$*7&VTD2K5 9!BM5>SDX"))Z.[7KM.A$'/]Z'U%OAAFCIW M'SDNONGH08C3L19L,RHVW$;B24)%PHV /E/;@V4'Z+='@Y-O&)KWGT8!=4PE6 !B2(QP$C#>+2IT $FJB" MS/:JWG0!'YRI7#8]]!*1!!42-N-FBSR9@9Y* CRKE,U MCV#?C ?KPUJ *+5NO(OW7?-?4[ )H/F.5Y/ #0Q MZBL07I0:'OIORL*2G'\3,U..%8*S!;V)0-?IG@RB!&_AR]<<"/;7'<"TT7]( M%T$L5=O!G\H22\T5J.8-VH%)=_$00,M93<(LX]$-.G&U*:J8A?"VV[W5P.6@ M-&E*RBMH12(]>U9E:"9C@2-LDFW/!?5.AS)D<:5$%51NX,8C9 (M8LC:?8&6 M<8 NEWZ/4,6H.GQL\NC"N?'YF^6_O[LV]L!"O\C/SDLC!6=3+:2/" 2DIMH3 M]]J9YA,:N_F%@RG9KB7.S"$NP#Y&:?QF6ZL\CDG^6CMHJ *D%CYOI1TX\(4W MY1DC2]5V<*VRQ/H]=P=MM!);EP4)[+BIN@:O'R^FY "QMAAP[J#/#\@>.C3O!Y=7T]]NKZ MWIL.>_?/@\YP-!],![-Y9S":#^?_%.["1>A_411NGJJJ7+EV;X!S.VH!CRW^ M-K5VEMUWB-V'PM;L_,6CE)R]<@6II9J$!1ZY"RX"<9I U[86^"8M$3K'48!6 M5"M2B%!M]L:02^QZ_05+Z#;WII]>6"O]FU,W!]H M'['U\#8E]SZ>4K(1NJ$ G-V!\0C9^%OZ>\/&V:1F[P"P9$,@%=>* 6)GWU*B M-]XO*T]:JG\6N8*6W.#2)AL9RLS@3:'#R'5,G+[9M>TP&4 TC*B.OK0JC:$$ MTZ)16N+&TR+_X/-Z M6-5ZU] //-]= X@F6>S "\/&.%^0W^2\('^=S<5 M7HM7?XMC>?_"5TJO2%*(>N&D,U>3GN70ZRBYM$XI"G>/=N.07SA#Z9N+[MW5 MH9.KBH]#A,Q1_TFF_N)9;52))16OKB7' H>3'^<&'2<9)KV7&AAFB0\3S) M*!_%=E?_:7)DK,%XF>DY\31)+*N5&CDTD54?GWBR3RF9?HP=0#REY!?43B5\ MZ&9/*1PBUJJ6^0^732V[@NU5"UU$@>L3@UI00<;QDBK:8M44"$E#9C*I5 M4O$V*Y9+9@F>0BI8X7G ]^8X%1*=#H?E6LT#)F&UWIH]%_@ADRMD9;WJ=F\. M$X?JH-A*VS&ZK%+C^ZB)&'>$P#XDXR4K05)5FD$1NI89:%(DL91\,3)BER99 M]K*FMYSS=W[!=JF;4TZI#L&)BFOQYIR!%?9GC1*26\Z*SX_SV[$?YVSP]#(8 MS7'&G_%T/AP]*?7@/!2OP'F35!R1 *G^!LE[OMU5'2S;JC21SV-)44 M[GX;_Y$ML@1S2UJ.>"Z-Y9S:!,'0E+ 3/%Q+@O7JJ:6R$Y2BV4LJ$NJ[KHJ!#?[)Z-5[Z:7%4M MPWXTWJ 5/Z-W%H\6L!>L_JLLM;/2=;O=V\/ =@W07E5Y95]2SH$-T)YY'3AQ MWSRT*$ #=3DP_7#S7*!0O@9:H5,!(DNWH3$':$+?#4^/A:&WT@7U5*/P?0XG M /6Z+'-KF"$ 5[:H5EKFU$61$BD2ZG1Y-=X ;.EQ5LE&CGI902C= #U2U'&\ M0^41LQUI%L-WUUXD[<"VUI830D@Q5M5)T#2:JLI"T,/12' MRFKZF#1\@DLUC*NY-X^=O!X1P$F@*9P4([DQ''R:=H#38V"'$?3_%W/CD\"A M$BVUG5VB(*FZ@[F+>.< 7Q/6X>!4XV4,#W$#DRK3=J84"RMUE5+#@B?H>MX$ MNDN+=(6=*I$%Y;I[?:-#LD]Q#"@255 "/IUV*3,0AE)] @Y:?.V>L^@MT''. M\D*7EP\P^,3)PXAW_DR5V\Z:"BA(=0)40Z@GUUW\L&R;*<1H?N&V$X9#:JG) M^;ZI-;(.'1/MP"CLR"G9=FJPBBPH%1[)*53-7B1,M#5R'3<+ GT-HE=J/5_X MI9>:#$\-:^Z5]L>V4K1LZ04GY])HJ=^#$(_T>;3[)1SA"Z=-@&IO8B5GQ0A)-[E1% MUT("4[98^P)M)T.!I(G^Y=B5#Z&LZ=7E&J/V[Q"N\1)-DH:SLMYL$#T\)#"" M7BF+W=?N]:T^/IXB6%)"^H0YFP;-EO%EVF."+SH7C@FTG!*/$"2OD M6(D5W4O&-O*"BX.V,X J9Z+WJE9@G78=]+/)2>P5&+8!U&9@B\T<AZ/>J#]$ M_YK->_/PMYWAZ'$\?0D31J'B80\Z<1GQTSULD/A1FWVMTJZVK]3+"NVY&@P:DX"0^<# MX>;"[=3X\8)0Q \X26M ;MEV,81?U#;FDXS&0VRZIY\,,JXJ'C/CSG>3[[3A@_"XN6WD,T 2Z?X H$SMA2-,+-W]8 M_WX4ZY]36OW2TXL(.QT.WO7&=K<@\?0HNER@5FH;42I(K=_Q@C9#/ ,#?:;H M5J&X0A:*;]WN3;,)4%+BUIXC8BA8KY_HE=I&E@I2M_ 8P<\8W:IGC%TG.JE>M.2DT54R,[PZ@1<8]ACBH'3@SP!W#O61%BF9 M5J4%\T,W;W[@EEG0&<56%BN((#$EUC&EAE:T**U39EH016XK*ZB!D*EUFL0, MHEJ9B4&1634U*JC6)(0(6"[K<[0@\2!!]!/PG-, H[[N**V91N^UV[PX=__1A M"UW5S(PIDKX6^WA-Q],W+Y)[@%U)."^U[O(\Y^YG@W^\XJ/EX#OZWYG:9#P' MXA4EXR$65_&\)ML9:FJ=G*):#MLB?61>Q+ *I6\2DP,)T*=HF6SR2S=!CV3= M%*N5)F:3-$M/54,JWPCMTE3$I&"*K#I%=S_H.3W;=%[9IFB3HH]"?5(DU4F7 MWPUHX5EI:OBT2?>P6",TR#';,LDGZ BD[IRQP7^A3\U5VM2>#WQSMW H M&F]3.YA,BVQII.):\D31;)=FE!O]71"7KPUH 9^%-C"T6 MOK=V \='&X!P/2 1B%JIE;3AEUAJ(@"A=]+A5SU@_KQR/WX!YB+Z,!HE2&0X MAT:8; E"PUF!3#HTZF7TW=W7Z^NOA[?1<:.=N-5.MEDD4BP0_I\W-/__]_\/ M4$L#!!0 ( ^"BUBU2)>E<-D# (C[* 4 86=X+3(P,C0P,3,Q>#$P M:RYH=&WLO7EWJMBZ+_S_^12\J^Z^NVJ,918@V*2JUAVHJ,2^0:-WO(.!,%6D M4QJ5?/H[)V"7&&,233"QSME5D68RG^[W-+/[Y_\L=0V; \M63./?_Q(W^'\Q M8$BFK!BC?__+M+(<]]__\_M__OG_8C%,N<\TRYAL2JX.# >3+" Z0,86BC.^ MQ=KF="H:6 58EJ)I6,92Y!$(7R'P&_H&OTEAL5C85$:TX9NF<;MZXH;8W,R& M#:/;U"^"^$7B)(4E;^GT+97$ZI7-D\'+965@B9:WHN(6M@8_EL3C-T0JF4H] M?KP%K+DB >S.'&!<[A83XP,R14AB+$4E\1@EI>788 #$&(D/:3J!QVDY'0_: M&#N05Y!?AGWKVK&1*$[__3%VG.GMKU]#T1[1B ML;A9#BS-?YK$\?@O='L &;)Z7#)=P[&\]1O^TS:0;D;F_%=X,U,&RGYYP1L[ MU"FV29%$\E#3P1/A"_L$2Z33Z5]+I(VK5H$D[_\\O+&K*D]T<:=-='>C56]0 M*J@I^TE[24W(&)G8T4QEKV8F LU4?OS^9PQ$^?<_.G!$3#(-!T+2OS\'#E5/,6*..;V-XU/G;_C17_#VSC.R8D\UT;LU3 .@!Y3E+6H-6,&?BBP# MP_\3/I"W1 F1C+F&XC21*O+P#Z$%.2B+EBSPK9QPSRP:U>&TNN1=26KK\?S" M:Z07D#/VK:%HD$++AICAT^5JUKQ.4FI$U8?16FG*=BBP0 MW1[%)VI%.8%/4TF0&'TL34^N)^\GK<+VJ5XN(%-FS1O^G ,RQX2:7ML6@! M6RC<]_E*GY<[ZJS37\S:L;0R>QB]38]E("FZJ$&/R%7SA]6ZY7^]YCK(,:(P M>HIVEDU5 MS BM!]ZZGY#\XC.(?:-DD4,QC2U*.=N&QKI#Y*2OR7<):1SC228U)8>56KQ? MA%9/T"D2_E_Z.5KW&7+.M?R82""%L-MM,UMM ?)_&BU%BL M[1I&FK)5P#/N_N;"Y/)O&)+HM8#HI6'5^QUCWNXEZEU:R:MEKI+LSO( M-=L%EA$HU&/TB<_K:QU^P)1W>^M5,BVZ !-)O$N51\U%,K?T)@N!1KW-]SZR MKPSLJ.QW5A-'Z_XQ0_U!U50UQGNS1"S/#>@E[36$!.K?$-H ^.0N5D7+$B;< MLNOTE)+$NS(?;TO-EM(&BT_H8&!+33""#@YF+$X5WMFQ?*U"0BW .R4^"T:4 MF.CI?56$/66:!::*<=7LQ_>V8VJNX8B6EUS5[T*#G MI-"QF!^_J^;I^@ES>:$IPJ";62JV_ZNB&(KNZA6@#X E##K$J%;D*("+RD*X M]S@Q;30;*SI@YG_;A3H F>VM[,N"83SDO^MC)PKI$8SN$L;%6(GK&U4=CZ6$ M95:(=88+#Q)63U?>&$%,70L(G:+*VL,.,<')YB2OYTPJT1LQ/U[#CM"/",P" MMMJ&R:?/EM555I]J,-H%OG^I35$[(9OR=R"?F72G [5P)_)WY"3?\UH[SHIZ M[*I\_X2J2##OT:S-].=%Q?)S-@8&0;K/ M>)M=3H'D !GB#FP&I0]-F#.L;;<""1MK7E:#60-D&J3U42;N94=>ND[K:;Y4 MUH7JL,[!L,7:VL#'?M8TS2B>IBJDWYF33.S<9TN2!DH3NHTY&2?PX, M%0/X2*H,7/0I1& NC.H#T>W0Q2O=_H,GM'56=[+WB1Z8IHHZ@E?J.;K>4W,X M@5/&N"?B_02H_,JU-5K%:IP9U6*M5- M9IV@/UMS_^-@9Z"%U)PQL/P?]@=7+T[#&+QOW9NC=E=0O01X(,F2FJF5%I%A MS&E@+0<&3@M(4.]1L869BXHF0F9 M&Z)&F@#2]_A2>&^R+<(C:RJHM4J%OA[ M*Y>P$$*3[T'HXV1\N*MAY8R#7X&9N<,,X7\933,7:#P"!8X0SA2G;-KV^\IZ M6LRJD]U\8<#KE4'/:"_GLZ3V4EF/,^:P3WXI^J.R 3N 9#5AHQN6H[RX#=6 M&Q9,4UXHF@:9PAE0<4%;7-9=:VK:NW WL06=9H=*F\\FE%HY-1'9^P&*8(@] M+NS7[O"&7Q8"D//V[W_0*-*M[0\00;(P?U3I%HV]_/O#5F#XAD:+_&MC?SP. M=CRV,J6;I2VC@N^O1TWZ/VT3PC;ZY8_.W8:<\RDX,J3D#==V1:T&^3"TP,R% M\N&@3O@&!;LA0"!W95>#ES6/,V176H= H8VYO E2=\LRP^NVI];[]UHN24!E M"+L$_"QL]4N1T>^A BS,YP;8.X":Y4J[Y9?'+Z^:L\$(]23X*<./+:>:(BEA MUS!9T9$*F\;&@ Z0^^,WTI>7Z/WGU]YO_5YUA<]0'!O39:O0@M3]^KQY[EMRS:0AYO(;$SZ4AQ+:&D"?3$(F;<3KIL@]JUY*:[50JF8H_ M,%<->:6&$,=K"'ER#:$$(O0M4$4V/]8JX@[L '#9.?S7DRK&H_NA8DSGR29U M;W0-WB-B37;P,%K29B.RBK&?QHU*["7R;.H _005(XYU*=N/G@XPG@D[FD!# M,]KJL$=>&\U^"=)%.^-MWUF']3G% I)C6J%6$.QD7N^UFPV)_=(!QS/:\5YW,M9(.XO?422OCZM2LMG(#/GQ(JKZ$5EW M$@4->5=(NC5:'6H&8&0B_B#$6WQWV+D7J^5N-CNX=,UX0N8U!#U>(Q)@Q!E M8QV\5'9J\VEF,LHHT8TPHJ81GQIRGL*+/-6(47N>)W!N,&=)/5U-/5KFHQ6FWTK66_.P^5YH8N%3O)BX='#XDD BFP3M[I+RZ M\]%2;@)'5 P@LZ)E*,;(#D5LI.?\.*DUEZHGY)KL?3';\^1++T[MI_5KRY>1 M97_@0M3JHB)S1E:<*HZHA6*N->6&UJ#Z.)_%5:.A&(WL?'SIEGR0Y"\N;4ER M===/G_VQ1/28!<:(D7,0C.F$DO?J;"'K+A\H-1;33,.1T/*SWGN?J.P6#;&:3Z6K]U5 M%]5J:IJ^=!%_J.>.B'P/>^YAW*U:!JG3TW3!OCJECCN4NOL'VHYXZ(?-'*5#1OVM0T M2/)JXN&J>#8L$AIM$FT+TK+*?;ME=4L^5V_?8W2+E"^!Z,TH5N0R\TX&*M*];Y]+PWKKU"5%:1&1].$H; M]&MYK5\0%GRL9V4HH=ZIW&4N7=B?$:5%1=I'1VE%0=<>00:0K_?7%XZ>G^45"-2]WXJU7:CD]7T?$=5"Y6%V1I4"W:5 MO=KJ1>7)3Z4:,]T<,?"*,IZ]NU>X1H*MD.)5JI_B5T^U&$W">Z7QG57.JK'. M_;C$MX:T.8MN#/7IB]%V?>KV^K+31TKO6U FU2IRI='URFS)O%],QD.1E<>1 ME6QT%I2=(VIZTUY8:*L"&/"COLZW-\):U;)6;Z&=?="V=>N7_&?1U=70I$O? MW_/%&(4KK8256W*&Z(TB6]?<84*P@<$!+CPK^:._M\V^X'./^'=*Y8KLJH+] MV[ U@>U8"MK[R^<)VN#);K;X%<+8(),BAD,%!T4W/W.M!S=C7XI>;8#G (E1 MQY7GLK&W2%/FS)25'I8Z?*V7RW>8,9?*5"*;B45(FB?+PHY<)_H6X29F,VUD M6;2&QTJ3/M#RO4DA=S75"U\?^A9-\#*ZW.@M8@VV1.E3L5S ;;$>V; P4IH0 MX76A)]I%];*TX%GROD7$U@0PPW5!$^BB8@3;6_K'[$@&JR&FB%M(U[OOU_MXRTFRX*%'+%M4"2B#R"$=*FGL M)W,#=P?I_%*0=X1.K*N[!6".+'$Z5B11\]4B/#M/X%M".A?G"G>QY7Q8QD7,D)?ZDCF)$^7\ 23[57*E7@J$;WAQ"-E7,A\:1D_*EJ\VW_+ M2U%TO/;2PDLNU1X4RRIHJ9&T[VCZ[RB4+_;HQ%'^6] :M=$LF9NHW:0D#%TC MIB>52,9NG^N_+U;&T'];G=[L+DWT[U67GB?R>69FM1N1M._/]=\7*V/HOY-+ M_;X;(\9W:JQ=%>U>%;3OG$N5\1G]=Q1D_*C4_&[_G;7)Q"AGRTDUT4K47;HQ MYNK%2&)X-/UW%(K.>W3B*/\][.6[V62V,,<50)#48L$W9T3DAA0_WW]?K(RA M_R[/;<4BJVU7C;4&%1IXE8E4O-3<[(S^^V)E#/VWW!Z*GL=P+3XK"?79)-%4 M '.I,CZC_[XX&:-!GVS %W^Q2>BSJ;A;X,EZ)L.7F+*'@\:H(M.7%J^AF5Q/ M:?M2LM]W=MA1CCE?+O7QIN[F^80 E%Q\454'DTLUZ-,ZYH_8%O)HY]K6.+RN M=^867N"JL8+1�]YE(#J-,ZU^C("3I(.J//^6IY)JIZES"HOMB&L6\DDYP/ M=Y ?,>WQ:-S+%1+YB4V-Q[S7'RN@-+F;,(TK[CV2T]DVU3L:]QY*1&*8&AE# M-C:C*5VKL9EX](ZT^&S<^V0YH<+>@S!UZ19_S\;:BWR"RB4:B]ZERNELN'S(GL ,@Z1I8+2*9U5LQ4[BC+;8&[J?).5_K=J*[,^$1A&[J M=;N47I9/>YMLRZ(APT?0?SA]:IES7^-7HJ9I1IY.J"[-QN3"(%;61H5L-W+& M^B91'R3\.T@^XRJ00F,$'UO]N4<#V-[028!FSE&[]ZD!03.Z56Q_#0TXB@%? M61/\@XU=RU QV[BD".6G1G-Y846N5)>=/W[V3<8/YU_QTO&758: MQR>J6VJ/G%%>KE6-RS;LS_3OD9+\NQL7!%7G2VRS,BVHM7KD:I&7Y-_/ML#W7<=^'MP!GC>D?J2<:UH2'8-B-!MMG^?I%KJ"@# MT 8:D$R=,Z10*1IT06L_)#62S])\2KUK-4@NND>,/T-=@ 9[R/N:&I#>TH"T M$,>#'[NS\H#,(EH48*_%7P"Z+M;-!;!:GHVFLH4JT"W,C'%Q$*/9K$EKG4FI M0\:]R*G [FR\7?("^3]#WSEU('VD#OB/QO'3H\"[C@0^?E?5]#@_[-RGIC%6 MG]."4J<*;>/B=T'_E%U5H[XVYUP:U&=&@W3*' VVW>\NT2@ M",X./Y<&\7V>6.3C0X$OW4]9P^W8.%NZ8M!%1S*GP*"#.4^*=F4V2[54U>N5 MYKF<.R3OO,A6/Z*<\WP&T@2UD;B0V#,%H24!0X0-;64W#EJ+41MF+2 K#KN< M*A:H&171BQ/(@:Y*(:NM;/VG\J*D:$JX8>;6+BJF-H>LW7UFM4U.=FEZ/8:I ML5ZU>]=0')[QF,CAT,[\AFU>K7*E8YCUK#(=K=%/N;R]8=,!-I^O; /_/W&^ M8;D#:A7P?,7R4)L8REPF#9&AV9JVZ-\;RWNE "(;%QT2YS[R+G5P[;529!?5 M_# CMPE5+RXFC"B,;"&Z^5%$I'BV$NHS27$03JU!L6Q*XKH\MGK&#\*@?T4% M:'@7>5?T$MI>R;!7D:B9XM-CPY92JMN]>Z@D.9E/Z9&5]@&R-V(_AN[OF :? M3&=J17=&)97J UM:ZO%QMIP16[7(XGST=2;"B>_)=*::M.GRH#C+XUYY.!"K MW?)\DKOJS$6ENL_%B8?&:9XKU*_>+;BB!3TEV-K_S\YX51&-A.YH65XQ1$-2 M1&W]QFH!_@0D\K2N]W$]7Z=T0ZPUC.BM33EJU.>U5?^CO_H2ES=*_1R;+ROZ MW3-ZL&)\*^CH9B@I'&?374,)K-SFC*$EVH[E2H@_+6#-%6D]X0Q/#:99B&09 MMN"8]!V5CQ>92635[2#Y@=*]COZOJP>^W7&&[$+*O4="3Y?)ROUDXH[56MW5 M5$U;<%DJLM[K"*$?(/;K2CBD%X);7AQ8H;8SAIQ7@"8_DG@LWM$6(_Z>4&>$ MLTQ2RWHF04:_V/J\Q%]!_&5IP)X:^ZFPOGHOV:!+WIL\$.=ENV.9Z!>3W2(S';)N MIQZOR&R?[<6N6!]!#=@S(G\JK!^1E7E!M?FX.L-;K.LLZLPT?TPI0]1IJ]3)7K+0/Q[K(R#AUV!]0;#T'J4Z.5X? MW+%W0)93>O:2O?OG8_V9-(#:+OTI#B@K66@$I@XL_S15Y.S&RG0E>IG-.50L7DJQ9%8IIR;5N(+G(XOR;Q+] M ?(O2POBI[5ZD%M6\7K]/L47]!()6%T5O?+7$OT'6?W9<[I36_U8G*26!#XL MX6"FM!/5&GZWK'PMP/]XJS^Q%E "@9_BE/>%RXI$K)>VV:PJXSVZT2;Q0F1E M'<%3WO'W2_2DRWF:P!%AP"NSHH7.B5M7Y76RGWPP4RXN%KVDAV?8J3"+?J7F M\!3H_;2>;>9 A&";2NW0C MC9?J,7[1S.$U461&AM)JURZ@PALIW8C"XIK7'YZ9-:VI"1L!5=,(BR>KJG]U M5F>(\1AG9VTW07&=SM0=1RYF..;@CF=I_$X^Y%VZD)Q*;/:>=&-JPAN6M/2B MTGN(7OP835V(H,]XERX4TXMNLR(;#EX2#&)>FR\FP^15%R+K(_9M:MZ$"720 M-Z)?%9A;ZZX>RG?8=;,S7I_TU<*H+G;H\?2A%8],RZKJ M[96*N-R2BDG"V(W-I)HJF#>9>VG17":Z%R&5;3*B+I4U;J[7H4+<7/_][N6D MZST:14L1!QIHBLZCZ@V07/AB;0Y@R#H:.^%L8V.$GFR90VM]AS-DL&PMQ"FZ M$S9/RFK6Z/-QP(N-5%U5Z<9@C$>VF'OZY:)'?_HQ_[V5K"^$ M$-N/?F9J45NM^U@-RCZR@I-/4?$&Q,(NN-.QJG-S@1O1:B,9O0VNCXE,GF'= M^S4_TO-B(I="?8;.'YJ.,\X5U62O5U%XL;=54Y/EY2 M]+I!&"U[G+XJ^&7&(Q$M[P=3'\)Y#AM-W;G<7IBA1J(WZI8I0\[5K)!Q1V'U MIBQH2)!E0;>:BJUFO PPI+$N6NIN)BMJP(9I'#!<4 7.R\T\F33]<>BQ$=,5/Z[X$1W\J!E?$3W2]:+2K;3-CIJE*UPV>9J*?@]Y&LR%Z-\X!Q'I;R M=[/-U]447FV4P:J-MNF(VAE<[B>SO83.ML8.KU")P9R(WH&''UD6>+TI M/I'0U4=^13N4_)//(>9*0)FC^1!G,,>4+K-%%XBD&NN,YW.J5Q R7"0=9(3- M\1E!7:TRLE:Y536+IET6F21[;X""B8ONQ(TUA>FB%KWM7#ZV_G6US*]OF9MZ M5,3BUKR=N.O+5HOCR39EF@.0;HS+E^LH3U!2NL:M5SO\-/_82*6\9.(N)ZK= MI,Q!R\SVQ];5'*_>\6*M\MF*Z\446V.==BJVS?M,ZZY[9M]]W[I;0J/1F]**V4,59HU:?J$I2:UWP[(OKW*TOZ\VC,-?Y MC=CQ->=>L%VKV*F"$L>V/%&8/O2(6+U^N=AQG7MQQ8X/QHY+08*7YEX4FV ! MG S#ZQ6F0='98J>\C&2*?C7.Z.4$$;7-KS#F:RH#8=I9Q"6\5J)G6D\[U])P1+UY%/;ZV8,=EX($+[AT:4"P=I]K)/%N MAUC>FV31K)OE+5^JNC<&]=(^VJ1 MD;9(0@BG.._,=T[&DLEVA5JZ:I8O.GE@]G-WN;/K\FL9Y\\U_:QIJ02^/5,< MWYPU)NA6BE;B!1:4BJV%DTC'Y/G99U6\?D8O@1^=W<%'3\JZM$"DUZS;_,B, M1PKHU&)UOA2/JP^ZT2;NK<@I'4QVTS$B?61>O/WH:3B7VN9<^*/82<9F"YFQ MU1)+,P_)?'H\D\Z>&KZ->26]::W!CKQ$:[@9=[>-;C.G,K>:^G MVU%4N>3QI9CD:8V5VF(<)<3QX ?1SRR29&Q>YSV[/QK3G9I62D40Y7#J>,91 ML3C^?L8]=^@XLQ M^4E,R>I3S?0 :#FFI-:FB..K+&\,)>^4P=3YCA="Y];L'EU3UT0#G86]*1W "_ )?%6D MXQ/W]7@S,U1CI61Y1E*Y%"='+C=?![Q;U(1Y^0XY9Y(2.F E1I[@2."UE.)( M2OC14J*I/D].&M4.FUB"9'_N95*<'EG;^B0IX;Z4XJ>2T@H1"<$NT#&WJ19F M;$PV9EE!8#S.C4*TLD4\<:YSRE8JFA<5JR-J+LAXZS^+L*.B)8V],LQ_M1T_ ML7Z&,Z:N8_L/$(]J&%M-5H!HNY:_,7S>\D_ZEKS][6T]B<:<7C9G<8JI@&\"DSE@9-W#7E5HJ$2;5FK+TF-S:K][I!H-3B6BRP6 M'B>0C6L[()'WERN.$.6>GAR0Y0FZM%\)-MW8KP67X>B?'A7^#>P3;_5:=7=T MU^7%HEE*QNM&L[",K!>\VN$+YKE$D51('_?2R]="Y3TX[D2O=KP3Y'*T;41\B M]DN5L<\879%106^^U;;\9CS_<$W%4=:#8--Q>JK=#Q.\6NL78FHA*6OL^S79$YGL44IQM=[S6>_@GBFKN4POJY*U;)R\(P8$_G!UD=&RMZ^O MYV>O!9!4*FDS=W=U7ADG-::LF[$1^-)Z?H')?"3U_+)J7KK=B4] )3GGW79M MD&/S.E3%JYY_)3T_6>WH,9Y'\8SCG*'FC/[#=,86*,.BIW9O-(I>$?9ZQO%G MQB&??M)\3*Y.JZHL>FIVSH+"K%J/%^:1&\F+NI)^T$GS7T8C0U;![#HO#JS0 ML!E#SBM DQ]IZ&B^2(H-GN'PEFJE<'G8Z&;OKQKZ2@U]!<>_H,:N:S15TPAY M$VI77^=S^7JAF&6S[!1G>Z[=Z,PB%W0>HUW/TGA9\HQ',I836A297<(N\B62 M83A3;)$=\PI"EQC+G2D'^2"]/13+Y6C8[DSR9.,9"RG*>-DI1[KF'R7&F5372KGI:=7$+K$6(Z\ M:+T]%,O=);1$M_50'ZB)2J;G%38LQ1/JJH1<7RWVFQCX?RW6*!(]+B^40]XS!3$E*E.0DKW6YSY2GD<@/ MO$DZIN)D?Y&U>].!S)[_7.Q/(OZ(4R,CA<8CKA,CO%BWCGYRD[ 9=5[UAK\;8MCMI@FL6=S%97.1VI/T,G7\- MPL>7B]PT)>1,?B86Z^.DDU78RC7>OD"$CX*V[]FG\5/K'=3((A9436%577(G M Z]N;++$YW91_'6P2N'2/Y.>=PI-:5AJS&FD7VHLB#9E;J, M3-)5(G(.^R(T)8+QX"DU9: S@V;5IA[X;C/3*72S>;K3LZQI.[6A?X3&ROJY7BL]J,6R MK%@O"R2[\'+IZ"TOW4C^61JWA\H?$?D=D[.W:4.O4+93>7T^4TF&G&E+*5[Q MN CC0*2T(<()V-NTP>OKHU;;SLQ9W79'"M[OS/*)JS9<0))UV%/L/VF@"5!5 M5'* [&_&SQN*8S=;_*JBW1GFF_/\O,,FFIV?1%?#!_'"?3Z>RI7N5$\I)[@2U38=*G*!"1KLV,O( M'[_1K?V#TUXI0& M)EE"%1=4E^1+"7P:)^M@;M&1C="/U_8G7+MJ>O0U79),-]A5%BAS%).?0>&] M<:QI];Q$%J_1_#W>SHC=62VR<\F96?6D.;4(G() MSC7^^A::_A'Q5^G. _?M]$#C1:/;,\N#8E]1OX+"?\_X*PIZOV<=WU>)OS*S M?I?NU2: %\M.M]9+RK%F]AI_7>.O"YB4%!<2ZZK ^N^UXEM 5IR\*"G:X[G+ M4$:F-E>,T>XSH47TJSU1K77BMCHKE#EQZ=0+HA!=__&$S.W920?H/&?"#/\_ M<21@;S]Z]D+1B2>Y6Q0M9G5"M-B2-+4JL]A$R10BAYT7,,G]$@HNFQ7H0&81 M+9 3:Z=? +HN^FZHY=EH=7JH(6.'',8'^2&C=BV\TR>$2I5*1:[XO;O ?I>\ MP,,^0]^7#OH>88@,%*$,1J+F<\=;BYYQ-!%>D6!X,@&28Z.5F:+AE15=@:P, M]>!@Q%A2-,LTG;"!\(WYI ,*A8DN\_H=*/)69LG7IY'S0I IMX^8$BC,,5QY M>VAT.!S/9 3YPXG>:_=O!-:BAJ+G!>\:BK4U-1G^]5' MB70,KW;%ONLL59$ 8MFX*RI2/ HKCZ.3XSP_ ZA.=]TETFXPO)=%G#^]6#-&0%%'C#+1A)2)H)ZO,F3JPH<=9 M[\"\E8)MDLNL\#!)C2;IFEI:,%7!52<+KQ:Y '"5*SY#\R:9/(KH4ZK'AQ[7 M_H+$^5;;\@\U]JJF ^PGLB;J,9KFFW.3+\A,*]FCYO,/&C.CYFIMXA3QD8S? MJ:7([.-HR"BGW$CB3+:F[B98I#EZ]5 M^SI!J1E9.W_]_77$OVLK#M=0 LK1B@"TE9DABY8,G41.N&<6C>IP6EWRKB2U M]7A^X36VSC+0?50%OQ7;I$@B"8$VM_K&ZM;J-_K("Q^4PC$C(=8&W7?Q MDF-/B'%6SP@/S).OHHQU]_F+5C:67V,'KR MT= *_7?>\=$I?%[H%%76'G:("4XV)WD]9U*)WN@IG:$,X9^O_V .K=@%OBQ7 M=-*R)3SH=1PG'Q85U6O6%TMS(U)_B2_8;JP*/2K$4=-ZH]2?O(\NYH!AZM!O M[VGV6 [O-/%KM_?'"T)Q@"ZX]079OZ,I5XWU9PNFGKV?WC%/98\4#CU_6 R_ ME.4M[+KI6A*P@Y]C(,J^4O SFH@67__]XU&KUD@Q8HXYO4W>D%/G M;\BFV!CX+9#X#4'#2UM?A2]/5Z\.(33$AJ*N:-[M?]%:4!NK@@76-'71^._/ MX K\KPT!9?C?O_VG;>4!P(9@FYIB@-5WB!LB_7?0D5MX#T/_2P3_11\4L;$% MAO_^^*-=R\*?]E0T=KK@_WUKH $B+?C,(F@WO/3C=QO-.,',(99%:&8X4%=0 M*Y#)(OS?= ^S)0V(UNW =,9_/^;[$X9N<8Q*!5T^.X_^WLL(_TUX+3+7 8ME:I<*U6ERM^LG$=$5[#$W2,8V?6.XF>X.1.$VE(Z7>SWP9RT 6 M;W^._E0+B+]?DW95)U]K5C!?.V 89B&'T8I$A8&[TWD/=]6&< ,$>4E: 0J M9TI^O01-X/KA>XZJ:%E"1=!C@W&U-\!;O9S6G3O#LN('X(EUC$ MM1Q0V-8REB.G;(FNB P4#Q$^Z?@13-B[T*])IJ:)4QO4H MDJB%[(<..6PB?D/2_]F60_BME4RV(K*MMDW8WE S%RMIK'['%I8XO1U80%1C M"\BC%X/?]7UQ $,#UP%_HUCA*85!>!C^VY&/(BV=N$E2ETC;+\=",CV)_#XD M#M[%O&"BV+\_%&CM-I @XIC:0-0TTQF8RQ_G@43&,%Q1:X*I:3D_5C8]:\8M M*SV8MEA%$ZQNL79O&<8"MH\?\EPM,#(!QG,8JYL3Y;\^TJ235&*#-'L0\V0Z M^1'R8JI5GBEC3;9>:[8QOIICFQB,?=HPP,&(.%9K8@3]I_P75LMC[2*+;85% MZY"(R;;1;2(=IVZP#0=\S?WE0^6GIF")XWW&)_@Z/]&A7DIV4JN<2P:2&9@) MWZQK028X 2\1*Y]VV?#$>0%?)"4UVV#&C4ZS*?8GC<^2 M_IT(\=+R,%2%WH]JG]*MGQAB^"&@?;>YIMYDK?&UM9K6.6'C&' C7QT0TX1, MB(1("XE4.B50*:C@ WP8%Z0A,8Q+25Q.4M+C@#B?X[KT3,M762\F\%+<>7!C MM=%W"(@IXA*#QN."#SIUB;2]+B ^++]O$A"W+=$(N/TH**[5/6TZ;2[OU(*2 MS&>E. ZH]/%!<^+($7T22A@9RPG@E' ;#OTCJ^>-WUM1UQ4:S]V"2"$,]".9H3M_^]/"D M3BQ898$^&GQS*XWB.*F>:0_P&4_V1U4Q>P\TO?%I:13N3^1)THFSIBRGK*9' MNS+BQT[Z"+,MZ=\?XF@90PJ#$W%B2> J9/;-9#KZ@8D:#*8*,/@<*]*/52=E MQ9YJHG>K&/X7!YHIJ:MT@TK>I-$P0I __.?Q:#=^@Z.[3\/7W? T30>M_/AU M*OZD7\6?U3 YN=]\46@94Y:Q0*2W1?\_@E8AZ\#".R4^"T:4F.CI?55FOW#\__\ >;SFA_3+/ 5']B7#5[$PQF?5JD$@CD3W8I2@Z&#B- DUV:8*38 M*%)Q,-'&6E,@H?F",J88F.+86'8L6K")OSZ[H$"]NJ! R8D$GA[*0A)/I 5H MH4 0Z<1 B"=E&0HU25"T_+B@ .8MH>0U"!7384K R!+;EG[F41;L=65[6E,$Z]8W;"=[ ;:6$ESH# MCJ M=N3Z?&#^.G*IU$V5GEKH=MAV MTFB-#(N!^DJ^H*]$/$:DJ221IE_4V+"T=B+,"N8*?J!DW^2D?8# 3 NK.6.8 MT-RYEF++BN07$Z#7W@$3_S%K)!K*@__[K[<9>P0,^7UF>QF2Y9HMC-6GFNE! MN>[:%E8U;_ZZZ-K;:G83(1))>9 2Y*28%"AR* IB*CX4P) >DO$43B?DIX,Y M$[TZ4POV ^ZIDI2D>['V='_LQ<%SUPP TT+7DL98R[$ <'YB M+5>!WHK$WS!2CP;4/ZQ<%[(A"_^L66US86SQPJ/X!B=K?5IUXU2Y.'>) DTN M7N!%TY34N:)ISX;=;R'\,[*3D#-^V%&SZO!CBB%MSPW)5^MW\\+HGE4+[?2X M,YPXC-T;O<">BFAYFFC(WS$IN:8@IU7-N@GM0.LKTYU\.=.H.K-NID2PGJS' MAZ/[*?P$$]9A#JDFB:=H_)IZ[ E00WZC-*-N0110IJ*&K8]EQ8)S6>UKDA%E M&4(SP9"=7'8V$:E1J3,/T_WY 4$0BGL8"X@;!/5=>[R;G@J.N(CC-5*K2OE^ M.SV:'W;M9V1$_"U1Y!G[\]='A*=E$X)/?6P:3T>3!R6WW71;-5HM9?ML9]@V M[;AS."X]IW0(.H;C9#*"\U\W4P;^Y&S;!19"%"+YMXVU@0:FB+GA_("?J'ZF MN0BF,60/6U#YZ7W?["6$6?[0'+" C/GBP> ]))+ C1'DGX._D)-&4XW8I31& MNY)AC.3LG_\HB&4_B=%J0T\F40"5$64A1J:% TD.)D@>22-/DX]K. M_8BE4_%9.= MRDA.3[Q%FM=[O66C7S0;^@@]23U^LHY+Q3C),CF\X%4X8S2TS6)I >V?BG!E M*96Z29$GJ"U1^ U.OJTNM)E"2=XD/W\2[+MW1WA- $S?4(>K8%>N/>5:/'US M@.#3E Y#??[$U/LM07Y;<8+]2EA1&F-93;3M5\UACK JI;JZ#P_=6JS;ZLHN#'U[I MB%S]<75J"$$.?+!=5QT+#GTGQ-MT58T15,W2EVSK;KH:@7QIOC(48+8SX H%??1HYS>\RRM9!U.D.-<2^F%?K,C+SOE%X:LZSV6NQ;1G-]JHF_ M_WJB'M^Q\/["6,RC-0*OJ7F-UC6OK;>VRU_H-EK%B/V)'@IUYBZ MX67\!L.P'K!W%[V=;"'N8:O:_N39QYJ[D'$EQ+=6R+:@DKR%*RKF-\]S>O^*I:%GCX:S M#+7 O9H]:-!S4NA8S%XZCY32X35*ZSUJD>606UA]61)=C($_F_F16/\D_@H$ M,(;8A 0J8Z*FK:6Z+>X!"!^ #;]&PI@,4SU7Q!H#1G[D]PB;0 Y)@[ M0$=AH9?\Y^&;J"MA8VA;!-OOB=]3T7:P-([)HF??O+0&^>S8&&X@%.S5@%(, M1W1<>PL:W=SHOIWN]#BUT(@M>TMQDLN2+\TF[ $[0MCX\B>?_KMJGJXSN]9] MV6:-5!YJNZXX#C02H$&MMTP#I4>:AP&8*GD8A](.4?+G%>5$1PP6<3\R^$T; MV_B^';C C[I:,(.^%6N?V]:#_JRM%]A_?;YM;C$2\3$TU2W;M#L,;^5U*Z:Z MY%TMG_0RXI0ZJVU&T$*C;*>ORYA>9XE^3J#!M@ F2A*T1'0\E>PK+TH(C+U7 M8:AEQ/;P/]-? [YF_]FYX%9R/YFB&%Q\>?:;D%BG.LU1'U6V[Z#N_DN)(V MSJM=>08>2G27FXJ'MX[Y\9O9J]OO]=QGK#Z\;M;X5[:3Y U-1(^\ZC[/_]%8 MN6_E3\3X=#(U2-]$$BT/044KB+,"@M?!5O!S'4>]E E]Y*Z3 ?#ZWE;B<>C47A MZOZH-[(<^/&;?2Y9.:[H\/&FMNIPP>]O-NCN]H);H:XWV#PC\H4FWWHHVZ:9 M[>P=23GY#J\?,23[]E.WHCE(RPT/9/<_8;)\Y" .*@OZQ4 86*#1',?$7#NH M#$". 7][_ST[IYJ6_RW-0Q]?*/#3J.1@0#I-E.Q#GOF!2GAP,RHDH-V5T,-V M>#*CC:$UU(K\J) 8#B-@1/Q/\=#HT$LQSQ/E?*J.T:KGOFZD^4"1-QRR"4LN M&.0EJK&(C@/0RG7$6\AFM)D<)$T<^6,E-!!F1 N2*?QXZ<]+08E#O3(O9R"BOB:,M<";:>'76S*=ZJJG,I!/.6A<8@3:3= M<\5T;^K]X,EJ,[+*(@NZ;KD7I7EYV.1%=K EZ8-MMW MG>1@UAF>0+T/QQ[1&B3P2_9(6TSH?@.!;_1@I;5;FN6CW7H@#,&]9/JC>!#5 M-<]6 K V4+ #T3LV$)%'1CX;&';@!M!@'+SEC]ZOO[ZMJVNW -;;#9C^=@.6 MO3VJ9\'X88Y4>]V%,$K8-BT$M\F_20J_(?!V:%/3OL\?QXY]K+!?^. "J$63\B]FD&DJU/LD[&Y8&J%'N"5YEE*[BX=U#T MXY+^CQB]//UTL-VH^/L[YE% MHSJ<5I>\*TEM/9Y?>(TT5*;M$[H,5Y=-1P82_(#V T-':4&NX;M*R]A";2@D M0RV-"VJNN5AXDF:K>FF4+,Q,L3,RH3<*F[']!AZK;-T/.?.:*6X/XQ=)RO/4 MD5SE6YUE6O>&;+&*RE1D.O$SB:=^IM%VFKLD_T8!^9VKH8.T_+.KXL',6 U- M+AJ$E3 TQ>@I0]=P#*W4-)#K]\]AF[G!GM _L0#CW:D91!:29MH(HZ=0UP$6 M7D3SJ3%_"@4*A8$@#BOPU?78Q-S%Q YT7_!X7CNFFM-$_0\%7QZ+T,WX<[/ ,HR4 M!D 245+JS_$(VD;9BX>FH\@ ^L/5W)2-.MY@;7]L&S)&AQ'2.I9:/>!'2ZZ] MFL-H0%=HVZ(%#0V",>0N_+*-_-UN"XA7IH_AT+5-H:.V;S[#8,-C%2 ]]GYI M;7-7]&\S4 DTC Y.2[O%CK3#H'FA<-_G*WU>[JBS3G\Q:\?2RNQA]&93I 0Z M\!>CKN8U;2,IJ[/9I%TO<@25DIEM2^2J^3TSWWQ2_64.@;;6-N1N&6>W42FJ M#URLRM>4SD.>LD7*5A=HJ]N?, SY29#$4]L,"#ZG4)^M0Y%/C]HX=!ISKI;E M*VRUW4);V=>:]5J302>H9WI8D\VS3;::94]W]/C+8R]UE.^'4TB>0:TZ= 0> MUEI%L.MIE4@5L. T5JP"@)_/PU9\^8XAL2C:#,S;!R$?/HUP'@&)!QKMA\?* M>A?>(*:%*17,\& $C&*H.@1)C..X$\GVU$7&)Q+^W#V9'AUW06S-60F62SF/ M%O'&;Y#N[BZA.G9]U2FV,%CS876H!S3K_X1>^(0JN"MJ"U$SU[-,")N\,1J MZ=OM6@QQ'WENJ.1_L,V?B,R@4UN]05.?MC;&W9G:1. WOIX1]Z/R?GB^ :016QL(3_V1[N6W:L#+ZX8 M:/NSSB"\98/I8YL9G>*V%FPQ9DO*CWF_CZ7A%CX#.I4@9#DN ((:"-10EH0T M*8I".@UD.3TV*RT[GJX;Y&O1!$509O)E%ET!&&V5FVC../7H_$ MSU--Z/S(HV,A.!+I2SQ?];B9-,GT#7[P[/HSD[=UP-Y32M]_.B[I^]+("^]" M-J%ZFXJE;A*?:4#OT;#M,XHA/B%6_/N#_'$4U>D;\J!A?83,PPKH(2^R*I(. M7KL_Q6'#^A"-?IFN?9-]CJ)TCP9?W$;CA]A39PKL+BLN4-=?8L Z&:@SS38G M$ F:PO$GC'DV)5BS"@:)7, L\0*MY V!VLG0_=>N7KT[V/H0AJW5AFNS%2+# MM[@JVVH)9"*12%*O5A_4"$;@72!+5N]_#9MZ:V'PA"'4^?'5SZQ> MX5]BF"_<@WSZ\3N^XL>AIK#8\X[J$@&%:7*M4I[)MFO-EI"@TSB1>B.H,%\* M54[!%]0$%K9Q19=OCBX$\1WA)<-7FVRK5NZPN5:;R>>SM8H_"BF0>#*5(-\( M-9DO!36GYM&F.,6@;XY!)/4=,2B;[6789HO-\DVNW7LCY&2_%.2\ MDR4[;U]1Y8HJWP]5R'JS5F>;;8Z%?CJ=(FGB;6[XPK] M#7$E7F8+3!E:099ECFMER[46WV1;;\,9ZBOAS(D8@UK!@F:PK7:N8/-%P>:Y9>X? M!4%?9);$R><'1-B*OHO1O)7F+ZC>NY. ."%-IQ-$^HVS@*[3@+[I-""ZPC1+ M;#M?:S;9 M=J-YEJNX5&>6I5ML%S[5Z3+;\MDJ._4B1W%C8%;:)%&MBFU7#1 M8@L+6L>"YG_")\K^,LM6NY8M%6OE'-O$*DR[S39;_D(5KM7BX:4ZW\P6F1;; M0@LH@G>QL+Q^+81=NO<[07Z:_(;Y:0(F2VRSP^;>!F2)KP1D;^?%_UV]^?]? M4>2+HL@[$\_T-\269(6I,@76GQ2#:C-\J\75JM AP\OE7HMKU?+YM\%.\BO! MSEG8M&ES'31MVO:#HE7K*!C*<_![68XIHW6E.1@.A<] 6./+;?\1-%[(H!O7 M0.FK0MS1@=*W!#.FP<,4A&M#(^BPT#C@SW+X:U5X?B.8?:DIW6?ATW:3/C!M M-;I=]L>83(UO8V'RB":&7\'JFX,5E?J&8)5:._06-)(@M(!FT^+K];+_BVF^ M<89FZBMAU5G8M(FE-HV&VZ5L-8OEF#9S!:?O#D[?,9)*9XM,M<"VD)WDH/-F M"DTV,),NURXRV6R-K[X-G-)?"9S.PJ:P38P+\KN=9C'4+A8TW$8U?+1+4OB3 MJQ;\%S;@MHFZKBAV1;%OB&(,VH*K62NCB,&?YIA#&8A Q*DX\<85=^DOE0F> MF$.KQGPE.X#FNR?H[J+'W;)9'X^JU?)[+ MLDU4O/%/LGE;H >)_4*!WEGXM&[R)[9N%%NUZE>[UB<)885:AVVB$ORUZG[9 M3NP$,=ZWW.F.6)M(ME:IL]667Y9Y(S9]K1UZ3\2:#09M-W.%FROB-BUR]EH=NN[@%&JVQ015_)_A%*T@.\2X:HZ%X5B.O29_5^SZGMA%U9M< M-9?TYVVRSPV7?NK,6\:6VUCH+G]9-;LT0Q5"CP=SVL-DK,%V! MZ3KR>!UY_)KF<1UY?&;DL2-0:8I.)M\X\-CY&F[C.N[XZDB%9N^+7(;SE]WM M68PGI!*O'\P.(CIZK5.''-'-6XX&C6+(=PY&KII\M/)GT^K7,-MKM/?V:(_\ MCFEH DT')_!2BZ]4WKR0FOA26V>]FR?H=8S 8R4L;.&*+5\46]ZWD1;][N-# M+R0 ?\;86ERARK3]=70)G*+CKP^Y-RU<3>R+FMC1[OOM1TK] MA'?Q__P],"T9WL%7_4*L0;-IX_1_L*V_$8N>\%<7E[$M+H9H%=/ T+D-7UM= MLP*6A!=-6W$4$\(-T$1'F0/4^DZ[OK"@,[@EB9L$I$2'/T/"*.(F27^4^#8Z M[,LIOA'6QE6V:]F]^OVH]"[O-_'4A%3 MY']_"**8!DF*D 1\@"<$2J()83!(DP(8T+0]>BKP1M^K4T@$C2% MX^&-3RC_^1Q/;1A^R'<$];VU_SA_;R>N[2A#[XW=A5E(EVGF8N5:K826W3TN M=42#A/888'5+F8L.P%I (OS'X%B;!0$A4#/3W0K3DF&::*D0*2#;\ MGH[,X0;KHA?G --%&6S=P.!KSEBQ,<8P7%&#W9B:%NR"@>51=_ST#GW"@00, M%1M&6Y@'#0<#A@QD[$Z$+UD>%B=^8B1.4MB?Z+FPL_Z%G6;#/O\%6Q,=V!,/ M1O8&Y)SC.NNW#M"P(ADQEG8N0\1"@@(79 M"E1:Q/8ES+]L&RH,U H+8$'WH"0<$\(-Y!+4PH-J4'.M _=_0AD;HB$I4&0K M&,1$0\;@1UT-:@M437,*+%]EX=.H"P/1AM^'SYFP::C9%FP("U@?/.8WX(MH M:".!0VTUT&>'KN/"]V4H.= ML6F'[RP MM&<&XR!#TBF'KR[111BP@[QR'C"[UGP>X8+ BI#-L)75KQ]PDRD M39)H.T$C8*G8_O,; ?@-R2:DT(&:(&FN#'Q#W?!.T6'2[B.*:'BK?HC2S%4" MX4)^1@0A7U+,@1F!@'-ALTK0Y@'0K6S%%L-N.(:(2CZ./NG M;>I^>+ 8*](XX#3P3"0&I+20#,O4_O)?1*JB3P/>(*3Q_*=M=S"!,D5F)HU% M8[22E#N%LIJ+EF)"K1E"5IN6'8H"$@![[3J^=#1HOXYOIC]]"3W748CVDJ4, MX),0ESE(/$8PJ-\^1#\%U!NLY4,+U!B P$*'&A,\#F$H_ B\O/L-!%P65 XH MMY_H;H!.OH(@\X8,V>*![X0 HGN T$8RH7U#3(4ZY*!NK'078?D<>0+8[57[ MZ.;4M]RA9>JA+<'F$",# GVG%/2?.@$&3D M5R$IT,(4&P2Z?D"7%F/@HZJ(7&M B+=@)JN&,@-^]_XN;(79+:.O0;C!?Q$ M8#9!B.<74S-\"QV.UQ+(1"*1I,X;ZKTM4@IJV#?8JJLW40J0&&L$G2_&&=(- M]F?H"_UKZYA!0;H(O:X%.P?%YD<.EBOYVC!4+#V :7A9=GUOL4%)9PSSO-$8 M4^#EQ=C4-"]F+@RH@M"J;4568), :D4!Z+J(U-)NKA_W6VR9+M)) ZM Z]/0E2Q*A1Z]U:ILWOK3,4>!^L.<"T!S M]H,'T<:V0K?5MQ]'+$\B&]?>CE7"BQ!"5E^[P2"7_(Y".K>C/00S4Y_5"A08 ME*2'0:V:*Q)DC>5CFY_1V6"$;/8G!$8-9F(6LF0D>QV&06-@V IR *[B^*@' M#*A;P'_H)P(:&(R X.UM9?GI^VW%#Z+\)W71CZ)0>/!SA4_;L4$0E !I;*!B MH]\6! P?4U8]A@P,_"XB: 2,4/5@TY8*G)\;CQ" /WQ@X9.'GAPARI'C\-T- MC*!L!SJKM1L!6UH/606F*-Z#G0J^M>HNTF<+JFN B9CKH!*/K]7AS^X'2S48GVR$@0&,*OA;JH!**=XTK!U1RDYT-%0#=Y_I1U)N5 M6"!LBB.?1P$Z(8:C] IYFD D.Y_S(4*6E3"ZWE),##HB0_3+5?"&/78=&8H\ M^!ALWX(Z)WG0_:/2WL-6Y+E%F/^];0Q]))T 26"X"8D=H=X$<02&9!.R.$S: MMD/-H3BPH%H$AA4:J><_KD#"1$T+# &V!0$5^#$S#)E\I;%=%(K!'BE3WY@" MR WY!U#$#K Y_"_0[(W(()+![YCHA8%K0W.W;=0&O P1;VB) 3/1JRU3'8O;R!A&PI\JBJ*'%N[GCUR:X=8_S,,";<]'D0?7Z%=OV.HDS!R M@J8,)6OY(2YL2(+P8"!]!3#;%B7+A.Q^C'(_GS.?GR%ROL#XGQA,IV%/%'N, MQ*KX2@H[BUCG1V@R4BH;P@^05S*Q5@QX8C];3B#$U?/F.&^)Q?S 2(9<"1CX MJ #]^"[ZY*T?!Z._GMP.BJ.VJ2DHR"O"]A'IJ^BCM>)RY((];"&BF!K^!1N5 M TGG(+ O4+X%J9N&!"))5R#J$.D$#%Z#5X/@#MC!6^.09BFD>0U4.LH;3!]R MH?;9R$:V#*:9JSK*IDED+'O "[ M$,92?H"OK&!D_4W-@ZGPEG!\,:/0=EN 04UGW7&H5R*"="B7=8DGK"2N'K;7 M785@;8QB,+'50Y2171]BYJ+F^DFLSS'(1DE%ZNCS\AO!3I U<:M0OA5ZO$\% M'=@MF'S\#&L^"[!1"BAY$L<3/[$QM#@3Q2]0SS?N'IF,;D+9[Y@[]-I0T<31 MVEZ?25\@1B%0&KJ:%@NO/9N9^+JTX\)6,2Z[20LW\0,*R'_Z&=4XS-?\Z@S4 MXT$8[Z.^01)0OX/RDQ) 8_"=K;0'TR"?0 P5]-=IR#IN?Q)F!+$$_ /R.\RZ M@J\\CH-6D=(7&42.7P>1KX/(IQM$CD#HM9W"P*C;A=^0 M%RNT05&-$7CT,-E!WE6IM(82-E!*,X)Q@N0D *@00FY, / MP'S4C*VR!Q1BA6WX +.I$-M!J!/FFK)?;X]IINCCV "R )JM MZ%,-A#>FT,[0!\+$UQ^%,A5M70UYDCI8P##G0\$@*!A=VE1:MM/"H'[CC]-H$!@,7V56;6Y3N*DD#12H M+2@=\\F#M)MH@- O1@3$+A243HJ6CM)G;QIXN2 9MB4H;G\\Q+14/WI!=(:\ MMOV@20,."!FUG5+Y(T[_C[UW;W+;2K+$OPICIKUA1["J57I88Z:?KV _#*CWSO*@/&L%W6ANTE_T#)0<\_=X+KD),>[\I"OC"R%U!!Z9/IB M:LY2NX@Q![[(N23:T2\T95I9>2PM'B?W.9]2LJ\MMQKYNW$=^%@,Z=! M\:(<;LM2/&].^W5ER25QU!5P.O V-4W9P'ZTE>:C*Y&]GC\H':'PFV=3GGN+ M E3(@KF/;\D2/B2^@YZ_?C'71*T68[9:T])<7E&SA_7D@;SGK+AN93-44HN5 M-'GPWT_X<8@,'SZX>D*14O#EYIQN3FZ,QQNTPV [YF8)\$3VA&9=.ZCY\_3H MZ7QR3/>,\LERP/?L*,83'O*P?9@(A"UL3_#:*385%_7JB;R(VIZ"*_VQL-&J M=_:W2\FO2_6]/D@@6/86 ,:=GR?*CSW0Y&TJ[&-;_(#RLYXPS2T?PCO,IQ+3 M?.(L+2T_L2H&VA+L=>E;M)9Z)G>D:E#K]\FGP>Y14*4Y1RRE99*KIY_W:>_% M_60Y8,P%[5-.( U2-]4MZM^7?7$02]'P7-*CT[R>T:$+H(&[HX[C WD+",0? M'E]]>OEH1F.O>:O^X='C3R\?V)]YUO[PZ+-GEU?^5Q-@G_XDVD>#E:_DL_B[ ME,6G/SV:^,2C+&U/?_%PXD,/T\]H$9FN0QQK&MS31Q_-9T\__8B___391Y[$ MH)5#-,IFPV?-7H<+U_VNE;P(KO$6F?3XZW(7(,\Q%)+8@;4+UT*V%L/((-JT MRU_1$/3)C!]Q>RZK0@X^/7%E=?&C\PE7X4;BN<4AJZ!Q/,X^159OL-)-.,;F M<_3I5DI.1CRC=@']NOF*_S:\G]979W^FT*MNK\\JK3D<'1%WDGC,"QFS;@W? M/Y*JUE.+=-J.OO C \S(E/_AP>6GY.SQZ=02(>[$3JYA_<5B2T'H@%PYH M$(^F?_1I^E%@;WS?ZD]AEXR&7= #:.N0V63WER8R65I)1PQTB=::$TL_0 \' M%$,*S:@V:+(-^Y5S^8(NX2)^H8>+/L&@CAHF#3\MP^)_]6/8E.NERH)PY\U1PM'>.4:+I*LBM<0F_: 8DI.";D MV)29,8HUYI4S?.AK!)2TE&H0V);:0E7EIGGNMD?ES> B3LZ8U M[C[6<7_8K_2_'*LG=="EQIC+JEONM[A#.!EX+CLN2XBDO-6?_GW-_T^]C2Q, M<6^2[Z,0$[W'%3%;%K=UME7I^RFF5;\^H%+,>Q+OAMDEQB7W6 MW^XD%\Y:C;%U;>X,]\FV"WK]P]CJ MBP/.;0=\\+)$'BNBX^EV*Y!=DCL(FX>_T4\6G#F#-I4UL'"$!]P;N# A%N2O M.3?(1JM@$&DY'/1L(#)"79RMV_@:K[^CZ]G+T?Y$R#@S)K3OR<4S0M-;?A+TW]G ML"FNXS9TKS2\T585A?5+0*?$VK8+?-U 4?0XFAFX+;31MY4N[5&.SJ,T!)W( MMDD93M=)T">8PGU9YZ@L<78Y@23HE!QU,!H"?R5,@O[4>.IH$NS \3;E)(C5 M$'T#275&T+7N@N/6.MA\T7:[+OJ+-63,MBUT%1T.JJO3A8M_+![=8H9TD5G,XLY\= M3_L6LC()>,9C:F'8EQQ2>Q,!C7_=DIFJ+WAI1A6G.5>).<@L^EZJO$#4RT': M5 !O8EMB^W+A_WSNU>J*D@K2(>Y<*3V_T]3P-9@;TD36&)!L^-NEF,/Z\9 M>'S\-AH9"^C+KO0IS<<1$^'SD 777/0PP$8$_Z- 5$ZS2_]WJ23HD$S>MLAV>=O^X'4/A_?US[O:Y]G7_O\94FDOQ>+5J*$ MK[59Y;>%JHS&_KUG!*5 1Q;GAW;!SHMX6>1)E=QGUPN66I+XL/Q5V6L>\UTE M)=J.CAOY?GCA7=O6\ SV3?6//=_B2W1=$;+SGR+1N, M & \?'J;N?QAY;1.VGI\0JX5!4?[+684_2Z(< [L&P;\7KI_OQ@C O6?/+:R M.5]5N%;)X^JXG+Y?6*0E\8@A%+5R4J>WXM1\H;5YQWQS0@O9;R"1.4''3Q1' M!.^H01=B97X_6A3XX+(.M+G7Z^R-:,)[[0?5@@ :[*X9#JX-7R%:S!U@V2'] M!H[3=3D=SWDN0\]"5_7XZ5M\83ZQD4)&3D]*RM#2 1BLH"+/QK!BF50/$ <$ M^P%;[O2(K/R)GM86!_ (V E'"<:BHU$.7,XX%W/V?+FDBYVCK#8:#:X'TATA M9UD:/"5H_3,9BV*/51=+C981QN]B$\JDE>AF6;'1LZ5TC,GTFI+ATX , 05" MB1K^IGV[1NL#F99B5\R%^5BX[S[EP;8R<' M^YMM9D&!_1[] &()>IH(+D721I/@CBS3*F" .4C=;Q>H MGZY]./2[;(C*\AVVDO3B9 B*Y-6CDDP;1#(<=7M+P4>[1>654PQL5AE;5Z7LYX>L2T&Z2G\R4?Y_B>?C2? M/;G4ZMZ3RXN-OY)Q0UX13^U_LR]]X?.\,!E'$[<]$BK1O00+!LG!_#W MBMV0%RVJCL*.MI9D((VC9Z"!Q'ZT!<$$W<[TSI*$M;GF.!'-=@JV"X^U0>EUF MH;]-TSAG$%,&/B\IBYFENS/,6FBC_)(1,NJ/)>02_,G!?E,RXQ3=74NZ"1=, M9>F. H@M+FW+NZ3TA7T[PW"P^U*6ZCIE<^86EIV?M:$$-0<6.PTOX[#S'D1O M03?WC0X G?_G*SL_FJ/C&:)?&.0H2BK26 !2P5S7QUNOV'Y9,X M8L>L%FK; MRGHG+RFD+NE3B5.#._+%:?&$L8^#J3_@MUA5[:B/0]#X!\GO]<8D(6@->X0[ M/1/='6=D"WFKTZ62EF13\/W8T(W)LV?G95-PQ--W^UTBO5 $)8Q-F(UTQ_#1 MPG3*C<,L&.5JY!4_Y^-_W9KKR!=LY^[CONF7FW*UKWDI8@T@9IK=E #EM-S0 MM&C_8S)\G-70+*Q8I7S[)YJ7?9,X1E9Q*0$1A=713'(T5[)1X0$,!?@>V)7 MR:$K?HZR.?8/_[I,@YIQO2!GR(=M=X,$%_##,_((O7P5+R->A^>1+V=OXAJ- M628.QCZ2VT<][%P:0*N5&":MWN!AJ)2P)RL>+WO-*[0.\7#9^0\T*_!CX,;E MR I%)_<0@'D@R0\P'M,ZW(N!T1BB%X1U'Y9(4Y,R"+; NHIQ+W-D[:N$77C M*$EI'W@-)%_I_UZ"W8DFL, /<"7%,"/B7U'8KJY AYH#NX.//DJ(0'I5:7![ M='DU"V[BCK9)QWXBFG1O&WGRIYDKR2&];"@[3_%K10P6+!S:2UMYQ7ME5?[X MBT*'R]E+0:WPK"8O]*;%N^)1QBS.G<[I="5\ G8C1SUI77DJGYQ[X= M2BOJ:;1N*Z=WS'O[S*UTOK90-1Z]M')RYM?5C]P1BVG)T!\_H3CO0_?;RFE; ML/'T^"_,A;$2&3]8:UGLOKJ1.\:1"KF VQ#^>-'!*Z* 01:A2)[5%_(I #OP M_@%].(^->?1VFCUP&%'(!WB]4?(I,W(L$=\LITRIU,*(CN8M76 MB!=2OVGZT6%#4531R"&V](5>PT@'"1%>F E)R)XT$ND9^OI6Q)5:O][]X3+@ MGELXEI)US=I!BM11*X@23J)5?2I?IQ2@9Z4QRV)^+L3\(,>UW^XNR%(G8-6B MH!CI\UF_Q=GKLE)ED3ZELXEYE!H$5E":@04/V[%%NNC*:KO8=[WB'NFGV8,C M+Z"6= :9""0TQ(=#F*K\5_!9-,3D:+%'2!G]HD)HJN8(ZMJE]!U80(38\+ 3 M:^4V]D,I\3VY+_'=E_C.OL3WLQSG-K>D^$M0&=T M1BXFFA+O1EQ4+4-^&)?;$3@M;>P,]9S?)XD**&7+[O9R+6DC M/?F!V\;\(_8<^1Y;10C*/%!]S7\9N=B=5$!Y6.S)53ZE3H!!_O7R77W08*@: M\VYM*ER&&)3 NFD@+8_6=\]J)LG3EA-4*;UBG9..RHLH6$U\3":E)=?"PSU" MNN%W]IWBF:(WQ.3/!>"E^XJ?IQFK"VECDU=0CT1S M+\8\*>"4B^_&BAD";TLJN8PZ?CGQ?B>J2YM$%X]CW;@!0&:'V/XNY#0Q.U%& JO39._O1\:(T[_PWJ%TRTM0*'O80/E-E MQ3YX^6-E0;N1)FI)4? 3@B]HFG;/-HTMJC?!%C=MM(D)3!OCNH+156CD#4D\$*QHIN(RQR"[T;VUCCNL%MK)GK@?,.W]&J\76Z4KCPEXY1W1^Z%_%8^ M2@F$KO*4"S".Z(B5'V49&%O+W]DS<6K=,C0VI/RR3LYF>D\"C]/O&#X MM9)MJA]]TS:E]YO4!I: M#SGO*R6O7YW-.7CE)1PX&.006.X];@6AT&AW<7:O]]6*K=V)3CF>YZ$2C 5B M ;0O##G0+ZWZL ]FL,YF<&]\A^5<6OYU3 00%O S-QK?FF&_0V;0EPT:;9E/MG!1\ MI?*3F[9A-0XJ/ 7SW2\=^ MV_[2D3]ZIL-\^-.'^?#G##.-$G"V]XUR>I!/GIX>W/O[L"]G_P(=Q)^S8;]I M#4-G$W8W_XG74BT2X2#@ZL'I21'\["F$9[Z89\?F_&__^]OR>B\[Z+H7C MQ_#T\\1%NFQ7)?U9VGR=$X_\PYV"8[,49P$4P=*2HI/4:9]GHY'#+/@17(;( ML1?K4AMF0Z-*40?XW>>2#Y>KWR+O8ZY6!Y]S+-/TQ=& N?7_(#,HV3&>Q#A" MH7:7J0BO8X0%UO^,+W\@A<9/[PN-]X7&#ZK0*(9. H,%>E%JKC>0U:THBM@S MM'S3*M@8#=0K]K%_++;>'D4>23DX8C]:D'%IQ2"R0KFC#_;.,C&+R*AE$GPC MF3@7L9-,<*0YX_"KXB!.@-W)Y*K9:ND>R89X+J[)VS%BWHG<<=O, U;XJ&PY M$N795;NRYO:".+&*((UP^T ML14%1 ;QA.NTF&T/755P)L7D/*13G!FMIJ[0 M="6."K0"=3$S"EJ4LK3:X\4S?@850F.3^G]HM QO"5\8J<4QS]?9E2 MJRC@<\Y5"AG((!VSJ!R)>EG>/M&F!+*@JT^RAEN&JN[0&,T$,6HMHKSG-&@A M6^;Y[.$G(K;#;4'EC\Q'=H.L($T!7R:1+[H7 _:(OZ-M4:5*C019.V-&@3SC M-D_$Q3?6E!N=A5+[:&+Y*$Y.7/V[==04'2:J-2BC.X SM5*HUL.NC^9S@YC.)]R M8P9=MY5!\,?VR?>1343JS6$/7\JN;:)&ZQA*$Q3@,AI@W0!5ZO6Q:A&,JR_!@#F4ITPZ_?;KLFGZ0WU#6Z=@EXJI5W=%-7TZ<"JD MG!C;TVP4=5LDON6,IL8V#?]Z5_+OX\(!U&A'I]NGE5O@O6L'*3"G#9N,:@6O M%B<^.T/Y]./T=DJEJ<;%DB\+W9ACGOU\^9B6-M_IH\5YW\8/YF^,E#V#K>\] MU$P^"2XEN!G3S$.T@5&1MC2)S0#7#%*?S-4SX;,L411-C'&WNM&TKX6)IA=D M3(#:*Z1EK#AUY@Y.M/:?+[_,Q=+1::ZU9?=8IVZU='^%HO04#17^[L6F6KXK M-G"N#B9\*KK54F'PDDBZ((T(38:;8)''Q$U\B[T/ M)W[X_:5MJ]53B/#2^51W_,,K'<2VP]^S\9!T.QV.2#C!]\T3+^X>GEY\E M1F\7M?[#P\LGSN+-C+\#N="+?=@##8L^L=AU[30>V'T?@\'R&UJ9V=43^[ U M\Q_,.?:L;6HV3:+*GUR>6=+Z_4OV?(HL^;$7RXQ[R_8!P6;;/>SS+ MX$T&$_LOR>J?F2K8R]3N]B*:G[.0!QMG$KY]P:=FC5TBWLG59T^?NB9%$#I- M,1R[!\#/JM>8T1K]A1P5"N9K.%O?@+=S]J*@DT>[XQ+*L\Q'XO0D1RV!G'7/ ME669(%LU]:"EBB"$/RWK1VY8DZ+ MU1XWXAJ@F$*?P 0PV>9R']<5P.VASUXH;JYQF"J_' 2!)AQ4V<4NQ8F-634N MUWB'5LQ)P=B@H?<&[EE"RR<1GB#MD;>CJC(Z\T@43;/GHHN6%QWY*% U:335 M?^,+4>_)18 \,XV$T%V%:5P?;R99TS%WN(PH2&15]&=\]# M]@]RGOZKAT_#M3[)[_\8E#=K3H1P%#SMU$KCBRO"2)L?X&U .G:CW7!JO3?E M^(?Z,>P+C;-[;3Q .'JGW1+5+U2P883ZLG74Y8L9&Q3/W8X*_-P0,9)[T4) MML\4L7H&E \^[:A\?V[;55G_=B$+5Y*7WDRM>?PQ$8EN+(/A?K,'Z5\S^_NP MNA176GM8UX!=P;FTIM3#Y[1SENAW=FELBFB6EW.YAJ(6SIVL1'P-L:VK^J P MF4$K%E4;J&,2#TSH_O&[!N>YZ$ !3P:AN:ZY1E'@/?-;4TJT\G?/:2KH27[@ M':_;=BK:BGI(;)4U*IWORT/9;8J2+'?WH917G]Z75^_+JQ]4>57ER^?"1N]V MZ76Q4W6'+]KM0#[VBZ03+N;!H"S*>!/]#._%DOQ7CDT+N$RQ;>:ADU6BG^" MP'\KMKSOCD(_@_B@?\[#WHLN.$I0*<,[K _T'!^5O4SEKT/*BG!6\@8^L]QS#]S=W@)=U60E?BSAD<93<>,^A[]!R%66/0!=E= M=-P7 UU?-Z!9H/]#WVLE.F-I%_I)F^?SR3N]D,R RKX4UA@E= MR.4;, 8'J33B%H*CD2@08N$$E'ZX^80&'BYW+ZV9UI>W92V@67'=E;$2&T

[ J)PO;=.]:#60OBDEIA00:Y2_6::/7,Y>9>W)F29RIE>7 MM],[TIY=(&M]X\-6[0IU3RRE6J5Q?IY4E1E1E=!&- _:AII]G,^A&]J+%@$S MX]/3%V//9-;T^7W! D$#')(O+E]<(O_3M:QQ(ZB@XGPVYMM-KE&**T!D8*\> M9RJP5Y]>/LP]KZM'EX\S#=A?QK<\Y::1E_98G+1'OTBL]5_MI_U,)M-L+C#C M+D\=D[5,2$BGXMCKFG,2)@DFOGWIE5_,!\M_VL*P<%._,:_#-:&S)ZW;=J"K M0HJ%&!"GL_&1MV1=!3AH&9;_K/!B $C0=5!/;ODS7SN* 44DVT?(VL;,$(ZEX!?FZH/]+MHKB*DLUS5GU[J8RS;N_ M[KG_G$XHS>0UW;-P9"56PWC1!B#9[,!4GHK!8?/OC\ M7/:8,D\(=T](<.KJ:@+>,8M=P?YLZ?1$3EEQY"BK)SB]@(8$4_6F0*ID46_/ M7#JNLQ%8ZYP#KTWY9=A4^7&&M0OMP+(]ORO G)M$BYM MXS5J@4-00996ILBA%]K6^UVQ9,)38XKB0'JO'HOA;2F.V \J0Q=+P[Z-P88R M=Q_F@A,PF0B(Z9K1R)P21VYY.O1.B:LJ*B(AP?/(SJ_G#J\>)AA*-]L<%I9P@63$KMQLZY>Q/ -UV(72TX\/'S,S6 M)>4YMA&F\KIM?]W6]S/;KHZ?GCT/D)!SVKM:2W].C@/[,E="&[0MV;_ HC[7 M_\8>_+9DSQO_L:L+U5Q]01:.[MCG%HK,/L965;=F_(_NX[!=_G/1O,,.\^SH M-Y?/+[/OXQ-!1UK=GZ%T]X=\H4I5(T0(7"%NXT'18?NZ2%M=<>!2@6MJG08Q34Z^LEMNZK6 ME0[3ON/_FO)#7"7E9='D@X*\0-WAX@TZ:([M7W'O"5I&TC[]%G-H/NF;5U]] MZX-F4.N52;2@8KU:S? )@TJBHT0:79KK/05D\CKCE^0+7_?7?)91'*Y;D+_R MQ5<6BAAM(L7\Y,'E@^ M6X,/:(% N,%*86TACD_1&-DX M0AYYDK5S8P 2C^!3+B$1'Q< >5?AJ?-HU@-47GY"S+ +0;'T2+;I,H9_1-7J MKLCL57PO*.17T@#:<<,G"./%4<7/JCO(7.JBBK'O!#(?" Z?%QCLUMQP/]0$JY MS^Y+N?>EW ^JE/M\RK^RSF,KYQR8.?::,QB8)$;Y:1EP2#/^!1VWV M4^AVV$F/#PG&_+.4*9OVC:O& 47J9 34/9R8UR]TT*Z7Z''AORA:^YEM=-*E M7)>K:Z=@3+@Z5;LJI3U-FTOXFCZ!G1\Y?(%MC7L)>\2'4*? MY0LL27 LVX2;N!' Z"!@X"1/<5%J.ZN)@BHOE'X$T$_:@QNDC=ZB[#I MAJ,[L2\XJZL?!!%!;]_P<5V4P%VYITG'L?A1!#-W'7KL/-=$QZP;%'4\#_[' M7*"1HD:KS0G#;5G?E!>B-;,MB]YX.*0ID>D>3^'W;[5#>-S9+MZ*S>6)$"$N MR/^D(/4-LZ3,(?#X#B0FRN"&_#3-O7.\O0X,EW^F0W968:P3 VX5#LW4B;TI MT"C=6DI^M+F^;-+]<*F+@5FW.;O"7<#@DHE-^NPB2RM_)U1VFE_5+1?S(4;[ M#8'62$K#K*KT9FA+P\_STS84"L"<_N7U&R:I$V0-/HZL+X\:EUW19&3?GIFQ MWY>"MS#O3LQ)$9[(,6.6B+V#&4)9:F ZXNX NX%P6G#_"_CY_A M?Y\\X>?3'Q\(]U"!$+$06:E>0WB]R2P=CPP M)V-65#'3 G!;E2>JP0QX7>HWQQW5'W_S_.6+-YP4N+KZ?/;PT=///M&2%^HC M0N=\+@?IY5@2#-F@%>=_C/&) XLBR DM>7A>UX3(@SZNW7R]2SF2R@^K* M:B^M!AOLK;H..'QA)097TT9X=('R:$3E654$\#1VW@J*;__I3/M54VWECWG+ M'*O+=2[!F#*529'56=Q:J;]-[^2LZ,O"[W *4O1\;'.R6F4R<#&V#A M\EA[74TV1M5K/^59^8NJ;ZXCYO2!V8!%U[Z30Y 44A/0FZTD^2]%G9B+>:68 M2WIYT(*C_A8G0/BG>"%3^EO;.YKRNATJ_R$N40(8J9^VQDE0%BC,*'HEMXXJ6RG$ M PRBD%\5;;JLD>F6:0Z6&^Y=3=](OS?J[Q5M"U/2-;)9@];CX;$=A!PT]0V9 MO'99%]56TD#L[FNJU\AKE%@"7Z*EWW?-F+#OH1K2AU>QE?3A+VTEG2PJW+4O MND1'+NJJB#/*'Y="I&[HJ8!*XJW@WV<+H;\IW/B9XAR>RV1(3-V+Y!T'=F=C MJU_D)- 1QY5Y-W>@'XTOQQGHW,4#?0!9Z5TA6M_Z1UG@ZT*E M>-$L)XYM^'7-ABK%BBL0QG5AN -'@AC<#6YU:]R#/N(%(J08"_)BLQ,#+B[! M#A6+]J:<9S1:>=[8TP?PQ) ]F%4=,L;BZO!%0UZ*I!/ZD$_8[^2N$M9^UE4) MF828C#X?^WTJ;&+'N)>N_%5X#4XH,]-AS[8>.T!*V8GH?E%#5$9B>#Y)?"/7 M3I(\\N&*?MSF1O[;;&$S==<(IY,VO"O3DY533<264VA[RWD*1,%IO-&,!O)Q M3^C(:&%.;'>"]WV(#JIW#-KQ4<:-L[$/OTTX^2TCN/H*)^C/:F[.*51\Q5[E MA;B5P1QP=!0XV."A@M%=;([&R$OM.X$HCKB5]K;J.*0/",A0? -5=W#W(OD$ MJFH)7.$2#7-B::!P>Z-04,$,"%=9TH+0\D\7)MMMNT5\7CU9M-KT:3Z,X]>E M\[T3'Z"RLK\ P1;I=ZKHI%QI'W0_XU'J(6(_)'T#USJ3X$3OAKR=@95NNB%Q M'S(M/*PI^XTGI)5H)6H,T85""P'R\_26HO'C.E-PL. M8D:C*T.@28$'!>R6KX>G>-DHN&%NU_,[A_.AZ&=^=E^LNR_6?5C%.K+WVZWR M5$G,,'&,)9ZKJW[C[&/6=ZG1=J8F$OH!%-O1_VD6,+9*(*]GAC54_/0E^BJMOC1T;]2?M5&YA,@E=MZ3:(+URE-7RK^NK':'=JCS!3+TJU:%"-)= M1(=;1WK!P4H+UDF'G(AQ)(_*[5= MNP]]8Y^K/L^]$;DW(C_9B"3JA4YI"'FK"5[5R/:!H.^MUL0\CI)/E(X_/E1E M%/Y@*]!KC>G4=OR7YQ:>'>46OA:,(%>-)(Y:M'M-]&9Y\:/\ @0Q%Z50LR;: M^.PKO6J'W;*[JG*8JT 38Q$ MRQ4<-)GLDNX#FD*5]C'U'+KVA JF2A C(TTC(_ ,9+F&4G &)TE;J@)4FP! M!*6"&1/2%(B _XKGO&&GS9FXM?^ZURZ>(31^LWMWP8PJ0)3JPR=)_"4-?9M= MQ0%X[:PXM_A=&0&^\&?..1],ZU0480$Q;:LCIOEWE?B B!AO;.3 M@:XCU?53\ZOXLD\O(<'YF355@8SAHR-BA?6(%^&(-N&4\)_6^"]I*M24Q%:: M">+2H%D3)FW$0G[U]'V\I$JONQ!1GF&\+^>Q#TB4(?2%IC3KLWKS^JX)Q08$ MSV>XX6NQE/Q/ 7<5T.0Q>]3>(:(X8HN:(+'PW*>*%OV6N+X)(TQSPJ[0/&)< M'&0S+?V;9;_<,M%Y9B"7LO0+T(>QXA%6T93@E^H6+12&Z:9SQF/^L>NVJ'^* M1)1H;(LJ^K*E90-GOJ!?TV4!'+D(D/"89(GZX2(IT#M?W[C).C$-MR?F@(4) MS@>?^7=P!;YOTL9(:&D'%8TJ!@?)T<%,[+<[F0B6_E)J0KEG&__5VZI9F:&E M.&!S6W"C(I;XGV77^@(# :SM"TJZPPHI.'V+\DA?#7&], G+?&?J8ZWCMB+Y MT.VF-(6G54ESO>H9[56.K[;X'0XQ*K'2IQ3/E.+X1V9W6I9I#YOJA#P3]J.# MF+?ARDMI/V&.JTJB$W;F,/Y\9LP&"5(DA".T"&CKD$A/'J.*3VE9 +Q:T\BB M'MV$^LW9&)N1WE!)VY2.::!="MQC>AD)_F&$;70TI:['T;(R*9Z= 9I)81L1 M8$1J9IE2*]&&5=^'<M08B!PMG,*I83Q'$2V?\+.^3AQIYN7M<@$ M#3^92ZQK/&["T"T)YQ]HVON5ZO#-]:S-UC6=D$500#@^ZY83L.,UM RN_+BZ M+,E:+=@EH\]]PM\/H\TG!\.C'[-O5>VV!.B>3?L?P2)W6%%\+W0^RJ&??U^/ MS2/=I_T3#2W;TN1[3NR/D[.;4C#I+*9__T0H9+U!@%N<;=KZ3;N':F@9 MV/N#(('"<2TAQ!T;Y=%QF#@*1YD.? <.T; 9>4['^_,W1"H>FX^73;CA\%]? MRFYZ&6+(YRN _CDP8G1]7>\E2M*3,W(]^G2Q.<.BWCH"ZEZ52U%:0,(NPR@^ M(N<\&'PU\ \?/'@R,RDUEB=7-0!1?L)5JX1J?(;UYQDU)>8I\6?P(2[J*3DS M00=IV6R# 3O:[KKBM _F[D?UI9!^U-Y=UV\N6%RBV M>N)1IG._A:LG:4R!9*G )U_ YF6*FJMH"C8E"S'I#7]0UR@]E)U2GZU^RPIA MU2#?GX^5_\@2MOQ>R;:N: _NNX6Z3!V7'*0UMBSZU)\IUS?J',T'0UEP]> > M!G4/@SI[&-29P:._5CAY3U:VCHF.-W*[FX7\\L?E!LWU*'&89 M#&1%A_GLFR_GQR2M#Q\\>?R97L5I%"HD&'/0&LUZ Y_Y\M,/)Z< YMY\ !WL MU<6S!P\NZ \7#QZ9(X]_LL863E.(D $8!BN[2)$/XW^6QAQTV9"_84G]-,;4 M&A7<[?@!M)YT?-UP*:'3R>69%3>G;?2>BA,=>R/V !J31SP,NS_]\8^WM[>7 MY!!=DJ_\&S:N&!C&%9@UAV^+YE-* \\LV:]X;#$S!6NG-LFN/IE MYLVWFK$Z-CF=2,YEQ-9O--2\>@0X/WWLZLG'JT_L]+G1>[X< M,I0^1O6:#\D;/Q1SZ?\SN!)_OF\E*RW^-Q. [IC>63G7V;'@_'-^/-82.E'P MF@P5CLP\O E&N&58O)\C? 2U++0T7(L7S2[C;8>PKN&H776),N[Z%]XE0O/1 MB;0X[:/GV&!S%6=ZU4"H%:V@;O+>,#GOPP=7J,>@TW@\?/'OR0)) MQ:Q:_7__]E]/'E\]+AY_NORO];(H_^MQ\:CXKV=/GCS]K\=/GI0//WM2/OCT MT\?_)C>X?./EVR^_OGK^[T4?1X)W M"M5CK+.KYYFX[T\I\OP52SH5=SY0BO67&N8.>/-#BL<&H_,HH"VKD3G M!%V>[QK@^'AW-?+?TI(J?Z.\-8-IW.@_DCU:=M4"SRJA,$"1RG(/FF@5?N?G M" D3!X22A?@C,T8@/R%_.]M[#4CD[OD1G7#9+915-[';+<*OP8;Q2 )+#=L5 M.F_V'M+?U#(Q]:S:IDY0S7T)U^C+-?L0?#Z5! E4WG&7N/,@$I MUR.B1K&3J6M_::F88L4M.B@8V?CYZO$1T4*PACS65&;"?])I_18E*P#;VZ=V M1)_TNNH]%\AL';"?^+\*,]%?)G/$!#LG;NW4ZUQ7VTH2IO/WF7_Q(=Y[ S!6 MB+F@VGZR5#9)Y:ZZT)Q\T#);:E([55.[4RIRT(VL4V?;5[G'54! =C:+;":\ M!&\W^\' %<9M;4HQ[35S*4#T=*/I9N4B@#,JZA*F@5K?]'SV\=4G[]6SE-+U MQP\_^1EB-7-AK:S(1&E%F5XC5M8236:VM;*THO;TZ?YA@P*6C%^7U^CGQ0D@ M0BZ7<4<=>S=\M$R51"N]QAINI2M3?*RK,G%OM1H2O)$:3(Y@JD:@67[WB]8J@?7MO]"\,;?^S![5CHJFE];E#1=C?32 MG73Y?LTUM R(YIZ>.9;L)'I*_&06-%]^/G%-?\O'ZMM4V8$%38W!O[HV]L0; M36S4":7P_+VKTR_];__["RV0J-5P"X?MNRJU\*I)9-#[MEL(H](%**0:K#RT M0WO*4JR,?P8 _*3+>\N;D@TS-./\LAIS6/EE1ENE^AU,[IO$.G[4SI/ (<+E ML4:*(.%NWLMOD0C(_>*-IOIB..P2W$61/K=ZCM4?6N^MO=76H;1$L#14,_]7 M0^%$K87DNV14_1ZL6)*I81^ &RV -UK7N [2#6&:NHM#,O168[--TG&96DMU MOJD25%::0+F<;VG/]/!%+

R,4X M>PV7>%J5F-)6*<^2CWY0\*/Z>;X4M%*,^>H=IR%9(5QQ*'[4E47;NQ;)5VG4 M7Y%1/4&>*S56?TA):R3R2=I8MPXF6LA&$5>.J5A$&M*6@5KP>.FM% MU4F-O-@6UQ+KW[9=PSPM6CPUQTDA-'N6-A-(X=N-.]N3OKH>>S\EXJ&O*B[W M;13!ID0WMJ.+4)1&M9RFK+$\#$NY%3N8:@:=X3DL]HZ71&*BS)W<$?#-@IZO M]AW>"!(<OIJ^4L") M@TUS+8O/*Z*@*J'GD:U@\@M"?R5OA+M!;*QF(<:;$&2>2_)(SP?M=/>M^Y6% M879#0!Z%<6"\"8/@.4^$2C1> -=93D!I)$H< 82^?/TBS2!'JQJ:D,VM=L,Q M.I-Y,.AJP&)=#.T%$]?IKS/'5B)Z5]Y\P2DZ';KR5.D3-5E.UR,[?K_N;?Z^ MK.S;"8K@:3"D 'G87D5.J;OC0<-8RB4; \FGCSZ:SYXJ2O;IL_=(OOXR"3-E MW!SL'3,^%;%_[I1[E I'I-?B[Y$/8RQ(:7#P/J3S3?/ @(\)E=7Q?L36\[EQ M"D*78@HW^P2F?\Y5F%F#6$\0EHU3 M-M5]I8EFC@F#^ O-QLG!%9#7NZ[?/SX8P\+-FF1Q!%2^RDQKT!P)H*R2.9C1 MJ8CA!D-X1O1[ R=ZI?O!4N7P3;ASTXP[KB^Y_JS9Q3)_-C6A]47\'?("Q0E7 MSZ]<29(Z%D\??=6W[/3E(3-PV7&\>NU_1 MRT9 $CTK26C#+95*O:!J?ZI;%<5D&$ 0.E3=P3H;GU:IRE60FENX0DOJ*,D^ MV0XFS, \W[>:+?173E*J(=R[JV]&]>%NRMP=!8YO&+G,O?=6<4/ NF"- L!S MBYZKT*9L>;AF406F_(%&IVB:2;V6S(V!H1=7",9YQ;)R;K*40B!V+'/JZ%[R=:AJK[QN.E1;31:GA)@Q>A\E M5M.$>W+4!Z&5;NPL7*OD+^!O%',LC/FKU'7(BC$A*)=]&5M7>898 VXO:3)V"Y2T;0KV5;/DYW2;HML22<&/4_& M2QD^'#\PYQXXI4EGZ0*3Q@'->+\I%"C!LYOL@@Y4=>_3^BIS-3H6==CZ*.[Z M%;"!-,Z:7$9C* ,]FG(@,;-[..@ MQEXGK,.],NVOLQHT55]:'[-7O_XT1#6 M IEG\E:T$5!JU*-^D^B^_$YL_G,A*K?WM=0SI")2_\BX\FSD_RL*&TEW M4EI\O,,W]8=NBW>)E7RBW/_#?F7U/:\4FEXD.RY3(S8?3XNFVH ![ I==M+66&MY&K7W"X^^6.2KXL4_UG*-6"1 R[ M72\]EQN,4UX0&/YU\X%1C.C\PI:9Y*%8_)D:?>@]X%R@BH0<_&YEEA^3PB%T M,.+Z@X@2^7/I\A'N418R<7P-[[34Z(M_$9"1M;:G'TYOI%>(O"@[.RQ7AKBI MZ*OQ-1?*F3&6&##:$>\)'0;MU MM_=&.0:OT37P*S*D_((6@A!:I-UNLS"U-OYV>I"C95[I0AF-@&P8T,L,R\W% M?J?*=F)/;JW*&T5&$@!3&]<"OMB?PK7-O@Q;"!]FD"+S)M(:B/_*#HW"BY*Z MP%^J&WUR!NF<),4 :$%>^\A6^-XH.D\PS4&Q#KA!VPNC+PME3QZ97P(W_?%F )Y2!9K9%I?= HJ M>)YNFM=&Q,YM,SY.%J1Y2:9_]O0RR-IYE_87#BCD+SYOBOI 9U<2B'9YO,@P MI-\F#.DK]P$_<8":2+(5C#I+<$5O7D^W&6ZOX-W&R\T9.71*S.S+&-)+!]F6 MLSFXSYWE1WS2T ,I^]WI#T(J,&TLM8*!];\PQ5%#//[IM^&-]OK%/<7:>5*L MJ5\^ LJR8<,?KMMVQ8D]*?&+YE-*;EMCU0 T/G=#L]=V3NS-]SOP=[ #&?2U M#=P<7 GK7=8OR:F5EIA)!IU51.SBC\IK5I!,26 RF;34RI*'YR1=O0*&LF 1 MPK'?L$(_6<>QE_^V;O1SHK.\W^F_QYW.MW11=;[LPW'1G*;H\ F8RQ759@B9HF5.H);0?$:0@LJTF173']OL \$\/ M[_%/]_BG#P#_Q'/UZ;'-T87E#<*6KS()OC]MJM6J;-B2/7OXX-'G_X(6HY]; M==4T2])5:E;'M>*)\D.6)(R)%\DD6EK2$BCG\LIW%UU>CWAH+>^F2=+H$W-U MK!4EUO48_.U8#B3GZNJ?XIOHK_3[Q0^:*=TW7D(+>;^YXNDMR9U]!G]0GE@N&2;S%=Q\T WIF)OO#@\MG28[5%F;44=#-^F6[0W_P M*LB6,\T*ISJS? _8^48EZ*FA.3EUBEDF^[X\M\D'",G7 O7>5U&--56;C$$T MZQG1QF(T*KE1FAOX#UJ]XII1U2DK((N]8]\Q!Z@0NPE^ MIH1L;HFBREJ:8][1Q*.1]!"J+O[.2>AA5&>1NDPVRAS_$[ $DO .'3@K%KI< ME=L6=O&?DG:^*9;R*[%7&71GEKN6$1SW&2)3[67?R\2IK0N24LVF6)J 78JF M*EUE/.Y'1E^LG 1?*A\*\DA+A@/;5=((9UM'CNOYX#O?2,;B)UXCS 738Z[BAP'TPP&:N"LCJ",U\=T!I>SYS7(2JXW1P30$2$3 MJ$Z/>OF/3BTS%71;X80'H>8PNR;;5#10@,VIO?6[Q]7&*7.0&(.=\QGG2*!Y M5F(0FR">SQBJ\#NY^KYK$O0NHCH59IC1XJ:^_()@CF(%2=X^436#QG;&D8'_F'JR#-'H:@ M^N[Z?)MJ'"X4T!W%ON]V(#MBNHM*X%S2C&M@-XM(#TDQ9N[_"( Z^G587(;& M]$-;T7L"YH7ZUCRT2\W&?+29,KF@&)Q6$CV.5D4>>MQX3FO]6K5%G,[3[L2 MCS *Y)9AV?[N"5Y?==E00%%<:HMI46U[8:G=,,A .J&$!?BX"99(>R-? MR!M)4P+\6@]&MBH4MUI% E#7[S>7!N/?Q 8YFT/^,J*8#<'L71#6/0Z@+?I& MB_IBO(WX*IRFGY]8CN/%F',/J3Y$8!'H 3=O2Y6]@Q[FJ,^=/A?G6GO,BCW= M%YTYTA@^FA"S8SEWBQ/Z(6W]UR5VX/?"2HR,L].M1"EMGJQ#5=;L!7#P>>/4 M.G/E%Y)/T?TR8G_EJ]/,'R-,VZ)),DYH4E\4M>;#1[;1&ZFG :F7.;7<1*,X M:[E,R%_, S^ X*4!MS[&(\&0<64[)JEP@DU.>V(?Y AT^4UFF^T C#! V5D% MO#^IAW?AVB9.VZZ\2B-'9MQ#R^[V((@&F*_LRIQ>V'.Z!%\I1' "4;[N1#ZE M]D*_AS_:6K K#J9) N!MUFG;HKV'DP;88?$Z@M.U*#=%O8YM1=)(*AQ)J1G? MX--M%'"YG/VU K%[N%5XFV\*UL@#J]ZU+^BRV!4@&K^+38W_8C@E>?' MHV,F2QU_[ F[6!PNDI\(H(;!<8Q;&^IYX7(T9?M<9Z M$]. 7[;4,O_^Y>R;-A-#=4MM3](I8#CRI)F(J)!5BMW5:>.0@$O5Z6YWRW"T MU C?<]YR"N:?I&#^7#;\UV-BA+F#NC0\S#"+73"*-Y*$6I#\:[D%G,F==%6(:;2FW@+CN!1 M(H&CRMXR_HLS#FQOG=84)I8WG(2D19 4'0M]I M$>S NDW!:=B7P>U7N3Y\C>7%I1&SWT1&Q'UC6DD,-@V3EEW<0C@(>\70.M - MSF>"^BIW$NBJT6P[%6*^9!P<.W&PQ-4:QM@6,V5-6'$.#E&WW\D)2DI,SM7" MPU(U!45 RKYTG,QX*6,K:WK'>"-;]@L7FV9QPS5\'A;I_6U@>4)^FBPR:*NL MJIXB 4Z_;2"'>L&RWOZW:<:7Q0#^OW:W 97,S6_?#4#O^\WQ2]A>W^P[W/F- M1*JT@UL6.;S4RV2=@K=E86=8S?[G=TZ#/U/IN#YNA;-7>1??6:OUJD'CPD'(M:GE"'2$8N+L*SY/W MW-GDW @PM7>3? M KA?V,^I\90R9*4IR[82,'%@%\AX3[XO<7DVLR_W=*]!@JFQ&3]V'7CEA$C. M6G_:WE3EN%OLY*]5H!HN.NDCBWZEBAZ>'"LGMBO)B+&VQH:6H>S\#7$5BK85 MWWRBM+F4))6('<[HGQF%L!9F/)]#2*+Q-&?7#KT%ZT";2/,\MIC#+=B;&V67 M^&!%(F=B8)4]O-'_#X=9%A:BG[2$G<[C.^;NK78[3B9AA+2/A]M2.VN^I8^] M*0O/!;XD=X2F\]62)A4%LK[U9":=([I]5]RO+H!##.3/!7+5>!%HR+%D%5(9 M4',NNJJ6AX=XJ>(TEA J4A26&!TN9V_@XNR;=7%#WV5*"]W&>=I+H1U9Q3XC MG6 J>2R]M(68>D%>#U8]0QK?C__]?4J8#\I):8']*"$M$QDK^85+ M*WA\T3$1M/S;IJQWO P4U:+W,7TJC_\C2_C@W6?HQTIUC#X?H88]5ME9G.+0 MB7G?KFRNI3=ZQ$F03#>KGZ&Z\]\13*@AWQ3=%B770/J#Y]O&:O*+9IX?V_F, M(L"6HV-+HC=[^EP+VGY^< FE I5X^TTX7']A9/>"NW0YJ9?,/^\63U44UL,F M+7L1>J&&\@CG$F@[,R8<2VZI/J ?Y:Z\1G[NG'+27Z.0VIH^O)CK$6[%P!Z! M2B<&[:QNE]ZS4+FV^\7S ?],6YMBO^NNX%V^;ML!;>;>\#.6 M=CST:/\3?T<.Z>O_^-IEZ5VT!SG1NV[0)(D5\9+Q40D :F$;./Q!@8JG0B5;)5N7"'IGB0-JXE5;:\+F74*[D4[HK*/[V7/\!&1 6ERE,611Z\%Y2J*V<[&P?@NL&^S1:EZG?#YZ+(&UA8)''9* M(^A,+ >^[9,MS&U'[ZY+* 2&4AS"'&4K!XM8J;SO0OIFC%28O'ON5S_^62%[ M-F/4;\@DO)-JQN0QTB,P%PF"JJ>+BI684]7[6.3>V/&9?6<*;-"**/+X8N,9 M1;,OOM"5"ZUWR,&WQW'EP&Z]EB$G )X:^F'_ZSJDIWV$_QX]"REK_:XJ[R^- M+ZL2P?L8'@82^I%3;9EA=E8/WQP]6 ^.Z4+ MK7VC9O!94N#QDX\2P]>TQ'>DW6$*&KD \93Q3V:EY*NG'\G9'TYIA\N5_JH) MW?\;5E">$(R.+^(YD_R!CQ]^-/;IP@,51)I1)A[;)'W-JM&W=#=&K&:HJ*YG M3Q]\Y$4O]ZKLR6XKL\??[<::DWGB_1X^?L^$\B)@#YS-+8I#M)?9DOW2.UQ3 M_,UTBB9R7('QH3XX#WR-U8 WJ:XK+LLFP3NC11(1JS[4RBU!)3&&'DD=X1J! MR-[U5QC&1G.!>+H3?8A1Q"]4;6'11\OAZYBO/).J>-6'G6].:Y6VFZ3XSKX] M DO3^\O3AA5#-;\4^A=^)Q7*F_@#NWW!U[NXX\G_AJ)FDQ MGPE%)6"H^WX8C7;NN8-IOL\AIP=&0*5\KN#F1@X*M)[C_IQZC9%I(PRR61O8>HV&]> M+891X#81S9AJ3*=1U"L9I11Q60E6#[[^>]3$?;YB@9=!W]A"K2]?/D^15@,W MBXPJ4Y>GA@(*\M%9XSX+MZ#D?+K3A]HLR,,'3QX$>Z"Q4T^K)<*=S=@).EJX M>.&,X?GR76X#H6--!Z$VC9S86!6 7W<#@>V86F_L;D:D''F^ZLG3N0V3[1UV 7 MZ>XL.L.!413$_5CR%IP=Z#C1WUZW+)2N?QFIV&P@J&*AFV_/N2]I "I_K(;$ M@1L&4H DL"K%#Q1:1%#WA;:-]%.L,^=EEN*FK5@Y6$J7K'+/O"H7RH.:UK,: M4HJN3]RDR(*/*GDS,O$-*TTEENUQ>4]'+WVI=& /3<$:;L(.AK\4<&V:#0.U M2G,DG(XMLH07"J^^6*%$W 44NS(UMON^: 2=56YW=7O@EI@7\LO0 K5"8WTP M)\\'QV#5/N,JSZ :DN2?3R(U^W>0AF<'F]:C*>M1.9A)+K4\X*Q2-A8+HH9R MN6GHXKT^7,Z^3IG_>$"KP$?-T$\NJ?GF7;5;X-N7GFY-U)<>?>M'7W90]\._ M?W?Y-_T\2PAXR+[76[6P M(><1W&LW3.#<3#6'R39ZX2*CGQ22G-_)1?%6.U%HAZ&< RRH4(VJ)HC9?64Y M/<2R;,K>_20G^^SN"&2*CC-3=V3W8L+B/2HN+C)BQY?C2?74&T#\^Y>N+9O/>^Q^G<7BX;@_(@]]$\Y$=P2)BK^6E7 M9@?:.SXG2TWV\;7Z\ODX2EU[/O2NM!QN0#ELID03KS4N:":*V5 2@IE: MX\S4K.%#_F/7C(NV%!5KA=3:A2U/LRRZ!=V J:' KPUNZ"B;FXKL,&X=3C(# M\]5OYQD)X>JF8&[O9"2WK3)RI+3]:-ORX*PZ(?TWCA/K!0LX7J*QF*W*%//J MT;P5IE',X)C1]20;$5M6-HU^(;2WO3W>:_I=WINCS2:\\R&)X40,GHD\]O!. M[$GF17#I6-ZAR)]KXIL]K3SY;/^(C::T%=*_+(6@7.2H.Q9=2BIL(>N"JX]88^]BVNHZG#U49]/F*U *%^_*'_'G! MYFL;U;B][GAZ)_D&IBJ5@IXD*S!WK38F')AJ5?VIHDB_$]#4=X$\*06ML2&/ M8]:V*U$%=P@KTU28N(_"9(X29=[BG-!8WN&5.-QY:UE16?V7V3E=UZ\B4K/J M(_54R[,5I=M'2NE)+EJ(+(3T7PXA1U:!^V%1'EHE^S<)I(^KR_)R/M/:_*&]-Y:KAW%+(XJ73DELX"KP>$B91Z M1;M5$MR\1+*F2?$&^?F7[[7[O?9S]EK<4MR6S4B#Y6&V);,(HWB_I>ZWU,\DA*<8'FD*\O36 MZU2&O]](]QOIYVTDMT7ECQKY<)RXKO>@>[V_\.XWU2_95"DBD$ZV$&2+=F/ M_%?<]4-_H9G4LHYE8.:1BH03+IFRKO65!^_@]%_BU;[\4#"(3^XQB/<8Q+/'(/Z:W6M" MB^'MKE^F>NWOJIOM^V,-<6Y95V'RO Q]NBPNW!LK5$5:%.[+)HGA1@J.\KP@ M(J]&M#Y=IG@B["U,J,F3H:7\N72XZ\4")^3]LY1WS+:]CC=F*I\5=RT6X*4,H!U'"+(G JS.- -ON= M4M?NX"F6^96=OJK0.>ZN>:'7[L0K5ELN/T6@'3D=1>T5WZ9M+L(<.KU=X,;C MJJ.LQ*-%9&7+($: M9.\5_@JW##&;92+0I87:15Z#\;X[GOOY;!. F=PBS^2E3&P,OH MH=FM!+&G)@MDBQ1#_ES]# YU=I)S8-X=%?PC<8F\C^ILP'-?"0\3R(GF01L^ M%="CL0N,X]<=63D@51D4-RN5[:#/I+<3I>.7;_ZBZ!7E&V(:FENEK/*)-S4+ M&%1V_;-FVA_V%!FL) TMG:CECP4ZZ^=YA?F[AD_'JMT94=:+M@/7$NW&-S0A M=*)MSW_K8_J"=H@ 6:V+Z,6;;[_P-B)U:DN\T5H09"I5HHC;979^,P%R$+0N M.L!-&&G6[;?2RYGU30;V%<;[Y\X?P. MP'+%'6*3'KNN'B,A@C# >#D3X!E<5^137?/2I+'$E\BF4LY0U1E_@0S:[YO4 M">9T^=Q3RS9"37G\.5.,";<>*R.L+D"JZZ9D-".N$.+/B_M(D-V;6;FJB M[+72$)BT0\A[F]GS75?5@1Z<'GS$ M,$(_S:0J3D61*0EA>'%884EM- *+I,MV;U_TH#0;5H,)H+=*(:J@AH/)EV;= MLA_Q8G#J#(+:"4H?+P*^-;/-QE\ 405R/T$"/I%Z#]HZ$/FC<4=V Q-8F/-3 MU#EIN,E]GHN5OMN+_9)M=F*?35QG8EN@WP&$)S>*RJW'$ZK(5Q;IR,WB#BT0 MP@22R06V+O;5=I%C+D@K:->NM^:>EA[]M+V+8;6*G4>S_]M(82.II&C:%SK=S)E)+,: M)X:Y;R)%.H>T6R6^*9>X*1F(#6ET4;\K=CAPO,6%P0YYHAUS2X?!2M""IO;. MZ?Z2MN"^N14B ;YJC(-0?UGZUD2(Q-W,-H&*L]X8)6GVG";H-8UQ:IJ]\W=B MS("(_C--RU%S-XQ/'S=EE_(/FWVWJC7NBJ#T(^CQ65FC4Z^:KB\@L)'YYN@H MAD'I&M1YB;EQ\?TT2Y/)@<%[M3N/3]"=*_?%W0'IF]4'_T.8(Y_,Z4 MMY\O.DH"[3O]Z;^5![)Y#?U.H1J6_+E645F'>Q M:>6"2)TJX]Z.P754G)>8+G3-)B8:P6P:17YEE.5Y[42QM"*,:' ^B]>)SV)3 M!'8_"1_DSE=NJ+2?C>%'N7'+6,F4YK:65:V4.J.?*8Z"D MT.-(%QL'+ZDE5&I'&)#+M&P.JZZ]+IO8-9EA;;:HU"V&IDHT8WEDPO$H**A\,K"2;,EYTF06GF8\77U##:N"W)A+L\1V0 M(J6?< E\D:0NI8-EF?6QH@%Y82%;4V+#P#T32P FP5*:ED5F+>[WX'9+E;38 M64JXF'7D%*TXC:@\P6$2O-W=1(RLA6VJMJE1BJ1:"]-[GXM+JS8(XCE(T%O[ M;9R1Y"!+=H^M1VK1.4F+[X"1#Z;J^>E]U?.^ZGGV5<__=I')23E(C1-WG ^V M#E)G!K? TID5N'Y%%UVQ1_XS\,P9K7.5I*Z$0/J\NM-P^=U4HQF25:?=\3!*C)Y9:4-' U*W9]Z1XK!@5G9;PBM@7B&U2]=N>A MLH3;9+57E30DFG'7,'FG49M8)11_YLJG%%#U]X780#9H$27D&SJOY.9)L=5? MW[5YD7S/%&_[LNJW273,NH"-%QP+TP@#"X3V[%#P@.>3"Z7Y$??[7?-:0$;" M>R;UV:Q@J/5G[L]2+UYEA\5E>0[/7>IN2M3X7J9(RT$MRD 6F97L$N6)P;>R M$_&33H.^\ ]ENX.(\C_/2!KG_5F9E$0;2YY'.70.-9/\?E)0I(G GN;]2G6_OKR6A^0X$!?N M" LDWOT0;C ^=K*8X@VO51@O\#PQ"B,"/'9T"0Z'8TXN#1[LN*";7KGL:?RT M>59[[ U.E\: L[GKA^)?2N?OL1F:@G)3E7)8NK3^";H!! 4D01]0G]FLL>A MS,+U.RU\2#5M% ;9;/1EV+[\5UI7/OZ&U2;E9R66DTH>SE1-=U$^9UPLD*SR MLD3AKW?5GI6J*'GABX64_&TXY4\VFR9R. :VFXZ$B8$NP0R5D7C'1)0PG8S2 MT=TUA:4J"%\"HPQ>3V7"3[^F2<:,KJ*K:.S?5TCD#(J:"4_S^U->PY0->,6% M$X+):L%,RZJTYV-LC_RI]W/7CH5XQJZ37N;&*#/R3#@QCG V57FBM/61V@HX MJ,R&^E%V.:C1CW/ 'ME2#&[-)H$M>78,!07 I]J5LL<9O_3T6'DS42SS2&+Z M(R0Z5%OWQ$0F5$J,\V/*8Z3*N?/T9O3^PTZ#B86ZF8H]]R#4=JJ=,3)-)%), M-2(P19O\F /E)6?3F\K4!\:&\CWFBJZ.'3(@]#9[ABLUY74[5"&5)%M4NH_H MA>G>VMJL'2'.SM!OR039$U:$]=*5H>L$#^<(,+>19'$D0SP*M+S1"I5B0?0J M@Y;L0YE%GNA>-;;?E2(9U"74&4MM"_YDENA-Q 6E+VZJG6EZL?#@[+IM5S3! M"#*SU>.P4U;5SW@>]$UC%M73X'O.QL1N0-)53P&=L9K1O(S(6$37>(0WG#U' M5?IZV!P8'/JN=.'BI390BE*Q0#6Q0Q%8BE9C3Z<+$A/L.O+8;S*I0U MOK0 Y_?633#JR+($T D*3:GH"GWM;$Q?6ZT5=N, $-JKT"[M!5=S7B;_M9$V MS?.#4,505%[7A>OF)]Z5%421J*R:FKZ162H>]@'TKEI7? M&GV80EXOD/"(EQ-L3"IY:E9H5U0IEIZ. XT*EJX$13S@T8R LB)\J#B*K[*&C[^1BJ!G9H3USW15;P>(ZV9I89M2&O1KN MQO1]WAIRVV/68=SG"B>0Y1#\%@6E2Z0K5\G%TX_B*B]KUHLY85<_F++:T_NR MVGU9[8,JJWVEY7A83K@X['JA@ *$^;Y/ZMS:Z^WU^^"U)1?,W9Z1#YARS^8" MBO/JL5*@W538RN^+"O#G\2D\^ZW9%)Y-<"E\]NG3S\Z-2P&WD%]9* BM#;C4 M3 L)?/[[9^NXWTJ_RE9*6KV""-1TNR5*-3S? OG:E(K>2G(*O!!*&,'VJ\@= MR_M]=[_OIO?=OHEY5@$SL*R87GVQ-*K2PKDFCG2'?1"\6/=;[%?98A2]K;\:2] M"S=P*A?(@H[;VY"X[HI;3U?T\RCB '-H%S$G4;C.I!4OSM(=MS2F MM$T00KJ_I.\W[2G.7&U>)H.YJ= _)^3]X9L+2FM,P]2P?U!H7/C>.1V[+@7$K:4_.4 M8*%M*K*"/Y1D+>^O[?O==F*W@::H7Q\2>42@X5'LW4O/OGSK#7;/EX-SK'R, M#VD7W,MO4Q>_MXOV-/13U<4T2- MG4SB=G=$>^1P'#>>#D9@9S8@D#?T<\ :S58EL$-E MP[7K4YAF#:1[)AL9K.=E& &P-,4(J%#,''4EGO>A4%+?;\E?94MNVQ47\%R! M><2!)V0Q^<9RCB#9J7?144^7@)_)NTHQ] Q*FF\#,?50"C'% I1EM*[=@M\9 M+@F@+70Z &X)R(M%*4S)3BL0V/50_O0N@&75+?=;9514M(QC,I0*#]R"746C MM%@RNW,<9F=9-0$01M:G(K,E2;!RM&;XJR"+[+4-FOR261\$)RU@Q1MA6N,D MRG$'M/;"":H3<,'4,^VH$@/:><$:C"[JIBK89.( MTA,$2X];7;VC!V_:ECD=R:J.^'L-;*#D( +E8S[:8JEI;^#=$LM=XFFRAZW0 ME-3W*MAMO1MV2A<'F\,4(YF0_.3^.9OF@+N!D *#N]X7R,26,B-,LG P>)KT M!1WY*5@&FYT@;GY$(.A\9.M]O<;V93/4+FH<3@9YGQ,V\F4"ZBI8.N(>'0X9 M87VCZ9,>4C'EAN\KXC8J8O49&P4@=YR_@5_4J,9\ZZU&H(XQ!^_OJ%0RCKQD2AB?BM6I4;!L M-[,3BKG1<9!5VY2")LK8C!U8B]PI9[SX^C6&NG1!2C];<]#^513I&ZB>)9?( M^M:D\VD+]8:L4T]G<;S3 _E):C!/0KC;"/,40F6!8UXP2W-=T<2)L@+CS^7R M#_M?&9],&D.;[_% !O<;4G5,?KXK#G*4E!V%#VX[^(G+53*4R6\*SX>;X;(5WP'1*C[E&GL(ETG,OY_DFH\$69T?+4XDA($X)W B[KHMKV MJ6A:B)H']V%D^AU!L>-$,]0Y&<#OK?^=NW_T]6 9?O2F;FG-$ZI>@2S,1UV) M=,4?^H&!?5*GZ[F')@$%(Q5[U?RP[_B\ROF07531]N?&/G504A\(]^ 6PNBS M'D..O1TI;V$#C_O"ELFH'\D37N&_R0TK>B52FVG)AIT87>'K I8.4;F5T:VS M4DX:_C:0?B[(45$S60!R^X\\?]QXT#^FGY[] MG0?X.@P0\M>TX6>//C&B*WD)^UJZ.$#GYS,AD3L,1=?1ON?[C6]C+$JU M%1)XVPRYTQ([O-#/0>_/G.E,T2J4AIU4UKU/+X5WMBHVW4ZCZDT->0/L!P#L M?W8/[+\']G]0P/Z_N]/"5Z_Z,WZ7K[7U1RB08:G L*3E8Y40<^,&>\NY"HYT MG?#T0',"*I%&G2$'/Y!;BLXH"OA@[WIZ.]8:2_?HN&^ 3:[<8JP2$PAR^[VV M!Y@!#_W6FK[X$G>1=%:!],FX/,GSF',(D/PWNX=P;]<'[ZJZ@/>RWS(@CIW? MZ"LK8SW[M4Y1KV8VD#/B>^_*@XJR-& I8!K[Z)Z$9!I/Y!:1RP6F$5^K6D1' M7U;\;IHI&E'BY-VWJ>G^.(\WGT[BS8/;*3.Y[XX:MT((-(QM2LT&@I*FWTC"'A3GA>_?M& MMM5+&]\2P3NB4\K_-E4N\ MAOZAN&:2 3N$6$1:63VF4V)3)NB21O"R7E^D)\#%[6[*,V)A4&F;E #D+E+, MTL",T5V9C]-JTB)K)7G14QZ1;7RB.< MK6#DG]TR40#&7(DZDMH_W3JT*"K'P:T%.44X?OB26ZO#R-/ZIO'QTC+U6U>* M6HTB+B18N4!20Y$7J$(P.=V-X,C;IDY1J\4"G 19"6V0$!;PUA%S9&ZDI#O$ MZ(Q>FN, \F@_3X^JC#5F)9B213TNH'*?:B_F.0F0KB7Y M4!PD_>X'?>S,XYQ(EH1?7&ZK-+$2'/DA%-E0?0V6:Y'-8/8^O:*>+8DU)@_7 MZ!SG9WS!'$G.VT4N#9V;, ?SHRNRR&Y%SKI(TYRI0>C*RH7A&0<%-APE'M+> M9WB.7Q!G

GQ=3:2_3 M#4\>(@YMI-!*3E3^LB(3A4693TR93*82K2L1C-!4RNE%-*QD+46WJ(Q[']6U MY'8&9UI%Q,1?, *W$0,!W3"03I.$OU0OK;ZX#$5 N5]8Y^D&M]'WZ>,>J4NY M5^<:3]XW]@6?SEI.P1"4IZHN:$\)9VMQ M?8W:("HAEEQ:3V[/\3YBT5 &7U9R'&8_4?1[.$T M/KJ:B\ 9)@'";?(;?WAV^1AU\MHNYC]<4>!K?S.WJX2KW2#F"4:'%G6[$TEF MF9'V:/9]3-DFBF;&26M,H:E1E]SXL]+,)V'GY!9$VJ!S,4+O9R?M-^ V%"7O M_AU--6 H7;$>%+/''O(89# 6KQ) ?FDSEI7F)JBJSLI.OW102=6LNT*&BVW5 M1STYS1DF5")Y/W0<+([-Q8;*+7/:9RD]QY?YAN39[K4?QLF,8J%WG>4_#9S M^AH) &/JX\>448YE419 *#>AJB89%V71E%5V93FV9_XV29"=DP>.@9&"LV\= M:^1UMF#;2"D 3SZ.J6'YM,L(Y*Z3N5S7>R'6BDAEE8V8&2%@A#@,N4K!+.$: ME +-Z!0"C6C$A0"98:JZZ7Z#V:HSP6(Q%^:.Y,JEGEEPEKG+V=_YU6R>I*B0 MV@<,!V+\1A/SH75\.G15-SYT'F/G>8T.T(G;S'*)X<]ZLS:5,C-W)?\&N6HU M31 (QW7MCECCK%*0>F11$E4,^1$;)MN0WGSG]UH0KWC_%/N1);7.)W!^OYLL M7*2\M[D>G976LFG81HHX?V\1S)Z0S8TEHS&&N& JES 1.TCT MQMQ7C+P*)<]3&Z,*X71&Y=\[<^,9)[+=2_V+H4R.T>"BF^8Y\"_>6CG[V%QL\I1W2+D OM65*A/> M#V59?V(7Q/B03.HK1(#"OC%[RX<]G/#\_85NG(*I5?A,&OWI-Y^/#W&6:YX MW'A9*^WA!%I\:1@)A#4G,!:2OAB//I]I)^27N*E7TQ0ISS1UE^4%'7GF>2_@ M^N#"'FM812>KV)75=K'O&)#-;VU.;:S@\44K"/*2X[=M>R/0]4B6GG)UOY,T2F!\]YBL M+];JRD;FY@"Z&Q40Y-*^U>]$Q2QI;^":SJ;4"M *F5>(BYQ5)N55V#+ZUK21 M>4N) ^\1I>,&>M9?2/A&P*>V)3++$/F)7"-85_]G5&!&XMV9.:Y"YS)L_'KV+,UE!%*U2IM[^H M5K,LP)MY13=(T5CVOH*7OG7&]U=O_OJ, M:U5Q,XB>8$9?L+#G84PO[ \2O:0=$MZE_7[X-=V.E6?A[!_6C&;)=[1A$_L8 M.C":MM+\3ET+CA"IF'6F$8&DF6JNPW#Z@R@0!V,AW#G.F",Q=S!"QBC3O)[+9Z__Z!$7\^4Y1C4XE@DI;X MA3=^AAH+ T9@<&0#;@"_E,R2)$71U:!'!(Y_M:J@C,3?HAE\,'+@ZNKSV<-' M3S_[1$>-@R&XKG.Q\#])^+%8DOD2/RT=HN:& NS4"HK0@J72=]-CYD5TI\'C1\@W(GI26.*OK4@O$+*D1K"CT?;IA#[WD M:OG>R022 4>I$KZ0]/YB4(*7D;!5Z[9SE[/VN99D,(W]G]*W?D"ZS7\)"I"U/&=4Z-)4@0C5MI]$\?D:WOHP$%Z=D155>G"O6-@5B\/'.#:=R MQE?EI=IX7G 53.8/V.TH^X6)\25SH@EXGTO/2]"YU(FP\95]^CK\KQRF03<7 M7:$]US6+@D=J)W88,,1_UQ_TDN'!D6?S; M14H22@##=9PYDTIR+=DKLD-)MDN!.4%)3O(\T2- R7]%9O^:76_96=X,A9.5 M7DU&,#IB^T;JK;&S%J1P[ MC@(%W(H=&%^8^Z#9S.<(GG5-YD3]#VE2>574B3-96WWE M5;D8+#,,Z1EY3'.MN+YCCD+)PZ??]6^,M$R#?#$7C5U.3U,K'4@A7#4QYU3R'4T]=M7I;83WG-C L![52A%R M9@Q5_58:>H.Y6UON(Y4LL[7DA7)%XKO& I$AR& M%)D\(L_JA%T\:<<#T-:U41F=^\:._ZUMLMG'NHS1SO8;@W@?-^0A M* @$781BQ\>62I#^P6JD>[IR,)"6>)@Q;-1!%7H#5C'$B(\9U9I/.'9)*29U M"=OYN8WUF='*>^DBJ]70$43:&A7ZL[E@7C8&.>&5>U>6NYEUUV6AT"%V,@@V M%>6:GAZ@C C;=E7FCAG-/N!FV]T@V3SQI5/+>J$"6X!#=+CZDS-HW$FI*):K MSL!&XQS1%@#..C4%I R,=[1PD*L]Z&G)I_=I5EI,(Q:[?;Q)Q&?=VYX-4W3K MJJBIZU6[ML>*&&U0UFKC9>52&;Z[?E\*&1,;\9X$ZE<3S>"FI5Z]W=12D&X/ M[V22+B6QLJ8Y?'H7*F3T0R 2O=^0_U(5EP@$4_P7(STU72M<&IK2SOOH)G,M M]SOP?@?^7)/8)^(&Q%!5N^^9GTN3655*.2>"->TTU4SV_<:[WWB_5 W!4W., M$VN6")6Y,4RM'YO"LC%N+=J60@>4R(=4F\,<6Z\8>2==##J+)A2TA(U%)+3H MH=Z8T];2B!R[FN #T ]\*$RC]WO]7T;(S(AQZ5R5(F!HU/4;'$+<0ESF??QP M 1HI)2.K,?R_DF73O[A>U@!G0CBE&TC$\;!U5CX%_ M@--:_B*>C0OO'=JT4I,6 [L4_)YP^9X"E3167H7A\B"GU)4:19*8Q]EU:SU7 M#'5=2V.]OBJ^%'Y6EEG;'%(_NW=8AV;V<\J%.KV5L]#)8L3T')1DSE%H=R[' M:0+MLP*"O&(\T/&[@]-&ZLD;D,6K#L%^V+0=HR,+3HF+/ML>V*,->2+@57M=AHK$D2R'LD&ZEM<3V2G0ER+MR$!*A]/*QEB =,S_M>TF&RIEQPOE1+%K[M$Z6M7%T4/%6@3 M;LJZW5F-$.!HD(8SY>9 [ZL #!$N:VC?\4KY:BB#O@%"M3ZBW-"IW(6N>.E7 MN]VT2HNOI /[L+;;LE#N%\>9V?0QX#"0+VB+E4RDDG1:4^>VZB.",ELJ@1A- MK=0\[A Z6]6.4;B*&N&^VV "&>XT@-A@YZ09.NGG8_S4[P!686ZM:YNRN*D8 M90PYNT$0N7).Y_F&%U;7[;Y)8A'8G11*7!_4@HE7HN\]%X)X9]3@I[7]$!H= M=1,HZ*DS..XA,@CKB=:JL>2#P_%&3Y0!/?,5D,5W8N<==QD/M&EQ0/*")'@P MJIK;^1(5JO:L!S9_8&_!5;U2A\ONA[V2BV#)8,/"\+P5+P[?F8'2[,:IY'AV M;GUJZ9D9U"AQ^>N4L:\TZHCC=OF16^$JEQ-490)C+6\JV>B\LY-JG!F1?)JQ M\BH# M^%KF2K3,#,\\^UBIM/[RQ>MO7;U,?_W+/#>.*D4DYVNET _'RXO+C[?-N'R2;7P M,,J??B]FX\RNIC1HWK392;/VUE7)2/65 X\O)((H5\?7@EQ==G"T,YT_5;+) MUC+13QZZE)A48\GQST>7:-PE'!E5B7 0V\!)',07'V;/7[\(N 8YUJ??P4YY MX*4RTY6+\!RYFA;1*>-0% 9)YLR 4FK Y(<5OL?N6XQ/Q;F!%;)GZ6 MII+CF%-=N>11M$.&QIHR07,;RYP9$96267NADW>]9\)L'>9X#XUHO95SK^?> MYMO935'O'1S*(@'P7,BJ('?= L9LK4T.5-* S4ESN+*/)KR^*VG,?C&,,[!]<+F! _Z* M6\@N4NX_*A$VP_YL@2U38'M=%&S0-P 4GJ#RV!\L@]P\2$RVI2S)*G27%2/W M<,1)* P?9;V+D18%23?&UG6CACR12(%1Q?![.Y3YZWL?BH9I![> 7 M]EG>E88,-+[=9<>J.;5.+W;AUT5'"R9=(>)52=@H):%U5^S!I /'_@(&E'LD M]X/<"[<,DT6.9:UT$$5&'0'R5$ QF:W\&YS9JV>NSK#4W2=&K^EI^42?(B42 M>HKU!13]"?GW.0D/E^HQ.E[!.3EA_->"*50N+$R(\565?:_(32%V42&/6!P MRX'QE/"!Q@$SL+"1J'$;5H*&&NN6X+B:E< -\;?7TLCWAX>73YW:2_>;$&X( M4<5MT3E.6@/1R#M\%/PKUGG<W2W,\W^+$KMI2./'Z_?5UV0]'$139U)MJ M.;#JJ>R2C)-.#_*HI0G9M3@\S>TD^ONC"\[&KZZSAC99,^ \Y.,"6YW"K4/C MWAJO*@M:TAA%L1U=C;CFG1]?LGDG.(KO3%>=8"N6R"S(9)R'"?BI&B*!X#,Q M+2W;;M3#_C!4%\\O+JO)=[7$C^H6N)?Y62/3:F4 MD')+X$2Q?ZE;\K!G7U=-M=UO9V^+'\E#F5W+WWH/&(= PMXM[K>BT\5%MP?R MW;03"D8UB$(EM-5?YT'1&ES1?N??V2;;Y8S7"[)[C9E5>Q,R>U"NOD4JC!DL M-M!38)]Q'AKCO?>:*5"AVG-+CREOQK,B(V&5G]L" 1F(IYF4VJI7> VZ74$M M9+W"1:155X,[5[.\P?L>CT,S)W2X+MKUV@C(Y2NR..I\8D9TENANJ(&+OY:H MI6/:2.N=/EXN;Z=$.J+8LAPR?YQYK:5!7:Z*-,]*DYEFQ)_#\RSCXR22ZW?6 MA[/Q,[[WBK*'YXO2V_*K&!>Q/'T\E[F7 U?Z>@&7/X4C:L9[I> M_OWM2T]U\00S:%SU:YNLR<6:R/2>CQE7_AWAIUB7*\ZS\6U:U$M+KO$Q<(&$ M?M0OQF4790\D:]0(&]7:'Q:[\",[2^(=EIH\1U%^P-] MB-NRP&Q($TH<&3=C&5-$WH_S$O:Z67DYZ+O+OUUF=+%5:L;^_3()O\@EK["^ M=F'UR06/[(!*L*)%"QAM26BR)YI+]DV0A0=CK]2U9^6NOPG1H6D ,R#$\G>1 M%_/FMJUL7_3_]RE0.?:]Z2J(S4E3 T==B])]3O>AM\.L'^,\;M'<7'1!=V:&*!-;>-1B0"+78':95FAE MNENUTMA)41T]KD?DK0Q@3VI/ MM')T=$7V:YH3=<=WDX;,7/G*S)V1Q]$4A\/A()G:>\NF3L!-._Y]6,L M?'QYC-D9/>M/(Y6.,$>[7YH88O_+8H@\O\O@4%2'%-Y][-^(-OI-62E2+1!B M(0*7KAE7C)-78A4<9Y2"#;YJY*!#O'"7.Z MU*R)\ ADA\5D'$:D$W$WN9IA/%RRRJ:KPYTX97PCG20L[*NJ+1_5;NB SCU M91"T8TX;47#]8R* [R:A01AA6$S"8W4D8UV#4N;B1$\IB\$.#0_#%5Q@_]Y= MGOE1\60\&1BC<]T:HHQW2IQ7*IK>E)GOLL0J!?/>?H?ND&_7*G6>1 'Z*OQ^4[@3(XTP$\&GL?-UO$(W@D?2B$H![Z46V-D MF1@6"TYI[)FI.>.-HY;E@0Y)/F<03RJ?P&U7=NXQ$=@8^2CZ$ISK>V1H= MW2+L@^V/UA %U3&]31'#]]?#ZE#"1#M&VCLHI)!%.G/QG C O40(N]*=JM$H MQ?,^G63+$8T*"0.GUTX/'_#M4J?LEV0=@<%)H<54U]&)0!U99 J#?F'C"@@*+NOPGY!F9.LTK@L=YCP!_A:(]0I<_3R,)VR MX"X6HP>]A9KA19\[>83/(B,M! ZWNUF!DA//:\6HGSP)H-)2KYW0.O#-#41B M($RJ0PAQC]HB88=>[*0'CG[9,/(E>. ,%UZNGY&O"68]@31>OTWCM6F\QJ?Q M-ALG&PY![!/W$$99,H%?7%#_P857)G1J@<" RU%-79K^0'-"S;!-[K?&7(PY M+;4KLRHGLRN,@%7*Y4S M58<0%"8:Z,^B0:8K=S6;JEO!PO#!Q:4%58)STJ%#/:(&A+ 37!)8GEVJ@Z6( M\S1C'2; DCBG!,R %U8S.M9'<9#['>"PNT@BB P8J!)DUQHTSZ;0S(.0G1F+ M,*,&!32;\G&L =VP'3:/R>LL*I= UAR=%%.6;0B6T%NUOU''(IO,8(2+[AT( MAO+AE3N&!]W]96/ 8KNOTY5 #I*QYYS:T]X7 MUYX*%=B+IP)!TY9E$)$MD*:/85EJ=.21PL)Q!SO5A>(4@K$,9^G%L!N5F==1 M27!D)$;"=1)!NIR/>##Y'0"?++3PO4YP8\0]ZIRN&Z.U[K9FM"4\(9;FLLH$MFL$2]VM8BN-2'&\"0IY#>"1? MQ?E;IA%\(^$)99X@I:"9C]?HX.4X$J110N*(**TZ\ECF1MC(A9P*AQ+MP6#Y M!GFN\D><2'B; :I-$-TXXAV]1+\9^(JV=9 HPA;9]M[C4&"=UU69\ZK7RNE,\YZ."(9%XDR M&5IS3&$0@6R:V%0!LK7BUEJI^K(51W0.TE+L Y"GV/J47TL345!$;.W3X(G< M)3QT^>TT"D[,VC"R7K:=EN2< 9_Q390T)P7[H-)I2FA@X1/:;^#A8'?-I,F5 MTBAJ1ADJ9Y=2 H5M2E1Q0)R07F>47W"P-7W<;7=X7WVQQBU9S!D!;PFBNE ( MK).Z\O1A25!OD5 %7#"F>FO-J4(>U$5%83'B$TP^2WD!CXJGWC<"/*^[AT54 ME&#]QKC:5S'.&90Q)K?RJ,@\S%:,>(_"TWK6[?1W<><"X5M1X+HSYC8JG!IZ M.!/XW:"[^7>DK<_@&E!@&&%Q5S\=,3Q?F'%8ZJ^U1I-*[I#''?">D8OO/+]O MJM9*.),P%'4U(ADCQ@"KLW J/2Q-8MGW9L0OTX^S$YD<%6ZZ_QDJ2ML)JQ,G M-:;HI@,!$9!J^Y.BI3Q(P$$Y'T4I9Z=3GCK*MC[U0*.^W'$&J[JN'2<]::7& M--;-E==1^ED+?0<:S_ZYV>VB?^&MFYI? W1?G?PC_(""XX>=13\MK8/EI;3 M^$[9X8]2PVVG,D76ZE>L@:ANA)%K/G&M/Z.]81\^3S\%1QYH[UJX$M$,KHN- MRHDZ'C" ()2YV^V&W6ZW(J9AF5+M:6>-\)@9;6F6>BQZ&%!ZAK2/HA8)&:V ME2WJNA**JU:TB'\H:!@:DUX_T80GM?]X58'HJZZ3^M8WH7"104)/QI\:;[-B M&(X0)LDY3S.O!78 XE' J8R)JI?*PU6D\))?@IN2_EB> 5%!FCA3!4G>?_.C6I)G9L MN/NAV%_K#Y$ MH^GXP^%HM#^:#$>C?M3[@=_*OSB].GG;>_'^W<7)Y=F;7T]>7EX=O7IU?/;V M[[^P5Y??O!USGW7'OM=2AO7'?1>= *[](#6'NC%/[I:?Y>EXES+ MY42C46]_NJ\^# :#PP_#\=[@P^AP?__#P: _C/:B@_Y@K-8OY_CX]Q=P%OIHQY_37B,= L!U$C-#B6 UO &-9!J(= I MMO19V_U&3;-A3\ZE'4R%)@0VS.IL.B>$.544IXLL3DOGVSL:W4FP#J."\'!* M@8T*D/])$T[B:YJS1SIVMBIHMK;$8DUF)B.C0RC3;5/I]3 M!^:8+7;>ZXJKUI6T#8 #FK<0:&(1=^"7 41]OS M:QS33OO9H8XUAM9M"JD?3;"YN>#!#B.#7KWRX1,T5I0-53A@-'Y19U-N_HI" !-N M0*%>"+79CK:\4\,W/&Y>) 6CK=KN2DL1#FNZ>&]-.8\[=1:6=@5O'3*&75V* MS&Z2YCHJ_,I2(^(E3N:D<;V ]A[$EP,1=@#I/)(0^U?ZWU1?11T7Q M-;#QC*_EBYY4 JYNHV2A!QT4"[DBC- GPYL2/C" TBD MMHHY.C0$I$WS9XC]N8' %U>+R5"8L?4T&#&6"633?"+TC!3P94SVJ@Q9##& MBHI$3:YUU^]DE<)"QE9T*40V B4UCA:C@JJETAAI;'D'(AY@*BA:L4O5-HDK4U*/O,;(96SH%HR/] M ::87?7 ?G7G,HM\9PN!!,E!2=BKJFHC>'?(B!2F%8&+#];U$_:<1Q/=YN6T M-L=UM&=L>QD:.3\ ML :U,W0P20FQ%QB+T'D%5X3S-UI1.#%&SMKPTLR*"E94+*^D*L$"]Q?QW.*U M+3)O4,(2#'A@GL*@/]+>)SBFGMPJ1#,1* E3)\AY(VQFD:0!DK"8,TTA@ROP M6KE5L<[5 4,U3C\RYU&IE1%*VCNTR)RPN)MX;.@B]P_9/+88YTJEVN)#Q #8 MZ)3S!-2&B#XN<[5UP48ND":S0$C#;4,HESA+?RP2<6'9Q0^ES##E/J_R4W52+;U-HT; MWT#4[IT)F7M4J)/6Q#/X:A']>(R-K87#2J2]=Z9+[B,VV,/8$X?R-F(\65@2 M>@<*ZQF,1L;8"N.RE(P]@6_ ]OB2_J!_IG4LKLUH5[J,:RLTF#1#TD8Y)V$< M:'P!_!>LUM7Z1&Z1C;).QWDCEX=QX4J,854*H,+A; M+:8CQJRL(>4"[6E)PJ M'%,E1>#/E?"&(U @2)#$R?!?EBA0=4C#C4J(P&7C MG!$^YE@P*$\B6!V$'+@A9FD,.=_IKKTFO#=B5=S.P8+\,K5%I[D=:Q M$+J,BH_:P"*3/5KME-G.A,I"TPG5@&.]%LEO4.&Z]]^_S!I#B@SDB<+8A)E_ M46=$<7EM-E[.N87:@I3QPRY<3*D]&3S489O[:W-_C6^D_!SA[8HL[!"S M:2V'H:NJO^NYPJZIZI3#LE936+Q""#<5/[4N^$DS;-@2%F?? Z/AKT]C,'IM MR5EM'"0:87%"98\LMAT(K(KG51GIY<'M&!P=0,2ZBZ5EI,&[R*5-4W@B M= M6(JKP?5=8Y6+5O0XRU*/P$3#Q:TDR0BCXB;2R3D,C!:2?C/1:X+0]2WA HX@ MFB.*4+*R>8B)S4/8Y=(H*([$(!_@\@P=Z6Q%A2RN,R"[QAA5OI^EZUF]#*:8 M\95M ,."WN6.$%I6=:A"C3$GBT0*!F16XD8R%6BPF3L MM6"4.M.M4?7C'"EJI.&&W-3F])<_(9(M.BN$&T.^QQM\6 XV7@O4BQMV7/-) M!26ESJ_-#?)S-3RD&04(!D3 6&)8 G,S0:!N]'[CDK/P-9'/XUFLIL&)X8LS M;GBCQ_!GKTR"7#X#&SK+J72UUN8W4+IU9CX#^.(4GN9;C4=VJ@FK29F_ MER"C8@'HP4I=;-+GF61ZAI]?N<&\CMK,J>-(54G!C-#-IND?ZG"M5QB :1>D M <(USKG6$RBP.LPNFDA#/&+'@G^9T[15/]_H6CP8U\O&!/T7S[EP1NP=_402 M0FMY*S/[ADOJ[9Q #\44S+.$\0UB0AS&&+D@!L*!N27VRN(,>:!!-JFALY:Z M7XMS!!@NXV=*BH9"YG864#F[!0.L/NGF@BY@4(8&REE(I="6PR0:>8,]8N=+ M&P_"F=$U0JF5S^';G> "RY9Q88*SWKA9Q!JA'\'",4#7.^H0CP:OHD=NC/D^ M1VQYGJT-0/ST7U/Z/ZDOD99S((9DND,M+C1JBYOLS&;8"]!"R6@F$BOC4KX. M? 6*C7RY*/W(,9[XQOXW/!TGL3EZ1^=JI<),P._QWW$"5D(EZ@HI>"PU'19; MW56N<(=@(HT_NKIRD\*U1H9QE^"K]]F.SV#R(UF("2'*P5T/;/ M+\[.3RZN3D\N/_0/#_J[O<;6T/8[@5WLX]8OKV._(##C0H;!FAK-&?A[TEM- M[M5%-OYX@PB$(4J^54(9?^ZTB] Y1$PD'?'MA[O]7E#@SQ72,;?ID3',LS ; MXX:\/K]$S @IN<)S(+.&]+O:*.O<)DE0 8BDA>D1,KQ^/)1V,N=<0VVQ4FK1 M@_78#8?^EZM$%MYQ*?U.;Z_N5GZC6)G0^3L0GK/@.,I!PZ816(VP88H\$KF# M6+T5-&\$).J'_2X#C??"@\HN;/.6?A59'91"3%$=L4"]Y_U-N?>C<[EW0@/+ M%G0.TR1#)^;'0;A;W3RI<3XQ?QHE_09/KGKKK&?6&,^YIS>P/: G,"9D'LW] M;.-WOYE-1-[@' U]:H@2F]456-&SZIND\K&H4&6O&^[M#:ID::F=JAN#8HZX M*TX+LRL;:6TNG;F?XH)>JAP[#4_2:UZ/ST_F:R]0F:?7,TS/RW>;X]]?OCU& M=VX!=G64P^O=R[W*H_&J"-Y$5/'@ZAN'E.2&S,PF78GJ7\>4D.W'TIXJ#P'] MY(J.3$]C5IR&-G=/=^5#"86'=\N<3H ;VWAYR![[->Q1O;T?>[UPN%?Y(IS, M+Q'8VTB^O\9XKG'T9)HF=]O$:9LX_;83IWI0B]1#UB%!"CR9EF+D\:'C*^U* MA#E!XT'$L=,Q6X/M5:DXTG-#!)R>9UT((L[9VN@V^B:5S#,0+-?T,<:,^ "N M=K8"5FH#:52O:,@08PS7,IX$"_.E28RJO1A,,0_^R, QBDMTTH_&8ZH*NY9L M%:^ @+['U!7NVFT>5KFVL'B,0XJY%/-<7$5&L^M7A%%(A5VPK87I_-"3*61B MB\(26\P1H+3E^C\P%'XFQ9O(7,] M&PZ#X+"]S'&;!)'CQI-*<:<+^FALIHRG$+RG&Y4N]8!Z<97W#_8&H^[>],/P M,-K[,!RKZ,/!>##X,)Y.QM'!J-OK1I,U5WGPYN3UT1MP08]/3EZ>OGM]^>'@ ML#O8;:R_/.@$M.+ 67(#VGXQ$-?]PCE5[D!)BHL>X!6?8VSY])1C16 0825 M<,1S[RZX'8DGO">,UT= TFTA22* M9>P /Y4**A65V<.3*?S.\@PAX$X&SBR:PD].JZ5W67E<=P%V//HQ&PRX(NMW^AV@P&GY0(.@.=^'*QI/A M5[L%WWRMN80U \B]!]_^QE\@(A#GFGZ:Q9.)2N$9:"%T!S__U3#S_8// =%W MM[%!N'_!OIZ L[+7.BNML[)MA)?SHXNKTU-43WN]PT<2;I]9AX%+!N/%*!*K M.'??'EW\^^3JU=G%Q(WW+V[N3_O#^]^OWBY,UCJ='/W"2I MT5U0H[2C +84V#V)9W<9\-X"WEP(WWAS=$7 -6?'__[E[,W+DPMXP-75R<5E M,F?D=T"!Z)5HD<=)L.?A?E:C>KO]P <1G\KP7"DY%<3]2:88 E^'&AV\8W8]J:!1T/"H MF&"&SC;8^[) [+)6)7B,<]61A3;E]NZ\BY<:7[A)] :NSJ5:E 9'=K"Q@-J" M._-$R[N!HT=8COV A2>>%CE6]&)"_,/*7&XX_?)=Q(;V&L M1:, GS.049-DW1K+;19V+E1P:H6*@"MLA#QF<0AQT:\Q!4R1SU'1E1H@X]QR DROU@RCX9#"TFD7)U-OA DY6(P5/L/<)C*5&E;V(;I"K[OS?VP^)LZ+DHN('!VL#R^;.IS,1JDI1 UJ1SRYH/@N\CU< M6&G [QQ"E7=*Y;@-SCI5A#K/4%@E4LLN2+.U#Z@C13'[O68W7(_KM%=E)6@QGHPJ+7[B$- MG,"]H1?S>32B&EKU,T9AOEJ\S(OCUL14Z)>?&Q*4?Y:3 M.VZ (X,_W\[B4NU0MO"G-,/#T_ON[ T?\5J<:.CZ#7WG-S/L# ?MU33R:EJF M:>S-]-N;:>;-]#K#_?9J&GDUK3AKZLWL=PX/VZMIY-6T3-/&G(E9O=Q46+2V7LLEK:W7RMAFR=C6UFLIJOC"HN'WT:KX'=5MF9=RR^M6=5& MD,>W8+IM/^N!TX"NL:F4!O.JO"66UCIS"00QX):C)!XG*\1]RY;I6$U:(FE- MLTT$.A+".1__5=OK_OS^C^W9XXU[?:WX !;B(>6-K9FBSTY.@G.H[BECS]E?CTE MFKA'VWZ'I+$UH^LIDI9/B;W\Z7N9.:QN/E9I.'SF$]BZ[ M8<"U7K 3#+H$JS?8&CLT;KN>J_(UHV%-. F''PA!Q87$&7B0N-XQN5M;Y(JZ MFN [P3 \..AM.YC:A'-Z;(HAC(#&'<2S;6R-F^R;L+=M,P.P>;=EAK\J -B$ MDVC%Y[=!,=1>W;B#V(KXY/[D)NQMR\S0WP_W=P_6B.";RTB_5&/'G.YMV9S^ M[ECY\6L$MT'<0-O]K4OZ[XX6[D'.^F9D^'TX4]\&30\'G;VMV[O?'4T_?OMP M*]^:0@OWH )],_+M/@R=;X.FP2 =]OO;,$B;8*U[M_RO*%WBX$O'1!VV#NC7 MB/@^8H+DJS#-03?L]7?;F$8;$FY#PFPB[[?,\!5#PD]=ONX?A+U>2U)MS+B- M&:.)/@R[O6\]9FQFT>XM'M:E\JV4*SV O/_:$MQP*F"_;#;/= S#^L&B?.$VB"2 MIMJ%;JJU4YF?#?<[>STSAE!]4ODX+O17HW3R=_PD^D2S-W%V-X\CQ4&=J:*) MASR5D]^7+>@O^BF%?@"LKX0'XIKYB\LT+H-"E64BPT!IFBY-1\WMS$9<$8UL M[ 1'-!FY\N= I1/XMCX@'6VG0W)'0.X/X*"ZSD%YAP2[B:K34GF^:V3FQ.JA MCS*8F,XKPAF=U[FZ1H16/B_XEC\J_=F@T]<386DJZ[/AH+/KC&KN! Z2OS.K M8)RH*$?FFPEM&/6#=/%5AA5LK._O#QW'BLET)^CO!SO5H03_CS=]P;C(.*TR MRW_2VM/9JKR^3U+D6NWP<(=H"B__*4INHU4A6]\_[!B/Y">C@/%L@EZW,]A] M'CC_CF>T=L X"=,Y1F\8IOS,GX>I_WC/D FY+1POV0>- #N9PW_*QH:]SO[N MU[J_BA<\<(R"*)CE:OJ/'_[KZNRXML$8_QWD?#Z/$@].2?X$SC(-(05Z/\YH MFFAA)>SP=0M'_V:T?J'-G@8+=S./A:JN3/C<8^9K%R26*%$0S.G;GDKT%K MSIHT)AL'0E_CHG"*<($\/@E&*LEN44 N2%C2_'*0YO A:A 0CNFUTB.2Q\OY MDF\L* GB@P0J:@F%,K]7.Q)7*UMDJ@H@RG^?*6P&!7*L 6_0U0)T'T,O[^E4?'PQCB' M'8Z711 701+/8SQ6T ^P.KAB' 4\H]>,XYLXH8G7^F4=]EQX<#B>'BA0FCZ? MC)<\1QC'S\]9!T9E9:0TG5X4W&BH29I.?AOAX/&)&6CNFP@:(GH<#$C2 IU"I;9X=,>$B_L$)X%!R-&!6L MX%54L+J?P,YY6O@D"](,IXA/$_S:-(%C6_*H<*#;\E8II,L,U#?]QGD9[W?A M,&,QRVZ).DNS%K@N?'R, FW"0YM'>' 3,(>)R&$S,A5\[7D\;ML1=\2".W#W M\T*KSTE<+))H]1.L_M//^(\=-B]0](%*7,[3GUVAAUK0S&86M4+_'2W+3/^! M=1/]95V,THSC3K=G-,[P8*_316'Z/SMTWS_U=WM[NP?]8;>BQ3:N0^O$NEE* MYKWZ9;N=_@%+S7A^'13Y&([E^M,.VFC=WJ#WJ=?]V.WV.W\LKG\ VBK_\0-) MR'C\PZ9E5!_\=\_<: (^QP-]C:;Z@M_B;'$PJO;NQ"1I9XL_RKBW?J?;3GMK MY,WL=P[:T>*-O)F69YIZ,RW/-/5F6IYIZLVT/-/4FVEYIJDWL]?9;T>^-_)F M6IYIZLVT>J:I-]/R3%-OIN69O_AF/J=0^MX0YN.?H7.?N/AV OQKZ(^] MWI?"/^[N=?J/BR_]9:=V5Z;\=\KWGKCE.YRL&_1"7;[I%N*WS/14F.DOA--E ME?:D^ 03\%MJ26G)X2F00[_;DD-+#I8<>BTY_)DXVU,CAWY+#JUTL.0P:,FA M)0=+#L,_[50UH<_]X5L^RJ^C- Q.TW%GJXS0N%/8-MTW8'\/;W%\%O2ZW0[6 M@K?7^T2OM]_IM=?[9*^W!]?;:Z_WH2Y+ _;W.==[>-#9W09&]U._W6^4>;M[ MG<%^>[U/]7K[PTYO[UO.P]PYP-!M)/R6'>6_DF0;3)\/ C?1SL$WGE9KK_B. M*\9.^W6HNO:*G] 5#_M;A7M]4E=\7\WP-W+%^[N=PU90/VDNWNMUAEM$,&^O MN'E7?+@+E_*G8&._R5S# W!$VAS$D_64']$3:<)!M83P>8300P"3EA!:0ACN M=PZW;@\UX:#:#,CG$<+!L'.P=?>V"0?52H3/F[HPV._L#5I": EA;[\SW# A M[]'PB1'NZW, ,=^GN;J.BU(AJ.]EE# @X,E_EG&Y"B[5>)G'92S@?N\+ M@[ MSS.XP$GQJ#B9L/1WX,MUG@HV[T&+S_..'#U%W=SCH M3W<_[!Z,AQ^&H^CPPT%O]_##=-H;#M7A^& R&/W ;WTD)KY3.)U>G;P-]CK! M_WMQO)R__/R!S>('YA3W\H&Y&M[^[O3P]&HX,/WWO]:9[:C 8'7J_P&?MOSUZ=_3ZY.W)NZO+EZ>7Q^\O+T_/WAV]>PE_?O/[ MY>GEV:M7CW5>Z\CS]Y_=?B>P.\+VQ=[^SY>!W5D 6POTWH*S5\&K4]CM\>G1 MF^#X[-W+TRO]'3CC]V^N\"MT W>].#@[/[DXPE]>=IH%I1P702&(^ +%CQ77 MP5&:+J,DN%"++"^#>;0*XG2<+"<(&9_]P3\H0@;V73"4+6K#D4IB-15USPON_]V7Z719&6B8/C$#]IRE^F0#TX8S6#Z6# M2PRF69)DMX3W&Q?C95'@0<*9P(G##3$0]31.HW0C&A&W:%V0U;$^)4 #1,.BETE9",9_G ?90N4"*XQ0U:]@0?!.6CG^QO[W M@!^R?KKC+/UCF3KS$0@N&QZ(_0.$Y&SW8H^1'I9F)6\W5W#50BR30"6%8H1I M>/PI_" XN/-,F\(8G@(3XZ+?Z^_V#^'#<] [8/85RA T[0P%2Y2"D8&G(H*E M"%Y:NL!S.DJC9%7$=&VOS&&"RF,(:OK.A;W9,W.GH:9603&7F0[F/3['PI-> M@6(%OOXZC9)P MB1Y1ILU^RARQML/@!DB9<*LG.2CAG$DE0RH)"KB'> H^4XKRI2SQ4Y]L!\@" M NDN"[(?]CM? 9AX2Q#[])B)&F=\E15CM?HIKN(GL&E5CO^V]C$;4L21\-87 MRP*AR(',5#'.8Q+%S5(P=OH($+W%DX\\"'D@'2!6(D'X\P3^6+CBK)R!E7\] M(QEY.P.1N]K);E,<73HK3@D@/B8:)^^.8]( MUR&UAUI)!A-UHY)L08J)Y+8:SU*,$]"S@,E)(:G\)AZC],QX<$%V"_QQK5+9 MOPP("$6JZEDRP&+JEFQF_.;UBO1XEFO6O,6]F4T!EX*K!SSF/@7!U!2" K^8=U@L%PO0_QZ;XRGA6!W8 M,MZQ3$MPF9^?F.-C=RX[H"'1AH?G:;WWOO/OCG>7N1(%3D8!/PZV M!CM&PT ?;DZ"D8'"U36^QU(&D$M(SY:?Q9$_X>"NIV@ZD:[Q M<% RPZ7)\7EOH!W*'(+"HZ8 1RI$Y.;"!\5L64[@>OB,X;QR()3Q*IAGB,SQ M/X[^=_9"[W,7F&3C2(8?D(S/EO _.-8" Q\LS/4%V#D*KA5(=DTTRFG& '+# M!"P_D/ KFVWBRKL- E[X(OT!Q!N=)[3C&8:/P=X-+9(9T5FD;N*8 F&RG1 MG3+=!$D6-B<6GF(G#98I7RX,D0,QIM<[8(G-6;BD,KF,9[/@,>)JG&DY16.( MZW&LK[,;Y&IUVR2+Z\XXA+@3<*?B8S1IY<>NHYD#A:9+M>[*TOR>9[O[@\[ MCJACK6 , ?3D<1RKC3=UK7!ICQIR?1XI83'ZPZ1[P%;"*: YV8GDG M)^QV[4T1(^P..H>:$;P7'KKOVTSZ%_HWHD9JS\3LK>[Z8/F'STGG T,Y2)S M^'B1L:)\T+6N1[GP"1BK!"=LY:Q3V.(SK$&S>E %PBK(&;WA?8SA7^">':OY MA<=8>WJ=73Z\@6&";9_=8Z8T/;4 QEM1B#6'EX%/8[&UV]GUJ'H/""FD6SKH M;F8;^BI<8^^YIHH''!ZSL[!:54AX*]S$-"0:GAW &KTU]PY!6. 3GTH&][#- MX+89W.UEM@PP&2I=.@P1T\%54>"SR>= TK!T>$\CQ.^?71^;%('GC6"L_#R:(Q6 M8? .A-=,Y:F.P?&NU'1*,4(M+^7[_$H]F7)]?VN&/,[X5!%&3S$ NX('3@M5 MLM93\N,B@/VBB)<'N[,PT3NF&*.$9B@Z0%-!Q6^>XC\RX_(8-]F-@<(Y-,:) MO51P31A+YMAO(D%!D!4QW \/\U2?%BHM[E?@XB<-AQ45L]_9?ZB-P%E"?,2^ M]XC#SL'#'^&;8$@^J2H=W1S97CB#B1G&2UME>RO?I6X8L3XEIC&S4O M. M.^W\5IZ%SQ;:J_DY6+9[GHFETXTUKI;[\'NW0&MS74L.VXF4>]C:>I8L&G.A MK];,4!15HAVLR'+%'>?[.::7*DVB052"2SE:LGL E%$-T=6<"^\$O\U4:D,SE"1Z\^[JG!:^+)9$@:R8 MX.P3MF'-\CU#V;'"\>_X%%AKS%3<@:/'9H*9PAO766DX%UUD8QY##Z_=)2:B M))_NI"N#/Y83^;<1F3M"(E,Z+#S3<9R/EW/DJ#%Z,$TADM\4E1)2O47I')QW M[91EAF/=R:8[\.%.E)=AD$;EDO*H4;$SI5294[Y Y8M!/*?8&AP*'#CG&'76 M#?DLMP56&"T$'3:.R]6.6YP1?P(JNI6\-Y_H$J.'$I%U) ,_-;?!T$YPFII< M*%$2Y0]'"DAM NL=DWBR3I(;A[2%)>"/P18HLWPK98M&X&A;3.6VR).K.58[ MJ-858@.#1TD5"TP%\ S@@BB7?+SQ0RNG/5M-\@S.88>)26I0+&NZY0=Z-7 ^ M%)TA*44%87#Q]/0"SF:L/*D&+"?G42S'\%G!7B)Z<8DB 0UF1IZ*6\2O=]]$ M/(PU#;0I>105S>!R[9EEHS(B6^4VN,WRC[1(KE"C>IJ*'N%:'!'=F$#E]0 M@,J2A..R?D61+2:9@!!<%22JLO%XF=N2X9%:94A%;!W@H_PT._XQ3CGFL5CF M!?S;G7P>KE=*HBJBFBJ]&&@W:LV22WB M3EY6)?M -;H5F>95$T1C*3S&NP!G/,=Z@*@L#=*&1$<-@!I2WXT@# M7;RP0R6@\%H5S9T%>U)=BHATA1O7)F1%$>/=:4K2=<\4Z:$Z!:H[0C.L,7ST MWW%-Z#0&BR8>H]63+^E2?E?!M%4WG]MD$+!X>[W>#M;W>S,2E9\HE\%@)*?@-*!8CL%E3H MV2S.@A_Q;5*97?]2J:7^&U$ZVX-J(KH;OOM0JS ,CA-0SOK9KXC?=O0KP^#- MF^.0XZ@W:JX/4^P"(/P1):_&JW&BM0NR.[-7DF@_AX[O-@LN8]0RA7[9Y>NK MO9T#\!Y_L>?%W(?*#\L56?)\[=8EXE*J<@#! Q4F@M>U(MHO 2?JL7 M'NSOWL^)<*/F*([12E[5,%[]85G&.XZ "LF698(&;NF\Z1QW@A_E >8+^C=! M(CSJ&K]/)UDZZ+;)TC99^L22I;%Q>3K!^\*TW[D6;4414HL$D+>8CW"N49P# MP6>)K13GL$B]A#$UL-AA4I0[6AF"'S!=JL3];\>C-^T6Z#P[HH[L5-A!R>&[ M. _^LXP2*=0EX0E"%54J;"IW>N:B1<23,MD7*.-"'%WWG:;(-UK *SZ! U6B MSX!%PSK=,0/3N4'A.O)?O.N:*$S5F3H]/C6*,'#[8ZZT;0,J)\9"?#HD3M.F M.N;'P3BK;<3,0-OP3AM%FRBN;1(ZSKE*.=]@EP;7(;]6E20C56WS4HVUAT$T ML&&I+M^$@Y&,N+P[PDV92O9:9!GU<\*E%&VP&>5^Y6JCF1!:/4"]Z M\6#'_ <-M"/F/]M4U+9!A^7D'>!L0."R%\ZA,BORT% Z6E[#*L0RTV7*V!C" MT?P$E@9>;BA6]LYB%A5 P8Y%[QZBY_@X+S&].L?6&I>Z--M@9-=)@5]GF12 MP0N3>G\O,4D$QWT MB@M),\C20_?B].G#MT <40Z*NA"QN,7/3JE/:DPY2SED_-4M>%F@7O#.39CQ M^.S7TY<[O<- +>*)PK"-#C3-09V!$7^#P9KK)!O!L4T2M-2/ M!W)EAO'-25SD2V[5[P2_*]F&C:8*NT>%CL(0G3N!5]V=Z*=%FG)_=WMN;^/) M+=[6)06[\4!?4,OQ2ONQ19.B+YXYZ8)$3>G_V.3R:0+#A%*A-8$. MOXEP0G5C,5E&5G1P4<)ILZ7%B M1CA""N.2"G5/X3;A(J4S-]JVTVDU!5B3"Y)-.W%)O7?=/ OL2V5W)JA*R1GK M6:.\PYV8:)&C*@HW5(32]3;3++GYL-DR$ M)7P '?I;S)=OQE%/4W:V]/8J2 M88NR&)$$*8'J@9+J??VIMR-DT68URM_-J1'(H^ 7/ 8FME=\(:LF,2@0QMN( MB*)'*8DH38%!QUIG/#P 0TQZ?/YK4-VVQ [1Q@1_)8DII3\E_0[JG5)>;$K^ M"B\"WB@$2<0$3\Y_U1P9^F$>ZABM'K)0_4J;*-Q)(EI*JSHBY1TB.)OPD]9B M$!SG*DV+50+V9!PQ;2_3^#_+FK<916I>YO0C'T?S41Y')K D10$%:;6@/]@- MN]TNZ,RLS&ZRI(Q 03G<5TYP(/P'>QP&O>P$H=0N5(W+BF7U?" M:9FX1-?';;JV5E2*D4Y.ZTP8YN.!YE2:U=A1SNFQ&<7'U%0[ZF[NOIPAJZ1P MP9-K3<&B09K$WX@J\!D,_/H$V#!/LYNH/EO.H0('+8)\?DPRJG1'HAXSA7$A M[7\*.Q(_$!\$9]-IA&4RDGUTG5Q*;.NHPUAB#L;)]0F_OS<4PB\59GF1 "V( MP)I><6V .^[.*G]D^SN^&'(W&M:ZD S#RIXX?PW?-%;NB1,@N60#]D46Y<1) M.O7J+NOD\H65=%$\)UVLTAE#)Y!1?"V!9RKCT.5@:ZE6^ADA#T3(?S$GC)W5 MB#DM]OL802#QI$ 6+",+@:5/DRP(U 28#U9 Q? ;HA8D+F1@OY*]Y)P0DU4G M^ TK$:I^6M6(@J>X5;V4#)<8A_8&X@693!&2;LQ.!EEE9-QX)B0C:=R?":LL M:E,F".MQQP[$!'BS\*I9E$RU/'4;&NKS0KM&G=EM[AI::XJPN%OB 7D&KQ+U MZ;5"#1E]1%X@E=DD>6?MF3X3@B?\JK9Z??.JK;LS45#<>\7V0&-WCU),DUVOTR,?S+>98E(\4'< $G4:!R-P]D&:>KRG)E#!JIL=._!ALI M1MR?R,*X'6?Y9#F=UCVK8AFA73%:!:^SR20".3!9=8*C)*EZ$)0E$!:.$(]G M3(+,Z(;(YLT]J"TZ3F7Y%BNCN!R$2D%RJM*@0*D(P 6<(DJQ..,@MBLJP332 M)3)PK6BC[( 9)@(T$\# 6ZRH=&IS:J+Q+$N2&%ZNI/O(-\PHCEQ5FH6_"RHO M@NVRT'1$R5,!RAWTVLQAFSE\4IG#NY7JO^,DS[*R0748=]9/]5BIWD962[)H M0AM94;CM9)X] MO>''WTK,&S$0UWJ#8A7F^WNPO_]XB0UU7O>T-X!#9DO;A*"2)2 MK^_I/NOU]UU(B(*@@^$#,$2X7;37'S@MI%E: XJ*(9Z4>V\E&.:D]0G>+1)3 MU$"L5%<&G+3 :!'P.@V)H#2C"U3F]AFIFSA;KN^.S'#;4RMA,Q>UQ]\[(;I4 MR=D%4X7'>=@C4I'(?548"< H%3:$EMA"+#TZ^9O$8X9_^[5^GO0A[4)2TD4 MHS:B*G+IZ%SF[%8G,>% !Z\,LC(Q'UT">/)CW1B!=XHD/HOH0_"P#1:(;2HC ME,N2< ;9R6=001>ZT(GX4_R WIAA@AMMRO@3=:D6TB&CXPH5J&6X4#A+'^=F MGDT4YD7C"?B]B#FGFZ3->;"1W)SJCKO%2464!)?+4:'^LU0<;_@==,\.^"1- M4L*7,5[5NAS1O2"FGIE@0ZL]?CX#:+Q1I#@RR!D_%8M[%&5;;4@PN@9_C#J) M7)R!,? ^R@HG.6=^:: =/:!0XJV:_)%3]L_5+V@6(.7?TP5!<6OA2[M&AO5C M& 632JIM,F@.G3Y*F^TFBZ1)"'I7U,AA>\BB(%U2W3D6@VRPBNRN- L0%0J' M8(\6:A0N-%#K\"@5I^$-L6^0<)?Q;1>OS*@M O@\#. ME1SU\[(DEY0_OHW(I7__$8O*6+1+<1*P=X3D7.FM6Z; S%F"P4T-2BY-CPD% MC6F_4B,AT1/>VX8,T"S*Y_*]<53,@BG:HZ8*SI0\VK?*WW;TX6O,<[>=R8-# MX2/W6D=US[161^ZB=.D]Z-3K2.-MO+2U)K"P?(+5BWG)!.&EI5PX& 54AG=D MRDJ6Z32Z :Y _68QWG7MB<#/3&(LK$1(:V5@8*J4I4A-KG5N=\@]$DQ?1JQ; M+K@E7%(G8!G-%%@GU,&'B)NVJ;:PY2^.<:+K6B00CJ::Z%_)VV!\W<.2B'PD M&V[IBL;4!8H_!:<](>O%],+I ^(GUGU01B]32X0O$31=7E;RY"&X*: M]1RLOBKJ&%$:+C4$";\LUFXJFJ"\T$43=K$>-L]:\>DS'R_(])7KALH\SG(O M=,]C(U)5F1IA<[Q1H<^.'^.#\NANKC4XPP;)5+_FB2Q.TPAN$R1+K%DIQ,1G MGYS<5EX+4H3ZL-DM;UVQKH7Z7:6 MT=JT1)&6NA3K758&Q9A7P[J?,YMP&,A;0JB,9F 4!&]9BVZXI3'VE/^A=-:, M30>DV5( @[1YA0NVW 4KP)0:*XYJ!_Q+I]E7X)UC9G[$0@99(2V"+*LIDH%\ M4QC.=_"$",)!WNIC4VF)":_3Z5-GJ69D2>Q@8''_6K0.8\$B*S:'36X=LK,5 M02+Y*0R$7CZ.IV9+]%3A4>ZS>!2@$TV'7$HJS@D(6H+I# 0(8"QDY5 M"_Y,&*N'<+$%&@#!37R=Y>!C JM+\RQ!N7!U+D5;"^FR\S +W-$#C,:>@)I) M2&,508S]P'@?<$3-X5S<]&RM#M-6/%)YUABN1V_?*(49YZ((=PRK3@@-G+OP MV$CF^)>0KV8_S98%-MQ.G&]ZZ8B1\AX=S\'CI+P*5IY@CA1-=XYG<-4U]]+I M)7!9#:? WD;Y>.:0HV9\;D 6-\(O/-#T2>13&"6%K>A$0'@$@L._3.'A"38@ MQ@C.[U3K5+8S17RRF5_9ZJ=[W9P+:;&)HHQ2&KGZT55M$IISA<$(2=U4 \W7 M)^VLV2U4ET[*CW9M3=1/XG8Z9?_6M28#&R=@ZQA:%.CCB2>R$4-?BF?V]YQL,Q">0O.VWR=LV>?NDDK>;$;L1 MRNUN..Z907K!3A0*];OA)P&']6%M'R3NP$0JJO Q&);G>!*B.!GO0602ZUM" M+Z3>0(U8%"MG/)Z.,.&O.6< @N]C*/_.1V0S'^QU4)N1U?C\51\:6/_0X &[ MLV9PE34(NX6!C? VR)T4NH^0A+N\"E?*CTC,E!NM'-!VG,(E9IW F7K> .)Z M'&7_EF&?SI8ECA%M4LSWSGDO[R0E\!IH@#+S35KYU)P0UO22<>#F&*%P*ASD:S:6CH/7 IR\YC5< MGJ;8VMD-O9^Z[Y$(HL@E<&+@*G->@1BLG(W&=U#W,;I#?C_# M_CU/A)66]AP-QJ6)949X#]>8&#)N)O5B*:?BDOT%L\UIHA#)V:ZC@(U13!", MO42W(J?FT4D\!6L2-2:\8+?+W_Q9.DR*I MM5UALUCS(CFQG6L:;+IV.R:,YQ_GL&_&0=0<)ZLA'T6O6IUJ%DN+NV_RS7[W M^3K^[5HQOO?Z^Z -V5G?L+_^\#X"G!+1@>G6%&%QFDHH'WQ3K(''K(L)W%!G M+#>_4EQKE'! 0F;B"F*2"&^,/FJ\;QM"D1E )Z='%6UMT--$1"VBV#3:RQU2 M8(7/<:JK"M S!XM]63A @K?UV@I7+#V"H=MMZ0P=E/&J"DMP/RH),+B! M4O+TTJG,/+PPXPZ.>#X %I1[<>W3BR/;K%$Y#E,)7+#5Q1EV?< 4N2M*&3Z M@LG'/"#>L8"04EWLI8A0DE (D[ +B5ML571N87BQTOC"+H;'F#OKF"OEX(3( M/;EW@Z=8XOQRUWH<.ZU[M&*'@T6TTQSM)=G[NAGMJ%*',U/N.3'EA$P=COQT M&-GL,";*4, V!FR/IN<0AO8B$:P)W6OJRXN#AXF+03?4;31!UM,O09&L MR!]MC$2Y,FW[6%0DZQ2:%H0,OI6"T)X)GHU02M>5$2)J3*C/TB_MHGA^&9J1 M%@E%,Y>F,Q]>,4& EU*Z_&7N [7V,* ]4HM#*"+6Y]%$87:)VW0XQCF>99B( MHF&7COH4K"S,-%.\F<./5+7/H5@@#Z/RS7$8Y632?D;NX@O<%>'_IYN@=&AQ MA\MQQPL-!)R M&\Q=%&(*#.B ;)>R4+F!"A*Z&DTA21 M.]E@K>+SNC4B5 CH+Q;3#_%"X8%+4E'=" M7Z. <9$0D7 8^CSH=?'@!EUM.R\YRU!@GF(1 M\X'3,&!\L0QA9NXD=8!./+7X6;4FEK/6HA%53])U88:ZI#FO\/&4Y]2:1F4T MI6S@%V0:GK&Q?]!^1\@7>B'C8ID1NY@] <[7AHB8G;F.H03+%)6]E%:6T4IYX5.Q9/K:"V VX@!8J9+[G9D_M@A_KB1-GXJI')Y M,PPH5<7& 9MFE&R"/2,YQ&!\+5DNFT,"748@O84Y!ZM7O(O08W_UM1%F9P5( MVQF00\=B]!5\8^+T-R.!%1H0"MWX6.P9>V25BBQLA./$&05A;O.XU!2CP>OU M0ZZI-T$&.$B%,*W,0&_C#10.7-9<(4"7,AA5.H>&E+IJ*-:9W!$5.&=@XP0 C"&;&Q)8JCT3W-A2P M8V )DFJPL,:83G?&G"Q&S&_H=S0R[.3/H'I $,:=R5F'G^_A43@H^J94U\O- M@PA%"9B!IIRA35 LJUV,L=H8G.CUGX=!;\ C/WN[)E)Q[YXVQRVJ?!!V3\D+48]3>$(T_E%:\A\-B]_QAW M5"=T*KGUD 6IHO)_9G X5[^%DJ8+HH3744%+\+Z)-YC] DQV">Q4QFJ8ZN+ M+!&H @9;GTO-?M5B>CHIU4&;4FU3JD\JI8I*B_Q!+U)F!D>0L@"'289NN'ZD M&,FNQQ51JRB(R?7\75T"V*YT*:^KX6T M-MUQ8AL6;4?Z;W4?3D6GL?W #G0>3U!U>._?[STWDV04]\;9II^*&>$D@9U^ M#HSNQ-CSRQ%E=J:F4^=N= 0:GR159:0>\J6@UGB-&F RZ]F=6,]/<5A!W?,? M:P>O*G8\DFB%*3E4]W!]2([?ALUZ-=- 181%=(7.3,Q-Y4TR7"G$C!E$;0:% M7@C RN:X0B?:PD2%Q*2ABLM8XNDZ*(7>Q$8> =:5?2;F&;B)=%89H>MUN5/ M34J!N;$@T.? P+<0 P12K2!+(OZ81Q_Y;38&69I+8*:@!MJT;K62$AVMG#"Z M$Z'T3!TL72M<&TU0E"LL)^'W$\/W2!9BOL>JT,.+$I>8@PU^-C;B*&-)*Q>; MES'5I762*3*6!C71WOQ%U#@1A# M(9V$. MDD':C"_D2IA8JR0%A&/+QO)E,?/%@?#Y*38_@(5"V6"*F@$%08)S:HG_2.#)9]R0J,1B?ELZ\869=+$LVR0YRR)/)6I37S75PH[N6L'Z)DWOJ;Z-6TBV"'/=YLI MIU@B]DG0+C@0 -)0V.YHZ=?:47(,LGI$ZGMJHI,O9H M##:W/GG<(54\[*#!Z!VQ]AYV MV'MP'!,6%E(>PI5LZE.$0?MP?=: 5."0])4BGC&UGF+WC-(B7(\YF&-E;/!2 M8?IXSO(8O<,9152#XQE&^W1P%@Y^B6XPZ%*LPJ'^'1IU>R/E6*A<,88&-S*E M)AVW?@9.1/K!J?2$A$HD;A$-RB2R_*A6-FI8$ &+*XAW0!PKDU;1KJDI[& ? M?J1"NTW=):6M!YU'O'=WDVQRC>OCJB'9UF@EG5I"'7&NFB,%M,[ MR\>W7&#UE&E P..9Q2.J'&N,JB$^W1 ,@G^YSK%N&RP,#2E5(KWIZ)-5$-X8 M6G+*O1H@= /18_>DT/[P9I#&& Q9LWDB- 9ZZ M:"FP3P311V&Q$5F_"$*US#E#IY. POQ<+4B<(!'76;Q8L!'HE"?IKDTRHWBG MUE]Q.$QL#K+$G:$KPZ#@-=@3?X(;G M.JZO#2 BVHY6JUCGYA7G8$W9%&TU)\EER4O'C8"8RR5C/;N3A&I.WW\=#V"9F^H,N7K)., MG6>O5K:N^'X$=CM)_-[A[D$G.+L16 /J-] 4.0$-,U$"\VS;2*P/HU\#0FHL M89U"9Y2!/(]*MX:JWJ)!$_)PX/I%=A=/)>DZ;).N;=+U225=UQ@?5,#N<*/8 MZ1](-:D@-:VU5!5J79;$5=S28;_:0T55:KHT%OR;+">WV %H)\@%8'%_>*ASWPB1 @D\7X#,T+.+ \#&:[33&P*"F&>78 MD=CDY#'+N-+Z7!?<=(JMZT?THF=6BHGMMT>9YFKT&(LY7@'[MU1_JRN9'I7%[;=2/NV9V^G1SD--:4E#M:K57 PLW M@)C1DYQ$^83XW(DJ43$:>)#8!U%$4U5B,U)$.:).<$E%A"PFQGJ2I>F>3- A M8T@IG%PKP+VZ6U &]O*W"HH[HWT(8?4O[F@A!+\A31=YRWXEU[%@-;W83B#"E(DKBF@;( M'==!H[D]'.&0/HI"F>Z(,ZVP,.^I> @!=RS9YE0IY2"[QS*<7H?;CF^B) 0= M. )9I&[TI.\H9GQFC#_> MW&ROB(B< TD4#=C!(?&2JQ;99AI/LYK!I)X52?O&4^2N$&>,O.2DBHU [H& M&>M^ I2]^A#-)%$.5EC:WH048()>7!NCT\8&IG4DU6%IH(!(P!NOPWDV[R;II,H@7<'&$]6[CA#Q>QMM445+.QE1*$=-(,T)2Q)J;&?P3A!4W\-=X@GCB MT2<'J0 555S'>N/1_L;=LS>>C,>)'28V>YFWV(\LH7\G4=W4= M%Q(QYYI=2D[%Z8TJ=!K:Z]O0B6"J-0/QJW*77'2@60QG[F_,$ MD!,SJ8:MV3:$3][IETQF)E)'.6,PH5\1I F]+*J8PAOJ0G6L4F&PH)%@*KC:A/A7PTUH%ZR=R[S]6Y#GB-L2;U M'D)MX*U4Z00#L4>0>^D2M9:L#*4XXEA9E40EPU%X-A9^QQOS&@D44ULW( MA5<3J:99F=*Z%NK (W;*9$]5OJ[\I9J9,+5T"0-5TU@\: $S.C\BQ1NAJ-0$ MGD8Y@@*2--/@U_;>T,7[I#6/&17G>H=^QSL/2^??>N-#N8]T^'B2C*77OY:I M$O%UATDR42.TYUDOD05B1FPQU!'I@+D?+% :15^#K:_5%M0UU(M'2&[_G.U* M_4#T,)@.\'>Z9"&28=*L0&CVA5B1E#>X4=Y"N$NGVL0O \ITN2=H+*8D#CA& M!GV$BATCELP"U"!F3V2UOT?PLJ*GDL/<;7.8;0[S2>4P111)>L ,RA/M[GK& M=\NO^D)SMC0H;F]=II2[OFRD7:KE!,#C&P*4_>&?Q]J/.)*>U2:%1MY2"M3, M/&'T0SO?@JR:VXA D4]P (@=RBB3VCEFHBVWM2Z#.]%N3'X7XV$2]W@;3W:. MRH1&'P#%9-=YM !%ZG2)P&//__56Q_DD?XV6EW'8YHRT2W-GT36G*-\.!337 MPJ]8>(>3(\UP3F>6BC-6D[--[$3:VM"*(;I ] 0R702F20A?IC3J7)3I%]'K M!:^6M:]-EEE,+()1UMX#Q^P)7%H8D?[\GR5<]W1E$06U;27HE=7)[87DFQ&F M@TU+GMB S@X:XYF=QA@"#J8J62B&WG9*N.D)94&%IP+-+EE_0(R)AW+Z=7) MQ3$W!=/$&E)86/:M%J5I^Z4#DI.K67&F"^CH*EH>,^! M @1"YL!0A$'[T:7FB#'&;_17+K-ZV!"FQ8NIA$8,PNZERD'X8)(T^7EL=5]0 M8)X6)#%LO/KJML0J;(RS_MZ)AL8R:(0/W TGD;WKSFI#DSV/N5H"SAY[<)#6 M]6&S;;BV=[E"]M/M!"'OYC2@IIX3$\6"?P>LHGCZROIC>="4CHP5,V#NCPS5 M546*@'OES^EDFJ017\JP96HD MTB"+-/'5RR&03\.H^TY%IL#$WH>LK)N45)UMI'.'.O6 ]=IYZN4X+7&[X4XZ M:%%P18P09V-JXD?[2F# JE4+\NP*WCD%1HA[[P9 ]TH6.N:."6JM6$\;2CX[ M=+#D\,1V#!XO=L@L5#HQ\,L7V14Q<:^JT!_,'J:^9$< MGA];MX-*#526'8KMLKUW*[>4@^=?:.:'>QA_1.&5F^;]D3MDMZRT&YOPI&W= M0!G'11X2<4,1P7UIU4*8.JP!K?6;PDG5M!O%!>'JJ=.I6C" !IRT*!M[*]*8 MQP1:$+J=A/1]ME,U%E6Y7GY5D#/>5V-:%:R85Z)\9.PC_]#6$144L#=40.;I <@#HF'G/L&U>X(R. M;%(>49;FV4>L9QI_=$'XM'M('5II40<,NF;]Z1(06_XAR]BI7VNN)PJ1,B?K M5A#CZ?M*+U,ZMRD/Q!.(IE/*%>-(4:PWB;4W9A!.XE*"U(@G2S5GKPT$:5'U M QA"")<#9COW@S$6;E&J!0NT#&,,9/C:^,W5S'2IF",])5GE;1%3MF ME*TS!%@*<=VR>U.+)C3B5K11[:0[WJ30<^HIREH+,BRX#MK><%OV)>E)Z63" M*C>(Q=IYXG=A^#2G\2@T&(8QP#W8-[<%1'L %DC_GH U7+*F7[0FK"KT&PN, MJ?SOIP.(N]?F-=N\YI/*:Z) X1G#SKRJ&06O.$_!%< KUM3LO8KJIHR1K7M< M$V(K5U*PC8=@#S$6@%3"=J;.K29Z;&2O%[)"+/(DYJ'RG%7P;$**9@EJCE,A M;&>TA<^)(V\GHDJ,6R7O3^:$6N M#LOX$^G^%JYACF%W&.FL/^#P"\RT"0*PQ#.=$CCKBWE'IVO/JMB,=G"2!0FP MKBJY;'P0M>1B,D/&\ZVYRHT'876(WS8&_X43(= MCK'L3JT-YOH;VP3&=%[D M,5?C4OS61&@D*2^/M<"(KN,G>=(J;=?0-8<^Y2G:%[+CYQP'?T-K2%-L/=.B M4M;=JQA:#JE[J"J5"ZY#!=2%^71'".T541@QX%F^\XP.SQC#^*5)?$TS5#AL MM@IF&6QVD=%/&,9%PRXJC& 5#Y,^H);3[#91DVLW.7*+0K3>6BE +LUI)RNOO!"]KH-W0GW!*$TS!,X%% M4G'J1O.M,FK3@GK(#(N; MMM1-!LRU'JZMST!(>(Z9A)77JU06 CJY%=IGLEO;LW+3%JA8^4,=FSG/L MC'I+!>&PP ML#@PNEVGTT8M@8K\5236,]EUS()-B/SJBKXEI(CD\.AA3*HOX M Q@3PRYE6U/$AJMNG8'N% MN9&-Z@Y<1$[7H?I%Y;H[I6 8)$M#,RSK-5-9[.T:%U'C97J3S&T*VV2YW&X] M4UD-J\)D/FLE^O4=I=FN!@>O%6V*95XH38MC35VE!H)+LZ4&_M>U[P2O3PVP M908N;<;6!!^^(48Q]AA25HRR*+5/"V1PGL#T86 #;N,N%G/]0$_?9$YJ_&W> M85HW%IK#X7CIL^CCRDYDL4/V,!I.^F6.9@U%=T?+!#MK RJ#T-0NBK=9)7/O MLA1Q-I&^6;(+M"+EBTV@E6VX.^HAX(0I7,.TX/;&:"FHYQ98>&>K"W@";UG8 M,G4"?D=S32:$Z>>;*% 5 HK1G0EK@_=!#H1)(=,P'9I#:1+!4BP)V\2O&H1: MDXEB<'".4-/%491/9W2 M+WT.8']P!:B7NRION64&94Y!<.52MB#V+@:Z[.I,40&C22=*H'1LDA%=!)>6 M*DW@\%;<'GX-3P61??G4>>(6VW7N1%ZJ.BA-,PD3L;*IR;NIN"XL2@M F:4B M@O@F276[ %:/14X\['*&$BL=Y3':>U)CP\30&'/FWGYB)*!CYV2;VE1< M&Q V^ 0LQ%P'T ;+ZX:8\FALNF,3B[?XHD@72\ID.D4.5JJY$ KK54*2F[+V MNY\#N.(ROY6#JN. EIA9D*9[V?:JVNRMXQ!)KR87RLWBA:F%,_TK+P21U2FJ MTM@#B)-_;1>IZV' 5L(:Q%L^=&< I2D0U,7C/F>QYIU*\$B^,Q@W=Y<3X MZS,-L+Y4OQ3MQ"Z?^VQ2-HC[*ED)R;JQAXB)$E6*WX)T0S:A10^)QIPCD42* MGO\K]B)7)Z0&]2*ZR6*L/$*$= :)S1AA=8<15@V== +/,BK=>Q+O=7VVU .J MD2H*!PXV)GQLMK090D:ZNXQ)(M.Q*&RYKAUQ:<>,F<\V SK_RU*P8,G_9R>! M!W:L%??YM7]FX"\>.%ZK#>%QL$+?KK*;1*-?SB- .CPF] MW2#^2P2=S,@;C*HE'.G,&.=PF;,)(>H 'H K8#C/74)>8<4A001C?/%H)+)G M8WO,H,VQRE^?KT0@"4,LU1@;[!JD/-\+5%6V)&]5 B545YGQ1'$:W(@0:(48 MRF3,D"%NC?A+ UGJ[".D7B0QEH7Q8=]7>ZQ.K^F5"[H.J[C%(-A17-0 M@]=8X'F#@#(AV&\Y'/YQA&.DTDB7^.&@![H*)*1*WV-<%J;>VVEY9*- 3W[0 MN^/2A0[UC.W/MN("1[5>?@@?,'2,OLWD9X?>XM0@^ MYE6@6T@@RAP$=,65O-!&-V6(QRQ>%&Y,DX^0KA*])CC>@O/QYEFN2WMCVA^3 M)?8?Q N')*A2008V>N?#L1]I4M0%C#A<+WB5HQP/@]#GGR">N"/@N"@/3K^3X,[D$J"2ZZ<"2^<"V+E,Y DX:H3T32\S? M*?W?SYX4N537&7A!I__[9VLNFV_^\,_ 6%G-D$-'A<[V44%YZ$EBIY\=/20D M!I42"5&C 85RS2 J/B?7.;3CAB1P0H-4\#(2\>B1SFP>20)AMRJAJ6P.J=7? M&2=&)@J^X(<@Z0,\+.0!T]_C1O]H=$\T-X@Q E[&:LPPFE4Q_L03=\A>6!$F M_D1OG8QU2GBXS?"6YK%2-,9M6M?%5T+%OBU7F &=%@1!0VAI]4A1@7B!!VMF M6=?:*%:\<9\_%]K: NJI'@6 WC*_5YFY%M$4#V". B=#C)&K9O' M&C=X015-4BV,8]YIH@UU&M!K)>3@G;7M2HPF*VK&9_-2FD)!-M-8M,8H]A-# M;EBV(19GH@,W=&&J MXDOFB-K08\"M L#?%$!F#B0899*@OEG/W%)O_/H T,A'+S-,[_B^%?>W2:F> M'ECOQ'\X:)>5U:>[,5K!DK8XZOO/-0Q7J)V*WMYSKW*(+2CW//' KS/=YO/J M[:F_TO-EN0-N_SD-R'PEZ[,K%A0-/9;8@\;G3.JJ_K6X^2T:NF8+6Z_$E>!7Z79RTTIN[!'L:!(1C);U M38;F@JE>E.E:S.=DX8<5R$HSGIT;.8/*Z"WB;AI!3/,QB.SU4(!"PX'K<;NX M>3I\GE^(O4BZ;RNK7$&E[U #V*PKP$M*KG M$7*_/G4&XN56.-8TRJ53!**3!F&ZP4K.;Z16\*X&E5W".JWO/M15/.)%61=' MZB> ??W9-KO#YWA$SWK#?N< %" A:]I)UB*'T4 $FT$_#_U=%/*I%0?[( \8 M!$=CO0QZ(1.-QL4S[WS6Z^]W=NW+:)V5GSTB3.'#(W/TF G(*K8:*K'FZJ>X MBI^H&@7_;>UCCH-25 )1KM!V!:%E[=0+,K[HK QLO\T'_$Z@PB<4WZH>I>;? M09/B@[_I,G@"J:6D,@TX+MGM)ZM,XGI@DXX_:@0;V/ZS0;\SU.03HMOTK-\9 M'&(()IC$"<4,J'Z%H>,=]N"!QTS9&#B<\DP[: M?$^;[]E>OH=Y6=,.733231(M"O63_A?W#/"H9?OX_#&O2W,/W6NT+#/]![Y4 M^HMW]UVB/??BUQFNS/7"]'GSL983_?<;C$<"YPO_ #7((W9!+ Z?NX"[\C(! MWW5/S'DX*G TY'Z:Q1,P?LQ_[]SFT>(G9I-;.*1[R=-\'HT*#(R"C@-*_6HR MQ0,:KJ$[^B5\B%"[7,&@=_S#/S&H"6L;#T_ON]!_S6D2XTXO7;JB]F?9FFG@S!X\KRMJ;V7@S_4YWK[V9)MX, M2+-!>S--O)E6FC7U9EIIUM2;::594V\&I-EN>S--O)E6FC7U9@X[@U::-?)F M>IW]?GLS?^'-_+W,,:RYG1#F5S^#A^[Z+XU#?>TLS)\_AW&6X!__\4.O^\,7 M'LIPV-D]U(D8G:+J+3X%E",-=(JG<:=V5R='39J6<20&O5 #2HRV0U%W2[5O MC*):&?(]RY#^EXJ0P\[>4Y,@F/[?DHRXSUMHX.Y91J[_<^U$MD([!T^/=@8M M[7P=VGEJGUQN[?K[C3R"1[+TVX.0M&H3#L*1$538YY^,KRVVI#N;L.V:76Z' MO@<-W%]+WRU]M_2]9?K>;<9!M/2]1?H63Z8!^_NJU\KN21.V_3W&W$W3T!Z] M\%P&1TEGIT8 ^7;C[(WP.1YWU\^V9E(U21 % Z_;S;M:=QN+7%%Q 7PG&/;V MPOY!;WO7^TCAN, M%DUOV5'XUJ^XW^UL46@]4I+#N^#G3RA)4?$+3C=@0FW=06C6*;1YBK] ?'T3 MX=DOD6B]83\\Z&[=O6C"23T^2S0D--:RQ&>QQ&$_W-\?MAS19ATS:[=?^]WMGGM34@8?;\],,9AZO7IC1<"O?]T MTR<-RB,U3CQ\Y:!ZX_:_[!7YP?'9Y M%9R]"OX2$(1O](:_Z5UOV?9LDBS[>>N]D$V(17Z?K12H)C,<"1OA&+_>; MWO43#@I_4<:^/PP'_;9#IXTC/S7*WC\(NX.MPQ2TA/UM$W;#$B1?5+>(@)=; M1QMX(E?U'/75?LL9+6<\9'UQ=GD9G%^9S&19E'97RC O5IH=*B32NU M::4V>&[22L-PL+_% %$3(H1M[+QEC&TPQM[AUA$>6L9H!*VT2:7/M)8'O;UV M"M%322,]^-:[G6WZQVWNZ+$W?U?NZ/3=\=G;D^#5Q=G;X.S\Y.+HZO3LW781 MJ9MW(&T6J8V9/[3(*!SN'CSY8&$;,V\YXJ$.4B_92GHH%_P(>F&X?;2&)IS.=YQ >O#M[W4.VH:DIY,V M>J=*:4<*HK+,X]&RC$:)"LHL2+-T9PS/RC."OH.OE2I71=NRU.:5VO"YB$.D MD5Y_BS32A#AA&S]O.>//)Y;"O6Z;5VKYXBGGE1YL-!,SM !W3R6;]/![[W8[ MVYPUW":1'GOS#TLB!4=75Q>G+]Y?';UXS-RY.+ MR^#L57!T\?KH78B_Z+1)IZ^4=/*ES "DS"1;HK_;#%WZ[*\,OS=O[VW&ZIMA MIX>,@&\"2;7LM#UV&H3=PY:=6G;:,CO5I\*:M_=M. #[PVV:_PWEH+\^4_8T MB:/?Z3_]5-KSB@/X=\HO?8U[^6-9E/%TI9=S(!KPP&K!NYRY"W6CTB4.L^,'X[S_%)3Q@_'/-+LZS6Y4'I^D$'IVO@DN5W\1CW)2EN@;L MZVJF@ES..\BF00G_O:"5QWKEA:P\&"T+>%518-8R5U&A)L%H%?2[G<'S,,CR MX-D^_&L FTCB+ TQC_ELV-NS?PJF\*57<0&,!;_J#X-Q-E]$.3SF-BYGWC*> M#89[G>Z&'P["(/+NP^6\*?T?[*R@O8R7>:[2,EBI*(?WI;"CY;C$9T;P/S=Q M&2MW/_@B_-E5OIR/EDD2G*0JOUX%QPHSL"%]=CF+TC1+1WD\N58!7_-YGOVA MQB5_X>3R1? J49]>JS0X5]%'_#R)TK*@R67XC;?QY%8597"9); L_.N+J(07 MK/2#BDZ -Z,7!O]BCV>DREL%C\8M%<%M5 1PB&4<)[$]MA.Y\[]XCJ@@U$')%I"=CR__GV6LPD$MA,O@FAJ)F- RSG/ M>?:U4=W^&6] :*!WD_9MGC2/F;B3#F#@+;<0M<0!_(6'P:M3V_(0**D0*:>[LN0J\)7PWL\C/T:(X_PU-_ M:MVFY6=WYFGEIO-:K=;^&I.\OO:WX[935:L++[41:(C-:=*6O(-UL" MHZ&/$I@R &,8#5)8;>@!'[J4>+$<^X:S5. %*7 0A\'9-R(0E,";7<.3!##T M 7\]9(:&3-)/8TS R0@?&8($&,!3QU* ;IR,@BG/I 3:3@*:1QG+2W@0W&$ M*,.K((Y"HNN10( FZ1BW#:S=GKV!@6:E@DUBW.M$!.$,_K?(86: %(U.M6T. M=QGC2"QZ$";!N=]R4[-:%(JZ/\LXEV,)^YVDH3K8!-2Q82R8^E+@G6O"/&:+ M&PFR&S%LA$5"O?5M6A=H:XWE'*(HX%EI/.Q&H%?!7HIH1.REQ-3@=W@W4N!L M3L>[&PM=V!M$XBM]H5XFS5?7Z!GD&+N56'X[ARY88 MPLO?B/&UN$G4UCL[51.B?V.\+0@;KP[F5OMGS_D;8;0 X(GXNN6 43DBML9R M"-OGV_1W,<-$?4G"+ K?Q'),4Y;QZ9GGTFG-HNF;1KVZ#3N9P$>UL5:]VFD_ MU?G-$5S3\;8+;Q3+X:\O_G5^O+M"**LK73%&=A*%B*GYG+)*ID'^2M%.%OX5 MJ&OXU XZ&#&RC8RX9_J3;"B-%\;1Z3Q#I#HK$_@SV <1]$LWS1&[NWZ&S): MZ^]PQY5V'\CA$*]7JB=E><-2^)VXR(D4(>QPF&;M>5:(<2N@2XHXA(5%_$J MWA"1%512?&I$R M6QBM#U6AS#D:XP#>%>'1#T$WPI-T!*L!%8,7,^M):0(8 /2#08 GM,PM0J3) M"C(^:"+^CAQPWN(B8Z)!("H;7I/ :O3+(AR@DBM5YQ:4BX9L&64 98DJ622? M15LK?T.5VPU7LE3NKJ JN"QJ-:1S$+57O'H#;4HR%;>K[9_G%(FBX.;!O,+U M'5QSN]JZ.]?T5C+,'>.VN@/#7'.T43XPV',7T::MT:;>K;:*BC8KS9\].T1I-ST?-*N _![H7-CG)G.%,FW,NB^==8OLNE5S/&->M"S.LW4!WWRC M<5&QU()XVJEV& \0+VYW-&61G"5+LH[8PS.N#M6,JR.<<54<%#FX[4#Q*$+0 M=K3'W"@SJDI.^386C-*6&W7*8D4.)[7N-GP!33'XV<14&!O0O":M7Z%"U;O# MVH/$0_!XP4Q.E#)%LIR6KK1#9V?HHZG/&=>N#,CNPVI\07@E$]S($.S+A,(I M_!5Y%F_0_\G,58"R@0*B+\:H&BHOM'NS-X)K'.=C1O/4$#$@."95E,@KX[:8 M/Z6Y&[V W'702RW@!.$R1#]M+%(?59[*-KGQ/IF(P$2H70%$4(\:@6U^.?+&\A*> HA"&P& M61 F:4QZ- C#@91P[\M$2N\HFH&,Z6H-3 Q8;;Y9D*O#((3;4>@EH)=)DEBO M4,AFD$-[7A!#$M+*DQ'&P)1N&=JZ4*--#.-HPE=2Q U;C0+X_6#F''Z2Q3)& M,@?'%OQ#CE/@1 NXQH%.XYNA4Q3^M'H !A_(.0!^ M7_=X+0YK_2Q=ZV&^&^W"42H\L;PV1R.M;SL&L;6M_)0*E!$5K:V#J37X/O7J M(45M]%D[EZ7Q-$ID'IZVNM6=#*+B[VP\'Z<8(0]3IE5FB>XF,1BT:$P 6VQB MR$P1G[G0#^ 9L::H&863Q"R=1:"]#J5/JHNY&%;6J/^L]WP%$(C2!*-#<'G" MY).&0W$5L;1P(4\K!:[Y$=VN#LD@,]>PMV:X9H1@>5-9:^C>(QAV8H%6@HUHNU!2HZ!;TDL!;0N!$TD>+@2Y06*R$ MI^NI&,B8(F+RJQRDM"SD/7"UX)6#1!NKU[*, @$$ M5HHOP3J 3N@H2/]$;B M%$[=EX O)#9P"VBPHWO$.YE+N=!R,!6L7$%YZ4J4PFB]]V)PS;LQN+H3(WM\!C>?SO1= M#*Y)--QH5;%"+#-$?,Q+H&917R+EA;Y8)YN5,$8&: MA>*UP+=-H@ 3?''Y$ZKL[28Z&?]UVJTF<0TO-6^V&4Y#C<":7+VO>K6Q@3A M6K4R"%<&X38J"+>ZP!4XE+)!>G/-@HZB<&O7:19T:)H%%<= Z24@F))!FJ"? M0?1!J5'>)>AR;K-;NF M]_'6XS_("MQF%UIURK<)T6A]T.#Z&6@)D MIAG!05D.>;E=3K1&@9E?OZPCD\N3V]_(DXMR2"L0D![CXVF18)]CJ?._XBK> M .>5,?ZU\#.3.P$%WOHA^"<%.T>E#^^**29T>:V @6YN6R%0N[9\AS= M"BDYK@]N(!+6%>@/"9N_$F-RWRC_YD['417),5CO-*UY?&\7YT^-IN,%RF2/ M%P;USA>T=8(.*.Q7@<]Q4FLM.\':/+L?-/MM"R[6KQV?VG ^UX$U+&DUL!NM M"V971"P 5Z6;ML'1: ,$_7I))7L*'F.PV8Q2_&81XK=C&C2[[FKGT_[Q%H4^ M*I"A\@4"3@T-(4I,SV0A].'T5V(-?-7=6FK_>2J)SSZP&K#> ;!3W-@ ='H, M2UI394X^:+@E*I=N$5*KZSN,O;*RQ&-5M<7R-]\EBF\+*)95D%2]GG++X (J M"PF$*G[1#T)*3T9?!UJ^#$ L%+EA%P=Z/0:#.)6^C(_OC$59BQ9Q6$.$ M4$:_G_%(.9\U++NINHO"4K"#M+$X?]S5%<@)_BM=55[\UI3BV4<4^7-PCFA&X)=2G.\ M^UHDALM.Q P>2U^CDK^'8:,DM0DR[T3XI9+G5G$PM.I]E@AE/)):RPD$S2*U M ,+%*Q&,$0.W (.V$D'E-@/U/< MPPVW'5&.NUD,"*$K<7:S@&$%2W$W1]78=G:DY:12D[/XLJ"NMUQ7<#8N3,\F MY\P4L'&$?(AB;(H73":8BC*+!E_09Y>D@GV]B,9G%(H[M?\U:<@KK@6,;ZOEZLVD\2(52@]).<56#D#%M$JG9P8&!,-R$1ER>@MVO+# M]R=G%>_\=+>"#O&*=_9QUXBO$9@,-KOP<7,GM-=$^:L PU;C81X'RVKIJY5T MD&MCDJ[ F<2YV1/]4[-F,=;)=XU6 MJ=[- JC>.U9VYR@1.7I+)5>3N(/2T+ Z IAX3K13I7XL36&Y38?(E.@L:H6C+P8TO?*/MH.C: M*M&+V<$WVN:YK4HZST*XW3:96] *$T7'28'QFLSD?,OQX6R!'4O@MQ#;?-W8 M$ZL<*WG>G!:"KM-<)I>#R\04:8,S6S?%<7@-6T[EB>+9%IS4Q%'=$NVF4>HE M@AK4M%@2BBS5=ZD2>,]6^6??&D?[+R>>9VJS,@"SP?U $YAX.@N?: E M(P>,3P!135=4NP7B2'E$*+Y3<:WESWX:1TK/=I]*='>(_)NR27P;AT V!'A' MCO#+97?JW![\.TFGN",M:=0N5/$*99YL2@"W7@9PRP#N1@5P#X$+(8*1B([" M8*8DE,J=0\80@B&1)"@ 2&D@JAZ; !B*-)( JFD$>09,BXOK*/Y"5C4+?FH+ M@AS=W%]A]SQ; %JHDN307,\&0^Q+LXU'W/)N;!'1:+5<6R6_KP2Y)<#(<;L' MY'>3J"SF&N78B)SQ;0HH\Q7JC"IAI8EMG>$H!O,*02_AW* KR'=09>W7:< " M%YM747K%1S$7UB6+6F5G@D2)HVLJC8/+@;Q"N!Z3P;8UOL.22!B2JJ5.X$R" M'>![/5RJSC/%[^?7RWK.PM63R ^&@5K!PAXSQ 5X.A8#J>)$G+* 5Y""3] 0 M)A/P[/C@U)N.@=G4L5<6%W#Y_'62#I!Q 6W2UP'K&4EM M8-]-[%.V);])';? !; 72UAN266*YG6N1R_3B$G1$D)6JWAX-H'22A>]+ZM! M@VZ @"K19J8@Q -N#WH;,DUD"A22N)*A:1^'M6OL5?+E4*1C+M00VOL_U+W8 ME,J/M,:2AX!0]4ZHJ9+.\;3HKNO155HB,23UW>(FKCDKFR$14WVY6$)D< 'M M5_GLD-9@885A(I_1"K@Q5O$<43O=EZAZ2%E"IO0&742J]&;!?#?2/+7N&,3( M$(\6E/^876>F091 W_)0NY:M*9)K-*K,UA#%YRR9":88LW# FGXZLTO!AE-J MA4A?,U5$9?;A>$?=YV7I(2 ZRQBE)ZQWASQ559J?U'Z[)N!N;8UTE=AGD?3A? M94YFT+:U\(75!A)10O=O,X$)++RD/)B^Q-(-(T0K.@_>1U:5SM+ ^;#9:C$@ ;C@$D!<_=&8CPD'A5*XW#6=6*!+(YN M?JB+.U3[!DH&Q2Q?#5+?UJ9%Z=@G/MF7NN,KZN^Q^J6/L1GD$20: 2#$O-WV MB0+31R3UFL#2"11!6E*[/U#?EP$K9B&S.O5\+GY-J)(%T0Q=J3.D.5],N!&& M?A[7#".1^@AN-"2Q^,88?@;],#H,**1P#Y&-Z5:_4GDSM:L\F/0)Z35JL7R> M>X)-A\S@@G!+!5FOO5'IDSIF3PDEA']T$"P8K,*KSV>>/A*G+2\R=Q Q2C_4 M$B)?B=0*@@YSH??#NF^KF"Z->KC&8--<1T%/TV9AL#D_E\+)\24PP$,FM&VW M?P'J?R%'.M%BZU/5U+)0)PM!LFH5>$B0.01>8]S'8"WEW4 SE1V MWM)@N.+=G@Y&:NV"SDC/910R6V(*BH/D2Z:&\YJ4J5DFY."JF)8EV(!412>P MS R%HWY9M PGXE1D6AC*%8XR99BAET[)V>;V($/54\4";%4# M!&1OD5"UE'(T=6!4]HUN1?!B>*]1&-+[C+PZ24W7KB DPF%MJP^(!_)1!)/, M5C/4%5KV8IBO<:P1IB_G]EPF A\1F#)9)I#ZU"^BS^DAALDS=-%S,E+WR3J1,7'4O>3)B9R,#&4XD(H..A%CI>8)VL;(T=5 5'E4R(UN M)BU'+#;S23CK M*J*DUKM4GB+B,/!\Y997XDJEH^O*95,NNRDQRT89LRQCEAL5LUP< A(E&4Y$ M&N-\MC(GJ(=>-CE]3BMMYR1V+\U7M^&RO*1ES7W')+K^.U+ %,".-IWB8DKN^,&H8]O4:DX^,-D[@AC,8"(4B#?X? M54=N#V:U0;:"\R*'%;,'P/Q_4A4:G&"&*5ZNFQX:AU5(Z?KZ+"-,EI3T"G6N M2%3J)D50*M/(=?ARQ-@$=-%MQ,FOMIXXF^P*2Y+8PDPJV**S,C1]@3&Q0#<# M%5,Q,!-[ECK 7/W2.L-(*]@_V77.)9,M:S)2BX*\)AV=_"D.@!6*."[Y2H:E M:3L@#:< YE#J+OH*VQTG6QDLY-1TT[.(@]5X)EDW4KXS+:%< M16TH,2[,9?D3:BRY>YG!A,L<(R.C/CH_-6KS=1(X,H=F[F!5'59@\/I!BNFU M5-S^9M)DYICF-ME.76B5Z V;YIFXB&QEPFH&J(<8(>?SV85*FU_T+,VE($VE MZ4P\%]L[=EQ;69W"9L!S<7KHF8164ME5!FS:MY;J7,^M#->T5ZFT)/2'R] " M0^%'KIMQQ>D2 /2E9/N1HF,\%\B4I&V*:7P+I@ .@YD6%FA FK&"\B:BE"W4/%V?@&OKYP&*2MWXTA26YLQ"+0 +6-WE M>2K)%W/"#<.\?=2!$<6+Q,0XMJ'2[!3MZ4[?%5( ]%%$L@A'@8S.40MW9JX$4AS\[B>U=Y.Q"33&\U0'?5;8PBN2;K(&8OD)BHL+#Y MX3I4$0^,KTB Y%P ?RYWSP>A'(W1Q9%."=WT#$+MX%A\8W%R&S+>?>5I4V%0 M';DF/OK7X3X?$+.O@)KHX'DHX&'$ &E:@YTYJS)S%"RN1Y+M&N0P]NF&,ZK\ M )LZ0-US.&*%G7Q,ZH$ Y>@F"1@/_D[]2Y7\!IO1@JE1JW""!(!>O4-')BFE:Q-4:EI$OB+&\OD >^E?'RH)(8S!=8Y,>9U4D;\@\KWH+*DU#)3(TA66M MH#*>$CB7JML[<^X-;DE>"V>%$9,1:)RB]R4 JI/Y9S783K. M0)ZLWGGMC41#++$P'WO' QGDLPI;K?E9T29U(,F)['E#;6I3QI"^0K\=4UV3 M/%*06I50C7OH^=0*'9" LGLS^*IG \UX^IM(.+B:QPFR7<*)K2F^1C)Q1SS]<]B:POD& %#P)>&Y-? #FN@A]E MM47A," $)61DCPP"6HH8M!*'8ZI%VBFI.KR)-C^.)#7\%_5CD]B;.3U7>TN4 M EV4TWF>-G3[5-IZQA+F>(SJ)$>;4P,U9EY*DYE%YVI-A<]%V8 MFN=05?^C$@8V>D0I^\9=:Q_ ?)CK!7A0EO6!*%>H&1#DCE0S86,G-CT!%16' M4.BB9%QR2OUZ5F1MF@HBMU6Q61YP -.SVPUV_@T*4N*K7BI5[P U-G0Z7B^% M^S70.Y!VJFJOV/.H;2E6BCG55^CB>LGT7*1>AP%G*_ZF:\I:]Y+ZZ)'?VV:P.7)*P8#OU7S M:V*NR*O'8IK(-_H/=]?(WM2&D:8'S NTQ")>*M)9I+]@1DK?9/AMC?B]RVRM MD.LRCYS%>ET:P,S)9K[^'BAUAOX_!7!@P%I6-*M=8-Q._I9ZE\KE1W"<;P9!3XH]>;SUG4LIF]8,ET#C&Z5".9WT0>" >I\B\+AR<1X)F\MA]73 MG?#C59 $3"IZQR]^0R6XUGSKIN4ZXOV7US-_Q0FPPO+V>A3,Y!8\8( 2!8&G M]MU $?YLIZ+4*7KQP@']V =3K[9:Y3,G- MBGHRP,VZY$"]AM^.6O M+QHOOI6#UJK;QMNF_9#UZ5>/[']/^_$*!\55Z3N9 32/*_H+N'O.LUK\=P$B M#X,\CF@QMY//7@ZH=BLH7;[],+&U9% M"P>(GQY@:VR9%F%K#F&3+]%UN38S0:L, K@[PUFQM+<7OWG-1J79[CZDPH'2 MH@B *HGA$8FA6XRM/30QM"J=6FL!!];.SCA7?M5 T\KGMU M/8BTOEUI=]H/+;%*Q%YOQ%[I:5L3Q*Y7&CO;#R%]BB":L_.LG&2VTN#:=!WS M@056$?;WP*3>J-3JS=+H*@FBM+PT0>QT%PEB[0RO3,(]-D<,9R+D/E;TS3ZTLV6G41IQ)57<5_85;;,/3!6=YB)5;((%R,GVW MZ:KNTP-B8XW$=KW2;):AN9)T'I-T-M.<;.U4.O7%&,':V9.J!$K/EX\6NU^4 M!N7FJL[/)DN+!I4'Y@[4(K[QH%FVI?59&&1Y?A+Z F6[MIFA2B5R=?\I MW866VBWA(-]1-/;5**U>?"G"BG<8#JJE8?OXVGF6III 4WZ4XO$4@]4\:III M\?9>&KLE.:T!.>7;M\7;^T,;P-U*O;:3+Z!?DU![M)WH3A<*N-VIV4O7[N-9 M&ZGM8L=Z[!_2LVVX3N"W02 ?O4=[#G1RVJCDS+'+$(?9@=-(;*IVP,V"5:OJ M3#]2^$%0FS_L\JZ:5=*N&:)H0BC@-JF29FI@EXHML(<@O<1#J_X*@ IS4WO(2;JUL MAO,%)E/51IQG/^HYYT_<]6;E<2TVPG&!4+$@U -FG%U1=S?5Z(C+E=R>ZIQ2 M4,ETH*?)Q#2;@1LD86.A<:0;!O$X]TL%/3G3C:V=^_EU/HV*&>9W_=7-Y_+6 M%.-8Y%0OA)//$SVKQMZDVO %D<^-1OO4E!Z.W6('SFX)L-L<(3H^*L;IJ-P9 MZ4K O:F>S^S"3+<5UGVG!/48%4D4.@-4J-UD$ _2";;.'^ QS'63XDZTU""< MAQ5@6T#N%_\%%V\1GV?\T1.! *B3,#:AEK>?D&T^Q3.XA4\=GJ9JQ@DW'E2# M>=)X0./YN(.^7BCW6IUAMG^BAL4R?9CY-1F"F\,OW2N?#\+,A[T*@#A4M]65 M? 8W8IYM^AF+%.?2\"0"G.-H!KNH5I]^$$MJR%Z8WE2WCQ#][/+&;/]& PZ' MV2HBT(V/.1LHI.:S/#MHV;@ 'CVN:S$)2! J 2#QYW)$XTL\P]T1/;03!,;B,2=K\TBD8?4XWZ$'L0%<*T8A8)F M5[EC5?#+ZRC^LM!E_%%EQU+RWI6X&P+_W'19 U1-WKFS9KF5\1!@"Q:)G.;* MB4GDR[%N]Z[&3UC4-KW39]&;^_8T?&#X:!.F9@R\+=WXCQ:U-18WH)N\(0IR M&\[HMK;,[;/N8G49FD4O7KL_?-<.YIW0R-')$[W4:=)=,/SKU7EGQ)QCP%4B MOFNU_)$LUE4M:@^Q%3M((\,O$.,J1I@OF/LEICP1IC0*C2G+1)%IPE\B4E$0 MJ5DT1-K3TWL(518$>8E#Q<.A5M%PJ#<>1P,Q6X9"6K/-YU*D*I98]>Q8U2X: M5IUJ$TSKU-7E6)(_S:#+"^?V@L_A2F#?L'>9!MRH?AB!W2"-U>6:@8;)\K Z M_'@9X1 1-9S7V,3:FE0&"#6^PJ$_B0T*N,^-@^2+_I(&9, MW%)13+Z@*? &D-PDT %?9]K]AP$:@I+VF^LIRGIP4>Z@3N-&L;-!W.&!.)ED M2N-:<;H#^M;0YZ4=;=F1];"R,8@Y=RQJG([)F:*\*CPM:B*^T!"G*)ZAJ](, M]V0>YHR=LFXN$AL#$H["1IX7Y(H;V-EWFF*,Z!=6<&3Y:1?H; @C9[D M89+PEI0F<[NA)Y1D,SV]%:'/UZ:)CCCB9V!)6^1=)(05@Q'[1ODKZP=U0F6T MQ"W'E3F!YX]PSAT>V'B<'9!NG>MIG*3X%?H(44:*8$R#,5UAR3*0XFSP8ASN MHN>"F_B,HDY_&[B2W OC2D#*1I05#(4C+=.((XI@">ML*/8N0RP M+,$Q@6.*UJ-K%>?K!#[/0<358(D!T.[LQM"/>JWVU@-YSJYQ K@9\,>>8@I$ MA5J/1_&)XBP:;CF3BN=G U:06O ^X@-#'MEL#\F<'X]+TT-P>'0,\19VCR]@ MB1@,XI2A1C%MXT@VZ*+T((-.Y*2VYUXQZ)7,GY M@/DQK@HMA#D2C]!2F0=.],CEZHG*/# C$SD%R5FU2M)!N6X?BW.3V<@Q3,2< MF8M[:3@45U%,W,R,7 R7S&74,G7(8Z+,4&J.GP*IX,QM8A*AY?E$C(N2!".- MJ$?@EGG*LQX9R3XNEQYQ.#Q>$63DO!YM2[-4[0#L"AT*TEDL+S$WPKH^%,O4 M 5G+7#"+"EF)\,)TTF>C32&S#1[3TFAV,C&2$0Z*I?RLY4B2$Q-4<\68!5,0 MU3T.,X^71J>Q?SFP@XF'08R0F\E)9JX:_O1+D*-LX\C,8(#*!B'GJ4VEP ,^ MUKD*<#;[7^4@)5+_Y74 2JH9;GP"9^P=5KQ#?&F]5^4EPDGTPA 1]Y3T*PZ@ MH43&-WD'6LX4A1/L B,+;'('G7Y@Y];-Y9Y0V@>B#EGE-L/*R3IQ5,],$L!B M8)*&F:J3S.K-@!"3 *F4D@7G? I*C!!H0N-IDJ9*Y9A,../\1&$8P'=M-JJ#Y@NJ^,+M= MAZ-I.W,:+9*Z&EQ861EUR20 .-D/.K\RFR*A8 LG2:D;RQ[K!7QN"WLSN6;& M&X,[<0X*,'7>B5_U#E#^?A6XH(I^M'FB.K?%08[6X1.S*AGK!"D*EY.&I!4D MW@5==8*O!5 B[,Q MB\)/SY?%J:P$=WD( HV3-_4X9C\3\F*VL,R@%T:A[XLQH40RDG)&A@>POYG2 MJ(9C5-T=#K/,5\(.54-<,J!S!TS&?%9)B.-+_<%UY[J;)7Z&',I'8+&ZCUI" M7^5^LZX&)X F%OE4G&1=E0#DY&IE,!XVG,FB!4T_&E]E\LZ3%+: B@"-B;ZR M:JO"V&0 ZIM2.]31."KH8"R""9L<2 174BC/J&6)GG B*#L#QI.Q9S$5:;:B; M7'][U--@-MBE)^("=%BE"-D=?^S%G.>@'2 292 MXN8S9('6-( N".DK6L-+F\M>,:8'L5AC^[_BDR0PJ7SU&SLFF$'&\]YI+R'G M:G-89AGU9UV1E)>)-T5I0JG>!@L,9N@E.+F(>L8Q"VX_-2KWJG/&>660Z#]+IA<06AJ%2:1 M;Y3T1%M)5K2KR=LVRI8]Q:$7HN,Q7R-]/D:*UH\5R6S((ROM:X.?7>8+SC,' M"YQL4R-G=#T(%I ,%-:1%ND25&(I"E_,O@2'MK)5+8X9G5AI:BU[3^$G9_]R MP./&(H?VFE6]'KUW4V*@[3(&6L9 -RH&^H<(4_3$-NL5.WN>A\X3Y[F\1-?= M[%8>E)$^3MQJ7@89;H5!,!5(,<8O1:[ ..&??^I66QZ 9*SC23_5 =GT-^C1 M2Z9J M%B&%02\CY=H:EJIL!VD?1R8^R.6T.9M7X6^4XCFZ;;:F,Y834,415=+0UI(L MJ&"6I=KS@ [LQ)XKXJT8'K0,G;=8-6\A= \:I4Z+HD@6J^8F:P#O@6)B:D;Y4T70$!("$2S]= MM5\K_,K]LL5F@,I0TF50E,HTRO%P"=P"!FC5.B.@# H2SZ$C'5D:9ZP:QV5. M_J4%A\T)O"%"T*#R7,D02>)::/ V]N"8,)@I.H4OAZ(?4_#"ANJH!,?B(Z!Y MC &Y&P^Q"!@Y8TR,9:48@C">*5,V;@IK#9'0?8GB&0/T=VB5V[S'7\PAO0YXV M'H='IO>";NFT[SHN$(S4J \(?C"BZN:8^@8Q=@&R$LGJ6-H=I#'>6]$$UI?LNK11?F.F? FCZ['T+V7%M6(\6!@8 ^CX M&PG?!9)EK<*\_U8PJ0@56K2,L0ZCLJQ7H;KAJ??C7U&X@FVZT8!0V[Q.#HFI M)(SU:2A;0)=E6NFB?<\:4@HM$U44")23Z6O C@7U,RZ06C12V"+V,_&;('9D M<\;R\KA5MOZ_H@CMXR6.\-G-5)6,*2.YO]FRH)C*SKL> X*(*<&:[@-(# 9'*A'[LO MC>>;&08I:J#C!LF(7CLCKHB_\%*U8T@X3QYC"2SK-+,I)E#$:%]B>3@PV*JW MGTGEX A7HOF^:EVAI!2[?L5:PY3%(=@S2@2X!#BN3KIX"3R0]9+Y5[CZ M"?E)X-"3.=_(M8KA:_>"X^U0Q+VB-"1/ZRB,@MICHH?C Q%*&6QX9$O"/A4K$' G7-B'5R[ISM1"EF[67TA2),Z',YQ&P^8)NX[YVK2"7"R@U"9UW M+"D!I@95C_%Y@'0@,K*Q!$1V3EZ8W[FD' !#.KD8Y>5'?L@W"=AJB-Q)DE/R MPFC(^G5A1/R/)0TI?PF">][_KFP#U_5NW$;+/.D@6JF*W_6,NTFL;D\>BU^+ M2%7)ZB4JT4=%853T!4,LYA$30(U+5EQT_DA@DU.THI/QM3E):AEW&#L7@?VN M*@E?2&NSM?1%H?V5?2<^Z9"'IV:KGHNOWHER6SQZTZA[L;#$]';*&+YX"LBZ M&K6WI\"V18SR!8YOSVG;@)O:!?H BJ=+ZV\])\.&]+>ZL9U1MR$"472WVI"N MZ+#B >=D-6KU'87?FIDXZ;(J.59[>"TOT_@5PN8EI[S .X9H?*E,08QR&Z/% MY)0%(6M\E J@RV%Q^_^@L-.UL9FL#P=&;FN+ K7KOA/.6N11C6@F=@V.19IW<;@S" 9#3IZ8/[(HR *WW"GE=?I C")>T M]]))>PX0"YL3_XE="2J,APES[ ;(=DJR/@L'6-K7F;#>.<$$ ;"Q@+ENC8,O M%M[ BJ\PI_60@AHE$ ];R N]:"?D -[SR8<3> MT$10JC4E6 A$NUJ MP[J>L9S#H <1OU&X?JI9K[7#F) AF,*;RO+3R#L&AV\MA>?"@=K=LBN1SP/1 M'XG#9;&,L-AT"WT@JM>+)4O:?KM:,YO:E&#>=AG,*X-Y&Q#,V\ZD MZJU9'R MXL9;!/SLLU?)YEDXJJ[TJ4=;IFL?.G=9G[&<:3]W*HZV-"31#&_3RAMK MQ]S=\:YOG'MA5[\ .)1Y_E%T):EN@#7#0_>-C3ISWL/3,Q#024J68T+BW91] M>.*20,'"67%1,#/$)2BCOFT-ERD%S08*YH2/D9BZG9Q4>Z;,/UKB1SHQ7N U M.?JILR0:#.18'*/\G2G?-ZLHY PP2B[N"!.8 W1PL9P$V426+'L )#QC)*ER MZIE5S.UY5Y2KI_!NU$(9:.1/B/EP/PHZQ@:'R/A$N%,9YM1C>OQL-M9^2[=' M*!_YO!9$\>:O9 2 $/^I4]VQ(KY/3GXSA$BGJB*N96]K-7XV/D&JK=$!7W6\ M/O'Q5^^C(!S:./>-H'REU+>WE!Z3*E%WTL'N=JVN^WFN*E<[54PJ:)[9J!TY M;HYYAKS:.S^;"+E2CHEE6L"TZ"E1'PT!YG=!F*0Q16.H=>V-+1XBSNT8D7IG M3MKEM8ZXHO5%]0)4\!9G"[:6BUE%]D6QXU?Z_/;D4!)O1;=8S[;+_F";.1?) M\7<\KREDBQ"X.&$AHTGI.@D9AK[>,6*!:A!^FUQH5)L6R\]5S1I7@6CNXS[6 ME/A3Z,C)R?E6QZ*I;U"\2-=7Z#[Q VGVH!J.6T^"-I"=.,%"1U?D#O:]2SLT M3],8V^H4QYWMMJS6B3)<.)#GF5 J&.Y+-7#P5)L#T]UW$35,5(/\4; N54\@ MP)B/@\0/"*);_9LM][/.Z49\546FRC&##UA &)/.XN9@Y PWF I0 (^./S@N M5'7LGZI_5KV7'*6QT1[W%,F!0KN!'4?7*NJ<)C(C!T%IPJB@BO.X??CM4^%Q MSM-?54SO7-L8F/)@<%T%6-S D,]&*]4Q6,TWY 6J12VFX8!2@$K]QLF/A@DLZ! M[0AGL[/1,K//SM$)E9LYPSX,T^#(+F7@ $CVYKQ: MC1J87GGKS5$L.]6ZR<)$[=?-&=";R]^-?@K6;ZF< [P0,!@?W#O9-7%FVYI_^5/&:5SG;:58\OD;U7TA)=T3=1Y #AYQLB,D+=?2@,)PYK'DQ9PS@' 1NH4*A1(WINN(?<\[)1<8O! M\Q[<7&NI81.)YQJRIR&744B>,X&55&1FL.$?RFPS#NT6UXYJ4A6-4\+4" 'F M*S1QW;K8RX#"8T[/&L58W$$,9M64\FE6IP;8F-Q/EW R#&P.J&[4>[$"3:$K MJDH&Z9E8GE(OHA\7:M/9M$D5X&MY18@+H8,C(#$22FS8$!\ M-FM2UDPZ,T8ALP24(PP <9R&1:K+ALJN[)WNG^&H%NP@E9$(?/#H.]=1+4JA M5#Q!]4+!O%V,$JM9#^;GGYJ?F M3K4]I]G;Q:L.7>B",WX::KV@X8WO21.=N8.O=E_EJFB"8V@VE1+%=$J"1!OM MI*3AT_'>1OWG"F4ND?\ UQ20L0/+0E40+B7 .0_,W#X"[-6C$>:#8=B>/U>K M4+NJV BD0J/: ML3X_EFQ7TL]ZX:1.HK5%JKB%D8JG67<5K8:\L!F5E;>EMUP20VV%;U80C"+D1L8L9#)>ET]N$2-*V$#1%&6:PXH6#NY'P;!59FH>@&S MHCS%N2_Y$=8\, +QK&J-'$6TCC7F>*RR1H5#'!G[8EY%R:;SWV)_HG<)@>"^ MW6'@V5EQ3OG0$M_%Q@1C.V4PM@S&;D P]DZ.UT<<_'DJ!YR2F*;S __7% M16O8V!;UG>9%O=]I7;2:@_:%Z._4+^K=[59?-&K=>K_Y@A&3[S@\W__8Z?W[ M4^_H_/"\=W[XUW[O: \^?E"?]@[/=C\7;OY^_'M7N=7M5SE^_! M^CUG Y[> 6E1[XX_G7L?>Z=_[I][IX=G?U8-XB@ _C[^LM-I-SO=3OMQMWP? MXE-EELQP5/8]XD@?34^)FKH*XBP."]2^/EV?@ZH"M>QS3/?A&/THMLV/CA*3 M#I[HK@?SD8B*SNL+(ZJ_T!,-01#%T37I5&SI.-FCZ-J(8[2\E(M':[WO1/C% M>YEH*NI^6VCAE5:(M5*&\47L<,1VO%"S\#"*"V93.K%KS80!:S8]S-/M5:RO M (EP3+%[$Y.AIQJHP0UGQP>GWG0,JAF(O9\+8]$O>!KA$%W/4C9$RWD)?L!E MS<[X0C2W38TAC4GD)C#V2 )R*O$9#WF$'.)&A3*D5<:CT^I5A6*43DEN-/D5 MOS(MO^,OH#$BXA8&EM0W"L AR"+.3YBA^*S2P#&2P-Y-;GLC$D09F&QK;; MY<&8<'-[&HJ!4V'[TX[S%N.-7;GG^0?8_!D"1[M:_QE>&GGP'5JS>IZ/+3#2 MG?"';@-:JJVCH:;SL)KWXB'@YM%;PP&(>B&,K9*(U3GDBBYB/VY'I&&$OCQ$ MH]'-%%F'&G4[-3/.INQXL8\7OHX]"A6P(_2!%X-U'??R9', MX]#@4NP-K8P!6R=9\ZYF1P4IVV[1II[%^JV:6:KA1V:8T/R(HDB/(FK6JUTP M3AU=>6[ND&,4.0]'G!O"6;\9!;XO0_-Y"Z<4C\[!6SOJK=9SPY9^>+AU@>WJV'UZENM\OC6]?C>V:V M69Y>R3E_V,,K.>NMZ>@W8PG.:Y.7QF0''V>G1]SS' M6UTK3YT*<2=X?CL$'U7@;":L!M$8O_SU1>/%M[+ZG6IK/0"W,E"LLW)?[JGQ M*Z_0P6IBOR5NE;A5XM8FX5:C":M;"\"MPJTC.?/R\2N+7KB1++K7/Q]=7W:QFF MSN'-OP8#*8?# BD6V_3:3U.O6:MQCP-OBBI$<@?ZFL^=*/1&B^.&H9C;&L#J MIX?8*X>HBK!;ATM0CM?<]ILK4<7=X!08 VWQQ6]>O59I;[E+&HDTGAP[_<:P*N@I(7ASB) [PEH2T4'B[#;IY1:WZ#;%N?TC2+;^'Y% MMCB[*A(#6)DI]@,#YK8LK'7B#)U*K=72:LM&G"*B4BW M9.S]N"1V:S;<.I%8O@C;6+]MO?3;EMZE#*QT_*=T,=W"*9J5=J-1.IA*ZBJI M:WU4W36 5T'I:TT:G$H95W<386 U=IXJKZ1T5#(Z,&UY;6'5TF:Q8?5VI!FH=3L-8!7,=%M M79S(10#6^OB?'U9L;HH'^@$JXHJSK^*012']8P\=U=T0"N="@=*/7-+)#T(G MA=)2BP:<@I))$9W!#YW$L%ZH<&]Y0BKC:YKM\0QSC18GKIE!M'9PBII(USO9 MI9$L./;$&2=&8V*'0_A$XU1FL0B3,8_.IJ$M.>.$] SN81Q-:.+V, T':H@O MS1D.!S?>R_TTCI)7/'**YYO1S'2<5V2NH9DX:F;**Y[UD[<6G*(3\PS@RQ!' ML],;M_$"]6SWQF ;YT![5'%C$$3/PR!V18V<2PJ]Z.FYAIFZI27C(2ANU MMZ=!\L4[ $!'<4)?U=_B1"2-L#0.F$;Z]'C,T"EA$(_#.H1=>O7>*S7&[DKJ M&=S^W"!&@BZ-S%-X. R^PD73.!@0DF45IH=:FX>3._&>4<^#F\:!CQL?7V071/*B25XB'%4)$]7R%ALE@)/UTC'"68Z"S.. Q6Q,Q& %J (G0_?^D MP931$%ONX.RF&YP&!XO4RP9#5<;P"EANA%.B)$XNY!9YYF4,4WCZ&$X@QIG8 M.'YP%N#D]UA,Z-,(.%@ P =W M3\PAE!(PJ3C#L3\OL.WYH8^,4SRJ/II,(IRJ3G#4@ZJ2F90T[AI'4A.\IE,9 MX_\CT'$D&!S;,)7C*FL O3$.L+JDX>MBAF/PZ+TTL0S%0CSQ_DEY^!F* <0N M1/MQ0(<*-UW*D":/W0"#IQ&$@# L>];.ZN&P".?-'M1Z=M4W-XIT MF:9Q/"91/XAP/0(M7#%.TT^E%GK$![;X82%.M).,QN&-PUB96FBFO ,$Q6IX M$A^@XR"8SK,$?J[=) Z(E/AS9VC"+B,.D9GHJ@A*QI5 MGIHAZ@&S1QP.R5QZ8:8ZGN 5,H%DA P0 !]$OGKY1/P=+66_X5U&MIMU3P S M+G$JFYEC2;!AG.@CBD0#.[Z=7HR8H\2!90Z(\]D-,0HG[O1WD*( _.F(SQ'D MA&9AK+# AV$PTRQ%G29J#X"5?T?]!/ S(?S'$?/$"D'4HU@>ID@<1#TTRX]@ M%0R\RW'41_TBC=48OS *MP"= U_-^LNL. .!1+&L#9C!WBUGL#NV:3F#?0UG ML,-[CX$7..*'1%4?59W!"$2C#"]9,^(IK./QUC3M@U5")HYA \S[1ZBF@&H; MIU-Z%LBD43!&YA:*2Z/Q6VUW?L(G_I*G^1B]K3+'%UF@6%'@*$;$N(,PE4K4 MP'TQRYH^]KH$I1.8?V*L350Q9!RB;$'=EK1(=U2')5](4),^F#N$.$Q[6#PHO[X0FW"TMT .\."T;E)@!3 \5_9I"[J/?[V\VNN!CL"'G1JC?] MBYUFHW.QW1 [7=%L^=W6XB#W[L'A4>]H][#WX>R\!Y_WC\[/>D=[9Y].3C[0 MI][I?]1-!? TW#[;O0MR7^_(LUNB$>^937E[O?.>G>7^3+1Z)EFC.PQ]^55K MB;NN<7U@C/\SQQD"ZBO.)&ZW5QBM&>1HB'ZKWMYN7&RWM^L7K6Z[=2&ZS>[% MH-D0W59#-CJ#Q@)R[.S^WCMZOW^& -W;.SSKO3_=9WA^/CS_O;>[>_SI:)V0 M8Z?JJ1UYAT>$$IE->;@KC[=UWL,OCH_TQ\.C]W@#X_7!\]NET M_]G1[ BLU PZU%NU5ML7]8NVK TN6GZ_?R%:LGW1Z@S]9L[^'FSN[*+>;#7KC;5"A!Y@@MH+X8'=S?.>U=Q.>K.90-\' M^FKDUU'01\\G<8E\-Q5)/C.+G"2',@YV1X$<>OM?P90F*^%X")> K'VI_&*[ M^\?*'?:*)#%?;YG/PO4'YGKM\&0'(LEE[2P%Y9:&9Y,V<)J"ZE!OBJUZ2ZL- M^U]Y#'BGCF,U0;29G@8AW"KZ.= #%J-F]C)MYCRXBV$ 4AS-XXH#2:QS_YA9XL%Q-1\-5H"$(;04A)J8 C6F,-BS>#-96 M=$T[1JL+MIH0=[1LVIR7I8ZJAP;X/RD@F$0GGKR5C1@AMD"H"<;=W"C#/66! M$XM,)* \;,NN"&.82!7P7T(.SMY#ICY-XVFD/(\ CZO MVY-8_DKT< HC,\G M3RR05U\"T K#XM^1-SL*LZJ !7-EGL;988(Z!(?V<(.5[V);_(J\D[^&.RTG M1HQC<$M+ 9(I@-2H>[,+ERT8WO$(Q*_<24#\%:,Z&"=Q=L'&X=^++P4S9=1U ML@%E'?NFUSJMGUQ+Y_[4/7,,'.5)? MXN6@L,!3UD5?^6C@8CBP,@L \(>:9>RZ+,/J]Z>:911)BSG.\&Y&7 QM)P'2 M!7(JF6 :3)",\+CPZ"?HTH/_T6[Z1JS_;6[1E),QO!<[UIA(Y?N:"T$)]Y M&;Q"VB"'K;)W"+@RI$60 Q.7E&BVY$+,EW#?F(2S$CJD!H@ B1'LJ#&%E)&A MS.>] _3SG3#<@'^P/LVSPZ&4\ M"69W.J><$Q$I0!7XIS6\'=SEK<&;*=]B?B?X*^SFMNU8[)N2\YA7&%L%968S M6=)0KP&DB*Q0;MI">6Y#A'PKP3GH(![XM7"K M;DJH<*<,%9:APO4.% M@I8*]Z'R7$&C0]DA]$YZ_2 .B+M8Z6[MRT:MWO1^"7+.+YC!1@=OU?P[1]51 M^>;X]67,,9583"1&[7YY'?P&:D626AT6,I@_II3E^%5$$ZP'+@E1A#Z"+>,'HP%1UAD*'&6"PP?'94*>" KE7P> @MI?X6&>'!NT M)K/V7JH]*DB@X8424V]M$A.;R-& LJ?7Q-CK 7P3)F1CY0U-*%F''$YMR.&$ M0PX]2_,'03PIDK5G,_$=YO80$HAX &7 $'XRKW^@B,WU*&+WI7[T0G;\$O-! M,202:TN\1K!JND4+O\#Z?U7$;3I%ED/DQQF U;@%?N_BRY>@(-?B>B[BMZ# M11]&H2(N1Y%F)"9_]:Y8^U)@G !^X9,^);N99R8WP).!]8:$@8C8 MH^B:4AEM#,FJS(C# Q$:I2P*R0.E-;,*;5'T@56F,UE9\!W9H(%ZKP%C1'41 M&J+1K=+LEUK/> M!Y0;!JR8F8@&/;?/=P1<_J(-3.6^"V*=KWV0QO@NL+XDE_LHU2'0J#YV4!UU M1L<.X&TD!/ZL"6.6XH);0W8>L&@M.<5L7")!)X_80&?.8,7C(=[&535BEED- MV6Z,*UCAP<5$J!WC RI4815BT8*-8"AJ<-)B&?6P].:@#A)N3<07DL( BSX>,FC2-^H$X1YR]?C1="'A/ ": ^(51M(T43@2@ ]>'\^EC< M,1ZGIFCM.J(W83K'5$94L@&?X3(WW1CU+R+B-,>6;YCC@^C6:J^$*]&Q,< I6( M?<)IRMH9@>]:0HU9E1K+N/AI.HHW5^2E*G>.D7&C7[GBL!AQ@SB*6 0<70=7 M'*P=6%W-KE5S=WB;LEX5)?KR,F8;D;*' FN3FK@$E^ZIL$0F@7$PE'Y]N#.\ MD,-FYZ)5E[4+T6H/+AH[ ]&0C5:WL=U=3&!\=WS^^_[IX='!\>G'WOGA\='% M3GVG6>NN5>[B.S@=W(;G[./9,TSWK-:Y6MTDP:'] *0WJ,S"; @B3RGVZMN@ M$Z]2@G\)OKX)H_ HG<"N!H2YL.Y3=/[NI8Q]%_7Z1?T"5M*\.(_@KR9]:%V< M[GW<;\^Z[S_6CFN7^Z=7@UITN?WO%Q['KG]]$7S%8XC&4H1#H%/YP@O%!, L M!_X;7%R]UF_7>W'<\Z,I4//!6%R^(,0[$G%\\=_AM/OG[F'O'MVPGWVQ_^V_GG_XZ^?/YO.-D/3^*= MB];UB]_8O2+R=H1G6H#C.8\GX6Q^.TT9G+Z3?Z;_^1)<_C4^/PX._[IZ!]MA MI(,[M^K>_(9 *R.]F:J#+W5>?E&.+7>;!Z/TO_]WM?V?H_WTKT9/_A[OBNT_ M8)M8Z^=L=>'HZ=[A MT7M@AON'[]>K(&&WZI0)>&8KGMJ+]\>GT\.SO<-=Y/%GWOGOO7/OY'3_K_VC M<^#^9R?[_,.S<_\CM*%L'A1:NSTVQM/QG' MR]+,/?UHN&8/%FUXE67G]=K>X2GPLN/3L_W_W=_]='[XU_[QP<'A[OXIEAKM M'I^>'#\76[^OMQ#9.M"59W94\/+TIJCFB;9WVSO>]]\=_[9]BV=CS5XH= MYF67ZM36 ,6Z=G9A5Z!X&G%$O7^3K8Y!9R YE\%._7IC2Q>=A&13$@9\ZAE73KU1\WQL$4.KWJ()V[Y$?'KV]')A,/6X8[[.5+LHB'+ABXQ\6_S'GW6YU::Z>Q?5'O#&L7 MK1W0,46S+2^:#=&JU6N-[4Y.472]<0; .ST\_\_QYR,@U]\/3XX/@&[/>X=' M[_:/]H&(#Y_T\&OW.?P&';*W\DJ]/\]L$'B3I[;HZ3WV/JC?B5]][!WUWE.E M;(4^G^Y_ .:UYYV!Q/WS]^,/>_NG<,WY.5S_C&SLGO2R#U@YH_R=J0P31M63 ML7/ M>3AZQ8=P)+IQI_Y,K1S?L,9_#1"X5=,VO^NPR5M4NI_,/,HP[QP5FNZ\1ZM2 M:S8]S'>>S+U&!-UFP3PY#)YF>M2SCX!8\(T_"QQN4\>_ M&P[=;P'#*@?,43KI<_;'F?%!&(=+B119. RB,7[YZXO&BV]'D%9]O3#D,WV2 MOM?#DK1+S/F1\2!(9(DF#ST=\W%GISP#[RA%9XG^&RLZ#]$UCTYV=LT?IS/= M>*_DC*4 =3(O:/ !<,D20TK9J9'B5$Y4FZ3>E0C&0G54*L7G1E SZ]9_/?! MY*0*Z"KG2WWZU:-B8T]G0*X3*1QS3'NC6>*=$.+!I&.)'1N('=\C&9\9(;[G M_ ^X7*YW+;#7':%!DF971>_!])6%VS,'@5YHG<^1(T9?_/:RCL,^T^GW26"; ME?[F7UAQ.!P^.KYEH+DLI2KQ>MA=]\KI%XK90C@/3,8 V5RH=JKM>7R^'8R- M!3!^)[T^ TA7ZSD/+[O[T*I>$6#UW-8. M)3 4#A _/8RXP@R (NSM@0FBU:KNM#>>&!Y:;RG _AX8#]JM9J76[>1/%5\G M6W^YGH'EB*MTC?75XQ]5"7@^'?U)$%_U 5U[UT\QA'_1D.71I "I T7;;4D: M3Z\*_* XL!X>B-M*Q?%_V_3"\V@FQ@^G A1KKT_B&LA20A,HP8]2C!]M"BF4 MOH-G\!T4#ZN>T+E0O,V7WH<"J!P_(**L=$^\IJ+B3/K_-V\&4,A$+C0\,5;D M-FJ!_U1;/S#J:]@YT-31&5K4UEC<1.GLS3#X*OV\6G<'F+K[$:-+5NG\ MUK5S!"E/95U*?-T%XJ'(7):BYZAKH>SC6\','_%!*[L5G4HU3I='A80F%389 MB5BJWL"V)A];"LOX2A7UJQ:@_(N@R*;;"QJNG<4!-6?A2](PF*GKJIXAS06R M+)'P<9&P430D-$[6*?E=W2;)\UW'R?_*_MGJ<@S*[SJ6[9:U]]?%QT:G\X(; ML##[>[8V(U:ZG6>H,-"YN98&)&XKAG M[)U)B8YXZ=7K^N+[S:?(- 6BCI)=?-$)PN#PD-_)DS.:V'NT>GO0^]'9WCS\= MG?>.S@_V]Q&GSO9/_SKF8@2]>/X0-2IN:-T%Q M>?>V0\5M=FCP(&MU^(T:[IK+;^P0>R-A$QSL^N36\!OO^$[#_V;1I<39,79N MIA[K9P8>WF,&(<_>QM:WM[]9#W>U\W'N,5LQUDUZ1:(FZ%@+;&YVX0H+OR3< M9R3EJV Z) (OGH> M175$FE_4K*[L<5"T1]'@R\Y/0L9%CK?)9,=UH]!@M[FTU=RQ#N*JDY-]<-3[K)S MFL4BA.7&EET_W5G=4G3]"+!0%+Q)2+MGXWI9!'H0BK?)S!ER1]WSKF S#O!& ML]K<>:9D3N?.Z=U;CWXO[CFIX+>(SQ\.(%E*O \^K1FX[E,PL$K1?"XR@B7= M(8-S/3"]<9^SN]MV;]4)GV2_0K]D*Y&#+:#!6 QF;Y19F'%(_+]_TFCV]M;W M\V5O7ZCPUV@VFR9O7K^^OKZNPANJE]'5ZUX\&(&.FKR6_J6(7_MB)EZ#^MG> MJ;\&XJW7:ZUM^'NGUJAM=^NO17UGJUFK-VH7=?FUZ=>KH]GD 5*T;C65=_'@ MAG!T,PK"'9H@LYX%)"8TF;GJ_)0SP4VK:7#:.N?EE%S1H#[-3%97-N\F"KT# M6(97KVW]J:QR^*HWC8,Q?(=CA^H[U85HX'V+C(K(,Y;07_OAR:_ W.81=EL, M9O,PVUUW'&]6&YN"J:5#[K-;KTEOUXUKQM/)1/? MW8S%=7)GB==X&(G71HE7*R5>*?'6CHV4$@]?TEIO/-U(S"R@@&/##UA]:[O9 MW7X]FP"$Z[6=;;]^(;^VGDK&[67+'7)$EQV2<$=)V'H8.=BB@;.U4@Z6K=K6:MT;JH^W)8;XFGDH2]^%*$ M%11Q570YUIVZ1._EJ83#YW0AD)(9WV3WU2UR<8DHG"_O,?)/)S."".SAYX_B MQNOPJUQA^)"MCU7CXP=[8/^[.E(7D9F5 KL4V#^ P"Y]M<^/JX47V.UVM]FI M-9JU6J?9WGXM+K]N83E];;M1^_J<,KM1> M+M/I?!3$OM?C=":J;3V55.;F>_N3Z3BZ(3G8NXPE2<2*QS5Q1]&5I#9-'*"M M[U10Q.+M8A*%E]Y[.9D([R2ZADO.J% VJ7@?/NQ6W%]85:GD7>SM N(,HS@, M1-Y5OXMX!K_ZF6>>RE!>4PV2>OK\^[SCJ>0<+EX,K?=S,!X'8N(=5+WW +AA M !K4'_$=G?OHU%NA3OP[A77*>'R3X^+_MU4N]N1 3,GOZM4*8HA9 O,ITN5 M8M-5BC4/HI/K\!ORFTVCJ_ ;0$YJUKT^K M$QP$<3+C6,5$VO$)N:K"720XYR8TR8!NU#=>AG,)0=V1X-7-86^E""]%^ \@ MPCN;@JJE"'^6%,5FO>6D*#9KVT\LPL_D( K]!Y3A'P5LW=OF5+P-%^&XT^YB MTN'F,+A2B)="_ <0XMU-0=4U%N*%E]G&$=]H=.I-;J*>)!F M.#@#9U'*,.$V^5A2 (+0CZ9*Z"V/V\OA4 ZP+7&F(&!;N9/O+#T[>OS@]Y71 MUQ?=V&6PO!A"JL!\KA3)MXMD/05@ T;M-_Q<.JURU-[WC-IS0 ;L70UA M+B=EE),RRDD9Y:2,:]:?.(9K@[>@5%&CF2T3VUSF!_:6 M^Y&?I]1Z9[&?:ND(+H9KM, ,KG0$;WILME[;%%PMA?&C"V,0O\U.=T<+XT:M M6W_JA*I3.0MBF5]LK0*NZ66:@/SD'*F&*;CNR]FUE.%"LM2I &R+O=^KWKLH M2>085O= ,OHN64YZM9SGU"CE<_$D5H%Y7BF?-UH^ESA>XOBFXSC*T')0P/,C MZQKIH*U&MVUUT(YV"!6BX<^9G,[8X]*]H_ZY)ZX"']7/SV*61/=0/1^@J\[" M:DO]LWC2JL#\KI3-&R^;RYD SX^LZR^;F^LIFT^#P4C$))WW)*SS[L*Y60KG M4CAOW&Y+X5P<'*^WR@%[QEX;J_+Q[M$W1?4.+25A*0G7C;^4DI D8;/TCA8 5Y]6]"G!U=*"J_ET M>>E@T"5H:('4>H]"QSL?17$X XGRX<,)&G^^G&(#3;+%4#))+ X[2?OC8.#U M!H,H#6< ?>\@B">/%><399ROE&1%X@ZE)+L#&)KU4I(5 %>?59(UZT\HR1#0 M0P U52RCKW+_&(RM?](@9L/K#!V6\%.SUM!&VIF(^R*4R=;QU[&\ 7E&@K!1 MJSU:SDHIRTI95BC^4,JRN\FR,I;W_+CZW++LR2HU%F7902G+UH?=K3>#*&79 M9LNR1FF7%0!7GU>6-0IHE^W4MDM95CAVM]X,HI1EFR[+2KOL^7'UN659\>RR M8LHR_7SUJ"8-BWBQMM1?2KA2PFVZA-OIE-9: 7#U627<3N?IK+63:!P,L,#[ M4L0(1LPZ%%R7'L68>#B4P2R-N1A C6O-M I^B8?9J+W='8MK',#D\1/IV_K; M5X\F\KRR'+P4<,5B&J6 NU.OEGKU\.CL#N7 Y$F\)A9XM';9N(R\03('BS[\G$,^74P&YEG MX'KY0OV^ZN:0R6,SQW4BKN>3#6N]^74G 9049[N_;Q@R/RGZMK:KM9VGW[#+ MF\_%URB,)C?>_M<9& UH,IP-1G(B2F9=,NN-P/:271MVO=O[L&'HO/G:QBW, M>E>,!^F8?3T?@O!+7R2R9-TEZ]X S"\9MV'<'WKO-@R9-Q]]^W#E3/-\J5A^4'(=^/? U@63F+V,9E%M7-, M/!#UK^:EP.L9/N^W7_S@ZKLAT*CB/GG+6_UH-HLFM/,)?'2 (B=OIU%"PNE- M+-%K?Z51E)(J7V16@^F:EW&4AO[6(!I'\9M_U>@_;_43IU]S'D>)F=5M>!4_ MN-&NPI/[4>S+^$T8A=*35O!J^]S6\6/_[%!CQ4KSZ?_^J;]?>+OY[ M0$TT1S*6>/9\;$].D]>C8":WX)N!?#.-Y=9U+-20(P_^\U&$@,N40X4(A_B, M^;@#G7D;Q3?>=(SMNMV?11R+D&^KNH0MO,#_]<4%H("4_7KGPN]O;U^TAMO^ MA6@UNA?#6F.[W^UTFK(N7U"JKKKC\'S_8WW[X/CT8[WVY]FGCQ][I_]1%SP2 MO&9 =(K?_)TFLV!XHT&HF4K7,I9^9@TJL[D?C7W4X6#I7GV[ZN'JN7>JV@! MIO_;DYWY$1#$XV%8H^N\;1X\+K8M6:3+2NXJ)(B"'2XR&$L1 ]AGH[F'-O&I M6>;S^%@SD,C^-50:+4>-8+!L>>VFM^5LA?[]GSOQ16>KZO4-$GZ7K73?JKSF\/AIJ,\"%4B M\:_SX]U<#17_7EGA<$Y2G6<9@$"?)0N]DE=B=!;V>2!5W'5GV)+;PT[_HBTZ MC8M6JRTON@-@L3O;]?K.L-O:Z;=$AKN>';X_ZIU_.MT_N]BNM=K-SI.QUBR1 MW(&;VJ4^-O.\;97?H-8^N:A:Y,6'H2<& ^ !E!Y-&J>N'*TW47+7VR_]5Z:" M5 [2&/ ,UK?_=3!"D:[+2.L[S59EKF^X-P*-UD_'-Q[E3_OP2W(Z[L^I%[=V;GM,0 11,-?7S1>W.61K>ZSUZBL8@*]T_>] MHXIW>+1K5:@[&OPE^+_1 >.>P,/Z8.YX),3(ZD]KS*O9!G6:;7 77\R=,2.[ MFSLC6^/.CWP: +V[>7-?J+3:6@G5ZGD=70I>$HT#W],*;G&V^$N0H^8%,]C9 M 'Y]G;Q>F'G\R^M@#7C2=V+;^KH/%[#Q>3>XB#TEYI284SB"'P:W;X["N30.PA"4/$#,?:.AT.X(JYXY[$421K+F":U[^K90*CEQW(F MXA+U2M2[JT_[) X NZ: 7LXH#D2K!;Q[M2084=1S*("1?I+&28KVM)K,I?H\ MH3<]N8=I;FUOM,O[4H;:_.[+<72MS>XA6,O1-9[?%,SO*$S0.E>6N7J98^+C M&:O"YX&8B@$O ;^-^%L?6$H"E_C8K&JSS'5L^M8IO/;Z/>ZU(S&169/ZKDRW MUET%&,0=(+'8GF$A5/M5H%@6L_L6\&P^XIP'L_&W8LYVB3G+,:=N@S8;B3A[ M("2^RXFG:.N!W2RUI2ZX;WSD/9997-WHWG3]L" D6M@ "'X;AJ\Y$[C5C;8G MK@)R@WP6,U!#LUZTYU%#[DO=ZR;&C-> /0+D.-C_"I8%Y:P9Q\$>&!^#610_ MMVR_)Z=8@].XA6B6Q1\>4D0^W^X6"/Y;B/V[_47/!9QE_I0%^GOUD*+W@<0M M/>9AL?!!E+-U._=G5,*>'Q,V7:'Y'(S'@9AX!U7O@PPF7]+16,9%4&LV K?7 M5.7:'8D@AL=HU^J["(-_\$$K65O*[D=:5S0BS!-9>C/S"4H4I59A2A;GW[O*(N=1@?DBY M56HP)2;\&!J,D_;['MXX# J1A5!J,*4&4VHPWY/#;XBYU&!^2+E5:C E)OP8 M&LP?T2CT3JO>'W(XC.5-J;Z4ZDNIOA23*=^RNP5*+G67'U)BE;I+B0D_AN[R M4821]V<4C*=@N8F@U%U*W:7478K)E&_9W0(EE[K+#RFQ2MVEQ(0?0W?!0'G5 MVQV)R13'UWT,9H.1'(]+':;484H=IIC,^;;PT3**+G69'U*"E;I,B0D_AB[S MA\ 5 /_[=QH4HP]'J<*4*DRIPMP_A#1'R*7FLL[RJN"0^I'GZ2U?EW,G_'A7 M>/K!U6^_P#_Z*8.Q%#'BRDB]2O/<)KZ2D4=/D'MJ5M-H*69>,\Q\RVNWO"UG M*_3O_[@[ZHO!E\LX2D,?1^]%\1NM.CE;5:]O$"%B#&_1TW-4E^]^.V<)BI&0V\WHM&(B<%F<1>, MSL(^#Z3""_Q?7UP,:HUZO55O7C2W9?^BU>TT+W8:@]I%K2Y]OROJ@_ZV_X+? M6L#I8KW3][VCBG=XM%OU>D=[WMFG=V>'>X>]T\/],S-UC'=Z>+2W_[]P',=' M9P>'1[VCWA^)NC%;KG1][N-[C#X=[O?/]/<\LW#L[AR\^[A^=VVT6%LY+O8VL)YGIKH.S43>9"9F:HKLRR .PK3H^ED;.'H2^G,J1943P-%B[UO9.T#T:L.P/X((@G MWG4P&WFQ3*9@8NFGOJIX8)S :L9PGT@\,%5F/ 0A2.CPO5X8IK!*?FOUL7'A MNT^^V#-M]<+TEGF;=U.*=T!*KK0?'*GB/#^"9PX!Z334].>MZUA,W[ J<0UP MNE6$*TV+7JPO%7TP<].9G-NHH^SWD6\[RSH820^Q;_7#/ MZ'M;Q2A/0,?UCM))'TMM^]_>,>E6@BDJ#WM DED?D;V^)VS,AM/]D^/3\^,# M5 -/]N&?H_/3_?>'9^?[I_M[)Y_>?3C<[>WN'G_Z-MO"D?OO:>C[^2B*PUD4 M>A\^G%3NIPLX9HGW\F2W=_S..]Q3-.?]$GS%H2GP": Q\$@B?IV=XA;WTE@@ M7[QH7-0O0#UH7IQ'\%>3/K0N]H_2^N')O].3VO'^^_\;=6J_#_Y]??W""\4$ M]NG+X$T/M)M9%.,:#OT7I.(?B3B^.!CVFY/+P?]>?WK_>7^T]?=1]Q-8MB]^ M:[2ZO[S.K.>W>T_>*R:-;'GM[:TUQ_P?GKB;$(!]([&TD)[$,0!YEG$IH]-#>0/6S72O:P M?N=6LH=5&L;9^?'NG[\??]C;/SW;__>GPP=7,#+*!ICLU($;;WSUMO_ M)P60ETH'RBW=X!FG]PKK(KDI%W,(ZN M2]-%<9%&R476[]Q*+H)1EVNXY$0+$#@*$V-XHA"1 : ,M M;)_^J9+ QA;M=O?8;MFNB)GN-DZDRJS,7V5F965]1E@@G\+";RNE^Z62M4_-SQ5GR MC9_8Y?M-96KQ;+ /D_'<9GO"34ZLYJ[XR3TPE$LXRL4L=8>-;BU7;0PZ[U@3 M=K/2JN2IO@ZUXW)B)(A]Y>O8_;<-[XGX>7^ING!_5KO+RI">U0AQ8[KPH"?X M#T8IMPK5?NOL/^%E;.16ZL[(J7!GV4A*Y%1-\QP %D>XWZU=>U'SL6T$T#TS=5'T3,/7 MAJJMDB(^ _SO&Y=0TTQF= ,FP=._&WA>Z@PO(TRJ$/^$M7/ T@!XVD?PNX7A MP_("6)<8ERA>A'%+72Z2N0-2SGF1G_,2%M @B_PHU<5-J " M&@">X\#\8ERAJ3Z4:FQ\$["UL8'\EX8+1F(#V8/?&QLX,>5;*((, ) MX)!RR7+PYR-1_)7[\ZR3<8'+10GSUWIQ-B8X6T"Q7*! L-K%]^P_[@:>,RDG(RDGB( MQ-_PXZ6?1(*^ZAA[S[?@B=2<&001!+;CA2^@2:$1>T[2!H*+'XL*HIQY.JOR M6;)#X/SJP.=-OA4$T&XN,BN+DO@@,JC[T' 3,>02M'I\9C!G'*#10B$ 7R]R MMQ%@:&%"F236_C%6OY(:F(EAGX>=R])B-UP!6+R-F'#-.@,8G/9S3/@$!^_U M'8P4A#_PFW4;A?'J/G8*GC[LYHGN+@)H3FWUPEX-8 $:J MYC:)65^AW0(6J?L/I6OWD) 4J$$=A%_UXGRYJ$*7@A0*?#<6-HJ #<_?K4Z]R+PB)4!#RY\ MWV^(#S/X"?S=.PM0]A>2_/TS],B(E=SWH;$#L/?!0!)KN&<>GL8P[D>;+,F> M9NB1GV3HP/B@@<1V9P96\-W77N1T:] _&%+^6F!/AP#EFMBNGB@\E'\\E+N< M% '/Y(KXGAWC %0,NI9Y:)UJ#BR6(;16$PS%V)G E#1H9DLPA9>C**H#K311 M:]T,--L+SL_\+EN/1!FO_P\#V*EVI(;W#[_I\43)4@*\8J#!8"718,TK&*GI MQ(Z.H^H&7/4>D"P/U^:] =Q$\/>35\#E'#J09[]2O?81;P\>6,3 M*Z, ,H52 I*[4M7YP\+QX.%FQ\"?7?3*$+0T((#$%(& X9U7&5OX8L*8)\]Z1A/.V 54ZM&; M//_I0O3HU^?%)WFZ=N^4)>BOAM]R?^)_G2.L!$@2$PC@J[/%W)R%(*=[8+0@5 26#L4.UPVPZ$+G\LH9[N#&'"LX'( $"?&\&%0/, M ,?S#^%-,_QXF5Z8!T,O ,#6C"1J4K7PX:[N#+#' ZTT C"[\R0 2_;5\"3H MO]C1H_S+=_3RRHL\"^-D0-\FED^"^3>%D0218,$RP&*6Z*#F!6$A] KP;S"F M#?!I'+#V>_$ $VV"KP-*XO::JT$L0N17#OW 6/ M! 3?"F],! Y&$H_$'7" -))OFK%G<5Z%'SL7"0L@!M'/*9<' [M^ 0A*8.+G M#+KP*:$-TPD))7 2[IW.,Z]GW-J!E2!>J!^_XY+E H^[0!F0<;R+%">"]R3X.R9@6@=^OS9,6P(W&=/*DEI7#%\\5 NLW06=>)( M_H+%)ZOM;0PUSPM8K-*/9B/1QALZ"$7ZOW"(BRNM3>N0&5S6+SAS]QS"^7UP M"._7LBOE@ OU[54PR:2>5T&X)$-.GIC$(@HC_R%)>*4\ 72VK[W3(]2XX[7S M"A;@V O9J,&U(WMV^A--BSWJ12S7>#BFKT4.C*>T>_WZ!#NY#-K)13NYK[>3 MFP'$O0]UKP/N*WBX#P;@H@(7NF<@]<&SN 3,>;A$PB_"+$'P+?>SG0Y>64\N M^ ))KG08_A@/JF"K1R\*O\7,W1+CU81>[#)1ML<586M[3 OID+!;)VN="?PYN>3W9!KFXL(_7[XL# MF 2G\3."JP7M^\Y6LL(&B?=V7O.!;QR:-F#U?I/DQIO ;R[^"ASWQ5&!NRW/ M^29WN?_Y%\Y@#X50J:(R9$3(B%)&=+85-1>H4$6A0C]QC4_GK;YG'>-XP]B- M-R.2C?X$W540SUU"R\L*H8*?]?-GL9%.3WS;_3WC#Z9\;:;SXW52]3HI"[/T MSB;>"8FS./#W $GNLUJ7+8.E\;WMJ/LH-_3V\<;!54!P_LK%W0>D\.^['#)J M9-0_8=2QV3TVZG/X:=O>?=+VP7KCF&YSV?77/1"'W6\<)-M_0%):E-COO<=V MA0^/DC1@R86!T=D$KE,N%]N&$7-<)'(]0N#UA2L0-YZ5'K['!+)Q#".,3\&# M@<2[1_[U'F7^O)$6C\L&-@LL\+NL0(3XCBWG3&"DVGV6YH(*CT#A'*W?3O1\ M-S&&C!<9[T\9[WGW,]9HX)?&:ZIY*2:Z#KF@RMU:MQ_9=5PL)M!<\%I9UW6>-SYM(\6=7E/&L7VT,WWB#>BZQ@/N\]Q9UTWQN>LO/ MF529/=049SE=':;^J2"/!3/4YLQ@2:V6"JY@3REK=>&HBBTW$,85KCLS M5O7-3N(5,DVI[(3UH-FH[*QRW;&Z*W%#B-Q28>XI/V_/01K[H/WX/A=['^/H MTS]MBOC\;+R'#."E'[4!WQWFAG5QT!V*7=A;[6>/UOU^/MZK_]X'YO33,_CA MIO)RD -\=YP8\WE6_?%K3M)75F M?UQ<[V:C[HNK)LE:1+>UW==QHB?22X6&KC?O@_$N0YBZ')EPG*;ZM%4H4J?L M7U&%^06_PZ'1N*J,X'U?F\>L<& MG.5T?$$9"DWKP5?XZU5]L:NMW7X>6GM-^QL<-/'/V^ *+Y M*C*Z=6@C]Y/'QU]SQM[C*/KM%A*7LP&."C0DWOE^KF/$?=7;^Y[Z?_.YS\;4 MP]FZ^[$[_G%1*6NM+'YX@NEV+Y2X6NRJ$^FS_6#^:>^'I S&^T[O@A>H2W96 MZ%2#B,^Y_ Z?;1H!S]_=\>JI,NT4AN6H(Z^Q12DY<\M.(<7%[R*ETT7BZK=&L-U%DC MU5GC\RY!-UIU9+53QZ\@ 3QL_^#*?=>3NVHP\6#BR<@2/$D*I6,>SS'!3X!& M D&7XD?84N-\WN%A('M#M6(X,@[ LF#M,ZSH.D/9DP845T,BTF1( ML @.C";5%B0^@1B?$+HNB(M;8MP?PX#MW QXH@(N\6T.>+A^%\3OOE52H^&7PYPI,80+*X7!JHW,2/ MQXUG?*"+ZD,OJ^\Y#G&-M9\T>#@?&KCI"L<=^PYG!C:1O_$"XV:7HQO]]FZV MJ;G+_2,)); 5G)WC#?#CM.0K?-',_H,YO'1_C(_ :X:Y.1_> M@:T&P-(1QG/PF-5XV',#/B=N1.2Y]DU'2(W S/K7V8XK)SH1[B6%^E26<3,7 M\@?R?#"635SJG(@H:3H!1@0/S6D7L47N932Q(,!Z'YR/_D1!T@/F:J:?#.>A M_B:9^%A80)2V?@Z%'U;%9%%[KM7+YTT/E Q-!<*\= \U77@T \STU9J2_PEX M@%T$8$^=\]S&4Q3/Z*/>8A"#[,#+7TZ)7#0M[I9Q]D*2"7WL;P#[.O-S?R04CFH.+-:!/AU0_BT\< H_N;!^UJKFF>\XV7#N!J$; MRW.7MKBPW7SLM-[CH/?(EX$OCH^!FC!_:SQ2H]>JP48%UJC &A58OV6!]3O4 MD77!!U>72V_GXI'E#)S$F.W IB8!"$[G_3_^H=#-C#*)[LM[4X_K0-9@LJL%$-9BO7H/)L@1'JL1"P3&252A#8Q6. MF-.*;E"X0>A<<4X5?U\-YH\R_OR@QG?SN4:W?)?CNY6<))>D1J7!#QJ"=)_& M3SC]WH6Q C_H-KHU22%8CJ")[/)ZS4#N@0-8='KAX1WK27]Z^%5Q "(T(3<% M@Y5RL$*VDFOR79D?3&&-2I:'_F:@8:XM%ZQ@I@UV:/KK M=S.0PIAK'GZN7X-6U(H$SF */B_B"L6QI,+I.JOH.LGJ"TU7YPO]:6^%]KJB MSLW#E,-4(17B*:6A[:K+TVJ\EZ5%N=&SY9%=*4%*^BGEM";Z MA,7N1D*+6*WIK1_5:P[L[, ^I1RVVHUNA[<:&+&/2(;:5)PIH*32/2"HDWL, M^E.;MFJJZG6WO6Y_:O0!96J<[J$_ZUKTP<-:NK8HD2Z]-%E(F1IGK= PM\/) M%!/*[$P?B.[8+0=[0)D:IUXJ:N-]KU:7)?+8JSI;$8N*YV-PCRF)+2&-M*6K M".*N>ZKQTFG##OM7O2KN*46^@N\+9H.6S6*]5U:-L$U1O%),4PYIIL=M3CM% M'M>U6M")E-.^MU38-"6+&6&M,B 5JRR2]=U.)S:5+:0D4[-Y&)6JDFF8+.*E"3 M;DLPF[M2P6_T5-DV1 J%;'1-3'&/,[7 M1D^P.E7PU!NJI]H>0=(AR0B%AB\=.XQLR^4])$U)-6P:AV*E86RPUH(F?7Y! M\K,U(+VA*,..$PGSD=B7R^U.AQ\MQH56! 9P0U,J93=84@Q!6JVII*_,T7K6 MK/$*?D-5O(-5&RTFQ@FK;:K;8=>)25/SZIU,<5.:!@>YY6QPMM9>$.RV M#TFYE*J.R'9!POVA57:F3,GG6MUN"[!U0P.WXV P?.380)@U MNT3)X"%I2EBSB4=&VQ:ERMO- 1O(9G,_5N.G7H3U%BV+"M@=QA;I8I$E_ON] M]]$8]H[AT%[3&^XU_7 >OM=G#KMC:#0S69P9_ XCT,QD<6:*=RR.9B:+,T/< M80C-,CDS",VR.C,(S;(Z,PC-LCHS",VR.C,(S;)5U?C#T/_WB.$7]E'>-L[. M= 7+F^'D%YG\'X'2%Q'#C_P99 .?>/*1#2 ;R [7R ;^N1B0)X@\P:PCP'L4 M6'U(3,B^8-!*B=0!V0FR$V0GR$Z0U_G5O4[-L^&'__Z#^.,7)<#>L=3E]-/E M7!B^.>3B]IRYR[FJS!G.\\^RBB37P:?_1(KP D4@D2(@18"*0#Q6 MA!^OE_$]Q->+Y<.ATV__TC3#6"Q^]\+Q_#4-(Z$K7QT-?(V%,GLB^$T>=N8$ M\5^OYB-G@;4K6X]+[Z_/'Y./#HM?.O-4_?,UU)%K)GUY8#-R13KWBE5DJ:), M^'V_N]AT#W*D:4.'K.Z/?6[_QVMT\]$-S714._CW'P7R#]BPT5'#?_]A'L)O M;N3H7GC^_:7M3Q04EJJZ^39(;OJN^IX3-VL&/(S-<%6. C!1AB\<8*=%(&[^ MW$1UJ!X JH,9!<\@[R^]($SZ2\?""U"R\)]!6=;2 37>&#X()XA&3;/%)'A(\-'AO_A8IL?&;Z&'P/* M&E!=NG-A E*=<;B-7&$.WT M?(DD-RO:DWVUA1YZ?E!9[TUF*L.LI"&E8 M)D\R.#)W9.[(W#],*/.\N7>6$WI;&A7;0M31ZTP;%Z5=9PG,'00R')97->M.Z9K!J$?MPA);JH,T,[,1SOL\99X]87!Z6U#C[-! MUA)SY%V=?V2,0F*+-W#+QP9KAE0F>\%07'_>,I9SN[97BO&6"Y4GBPQ*O"*# M1@;]WL'%+QLTWJ-[W+$X'E@%EC8KK96"PV[S<;=[8- ,]YPC@@P:&?27->BW M#1]^V: 9?-W6.[.B+4L]9;58-NAVO;%4XCLIJ&*>))Y+)'R&'9*&LU%-/[Z= MW@8A&-H#>88V3'^SH+Z;;LFA,50X:B,3W&[5;BU)#6>7P'KA_@">9QATT@)9+[+>=X\67F:] M8ZD9]E;]]48H1V+/9"9MA3SRP'JY>'>/QE_YD'?F,A!BN#+\G!G+*)]SC1!M M!WSY9,O;%U5FCO_LH.(;1R30W+N>ZSU&Q^_OEO*6=O).7+F$B9-B,5R8TF3' M\ J.P>@$)_)4D49UUPA"$(1D"$+>."SZ60CICA1/6*[E$E:@N2$_E;3!5%E" M"($A4IXDTV(,W\$1;6:PJ^[4,$ 6$: MD:?I3W48Y"4[.B6A*@Z$W/FG(3]YY<[%7Q,D/Q7B?6'X>ML8ZB&A=&DQ:+H1 M$.\YX^2Y0BO[:GFW[_%[!\?A$"9OGWK);,8(!! ,?%P;>-@YZ7QB0 M9S*-EWM^3=@RS:G A#, @BLD#AQ7! ((!! /O' M*C/X)NCM>4$-PB6$@>3T"L:\>.M@!N MGM-#)<,U;K<,F6O::6EX/(NUPG:P.F[)7@2S1$2\5<7D:;15A; #84>FL.,] M0K278 ?![MF![^PV ,&X=L>PXW-M3W6%X7E3"FU'H0042D"] M0X"4M%#\3GWS5N>QT: 6-BR5;V^F]6&A[,V7"D[&AXL(@$WH4,^D;.H),JBO;% ? M.LP *_)#@0I_M1@/O1?7G'A;O;L]=C%-CCS'UO7=E"QP(!JAXKV1//.L6X/0 M!Z$/0I^7HP]$G#\_=(ST*Y #) '><@-[]F6IW^M0/4\8L_5Y4U^6QUR5A]B3 MG/RY<9WE7Y]_;R7'#X>#1DD>\J6VD!N*N6%=R$E#L=RJB^V*,)!R8C7'#VI\ M-P^_<8?V8CYX?NAW@6F6D/%3;=H\ LE;3>IU+12[PZ$IB+1:+'5GZD[>]!6< M1OLVR,*1A7^TR.N&A:\GHTTQFFPKLE@OCWK3"EV8%V,+AWL\9![CD(4C"T<6 M_D$"G1L6/O*&(7^8^+R@XM@,VS9HE85']NAX/XC-$]1SN[B?83^HZOG@5VY. MBWS?<+5C+O15-[#C.Z9YWZ"A7]IR- M;ZP,-S!WQM6)R,3^RV?S'T+K3WCD77WX@ 7\/10 3!470_7P7$Y(*FC\JK+0 MET*M5'.F4;,CVX6E@C,P-N*(]#GHOU Z&N$+PI>/&4>]/[XT!R5_R9P&A#Q6 M3M9^YM.>7.,AOL!6"T3Z$"'"%X0O"%\^:!3W_OABRXIA-8RR9#G+NF%ZI'W4 MI!A?X'FA/%E\UH/Y<'M:L"@P+R+\:JAQAL^L[7AG TNS)I7L9,I^7XS(7V @*T$0$"ZQX"; MJ)H^*M'0/2<2V]:VSJLKO+^4-D9?P8MQTP<.7;Z"D 4AR[L6#'\U#4!V\47L MXC/LR#Q;8%86.[V!4!>Z4F,D9*'4+'OBRTXZY+%ID<"T="^"IZRR@3C_]7X% MO5G@_:MX\C><^&><\ZBM=/!^@.$8$^CD9CGU<*^]5W VKF+#\PQ91$<'$'@@ M\,@*>+SM5L[/@<=XU]O.3[/0$K::.N_-BOTZ[<;@P<0EL$SQ#1O?(_! X/$Q M>,\.>+SM/LW/@4=)*ZR7+K_4!8*=\3O?<_N53@P>7'RI.EM\Y=J[#*%#*K)[ M%[CXRMLM7XWK[!46_Q8Q?.5\YU?C&JD\4ODOQO7G4OE/G[V_.A[>$P8YJ:0]_<%[[?(/XB?V8 35=X'8@Y[A2W"(L7W?[[Y@ M][LOK,$Y'3D(1:'0)D/77I5)8K=4B/C.$7%?N ME(0!K.Z/SP%(.5$>2D.^6VET:ZC('Q5CHF),5+B,; 79"K*5[*H(LI6O8BL? M.OV(BOP_?3'>__P+9[#7Z!#\\2OR7MI$Z;*M,IG)G9FLCZSM:+;?#@N^BL-)R5ZZ-1@1I9 M8H7:;6=+)]):O$+$-Q/C9)YD;E7LHN030@>$#J^!#F_;HO&?H@-+JCHNUMI= MP3FV#U[$C"J;($8'!J #EQ^0_ @"R!1N_I:8ZPP M*?B\@9S!CFF.*:)B8=&VLNEHC6,8.7N%8,Y1%TVQJ!DV A8$+%D#EM\2KOT$ ML P*9KG6W,SWF'BT,!*;-=?>A(? D@1L>)%!P(* !0%+UH#EMT1Z/P$L5F_. M;^ENT;4<5RY.>+E1(>4E!)8DUN/PYS)!'WI'#!7DHU)-5*J)JI.1RB.51RJ/ M5!ZI_)Q0^H]/MOQXY?X V/&7/<3Q7"CW- M2D;KZ@^'V W-!G_=/,6^)QBL%]%'P=25TL!;*:TA"^+E^*Y<(,1;I]A1&@[A M",*1WX=-&.K^(([@:&:M)82H#''%VTPHEM[:+/L01[HY6/3^9PN#)RJJ9Y#C#R(U"NG.N%X.6 \1R !Q-\>>FK=FZC^F'.6^3" ME1$8<+X"SS9U-33TW,)T5561F'N&ZI54!?@ MY=]4>Z\>@PL4H$)K?&;;]@ 8W8&?/JCY\:S%7J;;P1^!_>K'/#CF3$*ORO2 M[S5_3U2J_-ZDLT^K'L;XE4C7%2(8I4D6!Q0^$,BE,H'",43F,)!5,Q5C68A<$Q^A_) M6]_;#%Z0I;JZ^3''=RLY22Y)C4J#'S0$Z3Y3E7!:%KN2V&Y4^*%0*?%MOEL6 MI+H@#"6EB!4I*KL\7@\\=QYY+AGZ/8L9'':3[\K\8)HC\?SO'.;3U>>Y(?]9 M\6S@301@105KJ!<%*O T\CGCH!G@ 1O#S\4N4@XLJ>I?3]1+H8IS@B&+E(+- MB85"Z00-SY)@BD86&8:F:8PAB+.2J1<712\ZS."H%2.K/*AL<*G3-==.'[I4 M3RFYHP!)?V4LLU*0V>^W^RQ\D)V5=%I;Z4Y")\4 M["FES_!VJU!R]U:A8(_6KM:O:J.]0J8IJYI=]W>C\5AN*>ZD-1G/Y45CJ5!I MRK!OXZM!93"S(BL2<;Z@EDLS2)GB:&=L5M&:8B6,\3QQN^BH&VZX!Y0ICGIR M-/(F%M43RNYD5"_V P*7>85.O]U6>&=5/#E]JRRNEC9/31H*UU>8-*5A%.VF M3;*:4JJWL;&>#&BK,@=M*R-V#/5PE)ATY2XO.R%WGS& M":W&;,L>^+7D3Y8*=V.<#";T#P+X2ZJSI:#@T=5Y@U=P+$UJ%@\313L('#;> M M>-V^V=H 9(\33I7EJ.QP>/'DSO5F@ ](;DR\.K*YV(%H;S#Q.!H/Z MNA6:"B"],5/,3 MZXD$VY:/8;;0K3NUDJ'M(FE(4P56,:6-!'2VQ8?='XY%H MBT'\U)2F2&Y;FU@'EA (2>R-%K/]T/0 Z8UI;6+K:F\X-VR,T#:;J4ELZT$/ M".O&O(XF38V=NKHLC]FR%&P(9;D<@*?>F-C*=.%BM6"G8#4U(I>MAB9RPY@T MQ19+D.)HJ,X(06R5M[S7ECFBUH>D*;96*Z."EPN&)!2&E-0B'(P;]_8@U$H/ M0 K]"M]OJH00]=NL+6X"VM'CRVC2LR45*%ND]PM\*VK=2<:LNAV/8>QG(ITAT,S9DM M)\L&-^L>5SI:BKU[+!"^+C/% M(3EN M0A;\SX;$9%ZJI>)F6U6MY3 3<;5V7PU!LS?JCUP\J<'Q2$,AYMEMJ" M*X6%OD+>F/'5:#FDE5.H8N,Z67+IR*G@#*^0-V:\,1J-R[V>QF'&22F)BSJY MGN+@J3< 0J[M"*YHC&@ NVU5)J=E7^P MFXHA]_K^K*(%]:"&&BCTQJK!N:" MAZ1I+&ESW+1(C>L843T*O>AHF:UE3'J9ZCCFOP^IDKR/!MV"36!\N_SCVB.! M$@,@YWU"CT+A\DL4[\R:.0Z"IU=*9)QZ&A?QG8Q?M)?)H? M)KR2D(ZZPXO/[VM[^$UY>?XT[-WY( <@_D],/ [2IHOR=5 MYX$'"S+?.V#[?AX"_]F&O7OV B:F'\X,3^NU_PY7_ES;O[_"+G?[UQ>^L]'[(% #/(< M[R/_(A1B=T7F:3<6?'/(Q7NFF=C8_^F4.ZP%?*7ZW*^E"23[^32!?*P)OP: MV2N(>G8W4)*N-\5>PP*R)X#?4!$&G48DB'/$B02!3 .9QJWPY?/(X4-&"\_6 MD,B#@= =YMY@A?R@4_QF.93/R?6/LJV?DVNDX5^'ZQ]DX#+-]&<([IZTH"FK MP2JGNB# A_\PMI&Y4^VD#A;YKY_]V+L^\Y<\$3/A-_WNXM- M]R!'FC9TR.K^V.>>'.7A T5<7)TE7MK;0U2,W((@89C!KXN+T%[\>N=0:,>\ MJ\._A [4&[2@5E WO MYV++@WM3[AIA.?)]@(DW(!%?*97R?"169":@1'M-"?/9;*G$%\90Q3Q)W+K7 M 26 $#B@+-#'\XY^$AOJ2EBW-S.*%&KMP:&M%[?TZ @/^@-WB<;R^$N2PQ\] M]P,;PT#F\>U]D2QV:X*D]O)V=1JKQMJ9E5>P!0GT;]@\SG(HVX-,'25QLN2F_)JEC[M-WYF/QR2F MLH5#8\-+$[/+ TL'W@I!Y8O%6U=??O[ MH-_>6T*0\N4AY7O9HLRQ_Z$0Y=7=M!..0JK\G9+].;C MD4]0'FP["SPCFBKF\2)*)"&K1HFD3'DH/S+J29DJFK2^;F JST\"QR0KTS$T M:N"<4, [*6)OML.5N3"GYWL;,.QC/K>Q59@IMS1*VS(<'PO \1KR@ M0!*A T('5 [T =RCGP2'C:H4!JM:]V2)/ML@AXZW"E=[" ZP?!K+4^2MR]X^ M02ZGYGGZWK1M%,BA0 ZE9WZ+'W,QP1NPI%HD4>XV>FW,*==VS4F11S5S:(FL/%=7,S+[?F3 M)&4:+IBWI0DORTDJ=U BYFN$6E^Y[^J'0L8W.+U^,?DD>PUB,>&@V1$4_#.H MZ4=X9#+4WA5:[P%>]T?,=%3,1:&[QMZ+E0/QBO[ M6E\- ;(0(J*&/UE$N5=WF2YFVW USS&&ZN$>[&Z%ER=!U$1'TRVI*QCD?&AV MIT9\*7/B*+U#B?-7,XJO"04HK?3^_LY/(4%8$1G+Z#&,59-D=XXUMPUSMH=( M &N3\\Q+CH9^DCS3 'Y>\!:%*##BRA\O/C6&3HNAHQU92T=E3E ?"G%?S?=2 MEX=OXL;PU1!(N&VH@1%CB+B0@R36Y%W]ZH#(#?A='[>C5=_W5A8QT?0H9(:S M[@[ ;]Q\NIBGB1=4$R! 0H#TFS-:F9/3A\*C5_, _SD>5;9F46P(WE8V&^L& MZQ/KBMU90CP"[B"3CV_]_(Q)KQ><5$,GU%X+9Q^!!0G 0O=@/U^,U!'.VCZ4 H<\.ZI5;7M0;35_"X'S;-L7F"0 DQ! ;_ MR&G*')\?"@O>Z%3?C6NOZ:&HTNU?[][ M\]S"=FGT=K7 O>HZECUI(*\718B96 "1()!I9"X@_*+QW_,LY6>RMQOT9O<%]A(K?.8F'=5=S3L[41"VIQK+"]&!$HFE@G/G MYO 42Z.-8F39&8I0/Y1AO]EE?S\T[#%36NY;EG22:V6G8:G^9MTF]M"PX3U_ M3)XLOL"P/T,#;3AMJG&*FT:SW2# MKN_&A6*C&U#R6-KTAR6GT2B6EV!8T,%A\7P1-3]%T/")TA ?"AG>PCUZ,3*L MRU7M8&&A+T2+=KQ#9("%<5R>9=ZL+BX[[M#]3*%< 9 M.#OTILY0UIC]4/CW+MY%]D0>#PB;K([6A(SO%2+NMHH# M+PFC7W!."J$%0HN?.#.0 5X_%%B\RXW,+P"+#MX,VLQ^$\J%@=0_DLNMX]@\ M! O@-W%,GF!>$%%]ALS2CRI$'E\(B.I$4'")\DX?VKMZ45C9U0V'6.GCDB55 M/;Y#3?J+E@?@,>[92F($P$?4 P.! LHX?0XGZD68H%7FBK!S"Q-L.QZ.@IV' M4ZON$F(";+T*,('&WJS]_>]5]Z[G:HE84(;IB\2,OZT\-FM2^5# ^);.T@,( MW,#&AG;8J^1)7V/&MCZ8;DJ3PQ';*T3[?'#$+;7!6X7:4:L?9GV%H)(<5C%/<"B'A=#DM^6X,L?^ MAP*3M_32;H")<8APV1'7CF6HQ) 3M%9%(I<03.+D%YNG7P(F'S'YE9EN8QD2 MPYJ)DLVG85YO\KZGRF3N"]D^D\!42$&6QTVD,.T)WF+0#*XO=8:-; M$[IEV" ,9B/^# PCU_5","(NOK4&Q_Y",<6GWQ='355^\X*)!(%,(W.U)5^T MJ0J*'7\W"'PUKE$_S:_#]=?4<-1/\_-H:$<\.+?;]$>.GM"06XN MB@ SL0XB02#30!%@-B+ )VT:>O[Y#G3P7D^S\KF-ZN=VJAT9N?]Z?J^X8NY, MW8AWBH.5ZAN!4J-U7SDY/0PC3ON.=1ST]@?O'V\8$S^Q7WS/C029Z:F^Z$NA M&AKZ"'+4,WP)CO1^*QE+MI*[JN\K!MZ<>8VJY C,D56-F5"I5E=],"-O+H27 ME."\DQ &-%^F?34JRF6[H.M+U]B:-A "=H??VDE_\D%N8_BY6 RYV,_"_WYI MN<%%=I.9W)G)^LC:CF;[[;# F=O3\I\J4*-;_67IQ:(*^"A<>3ZP+OVFU/2B MO15%ZN1;Q%)AU%UOTJIN^!^ISC]G_B6*\^;,FYHLK;0Q[B=8D_.?4^_=D4VT*@:%!Z>T]7P\,]R6B:P1!]!VQ58=;1VN:FXIL MGL8E6;>F-:&WSZ;.O"[G=?$XD5UNBV/'W6'+!KZU74*,<;V7ZXH9/S[>Q/.B M,(!2 6LHRMM\X+S-*Q<*9VGK_KE"/6A;!?-02";W6SW^2V'F$Q<3[9*%E46& MI L5W)^+_,WD_:\RD/P('P3$!TS=_OLZ=7+^Z(__)"LY\:!L*$.*+"VK-3(_ M;VC[BF%/O*/AR$>]5YRL]5HT*/:S:&B?(5.;:A'H.)[[*0+/A)6?#[A*F[(@ MX87:4!B'[&IM:*V!L?^A&YC%J/-7)=#?;/5"$^,)N5#V9J7Q=-2D)3X..6_U M$?^,(>>5Z%X4E0W_@U;%P? MUVQ)DG 91DUD'&MF-]Y\!\D]$W%AGC.L5^I*:+5&\QWNGVJ%QA)$7#B=9PDV M3[#<=X7T@B5T/;/U)J.M"C+!LQMBT1')67WY.Y;0)"I\O(!^BKD5'V+G6[)YNSDE!P MACN,<$5AZ/*Q:"@*OWE"Z*+[5YF%G!KFFJH;J?XQ1^+Y')SV6(*0R7P.4&\, M\.6=81_1IMFGWS1#[?<^V9GE*U2)'=8;9PW%&L65&OS($*3J;*A@_M(^C/L* M&=_V0.3)XMNW,YJ=^!I&;&MR>)BO.*6T MA'C O!@//GKM _>#CE3[=Q&-?6"Z>8T=6.&JHWRPR@__-%V8CZ)+_-@E#U@ MDPVWG%CD%:3=0#._5%@Z8RJ*K&A *C.L7Z]J^R4<(KRF@:'R./N"-J+(UK^N MK7^HO:!/XJ;\DJE+[&SOGESZ()?#?:E;;]:[8RS\6(A;,-\YH6.9$-MR(KQL+4S%L]/LNU M+2!7BWMA;'6%D,?5D\,#2(PO5B (.D]C+^CRB4 "@03*[GP M^F7,&(DUYMV M$!$'N=6@K:S^QR/[N:6XNY8;C)DIU 6"D34IT_U'MY7>)CUHUDZ7V1N M[*9_S,W6GQ-+VYOOA4)SZ%GB9*$08E\@6V$L%I)E\@SW_2*#W["Y^C67UJ_& M=?82D'"Y_/-CN=2/4.![VR'5"G<,QAOI8*G$G*I8ZV&C7-@K9'S7!E?,TT0Z MJ?!ZS=>^FEY_36O.7(KQ[8WYU7W?%QES35J51&,W',@M<\-XY;"UF\QB8P:^ M+LOF&2I]#^M?GSHW>!4BY+QP9?A@SAP0 JT,-P".2<[V I0N1.WI,]1H)'." M^EQ.T14@B! /RM=PT' !.AAM@ E=(Q070_4 0!8P#MYQ VWE1KO&./N>A!UW MG-)2Y?:\7 -HFUR)D:>Y=.X1M:U%6).=SBV9D]/G$6H60W%F>R6N*1A< M:3WN"6:QL^8AU,1%:VR1>7V_+L.-X9([R]ZI/=Q70XN/[\ 700-3Z2FSHB(V!&:RE-5#2YWCK3V$!N@ML5B>O1&: M?7O\8WL*"^NQD+84D .[H7S6TC(QC[7^^7 MU5^$P(X6=4+IN)]:D=J;,CUO4<*DOD(RT#FC.39/$&_OG"%\^=+X\K*L5Q98 M_U#P\I97Q;X47B9K7>192SW(XU*+*ZWT4]AEEQ!>@(-'L5R>8E_JX/UOJ(*Y M?X^IU0P@4O\RM^S55F4RM\.5D5,UN#VIND?8NL*-;[R#'9+ G)O@RTL_/K#I MASEOD0M71F# >8KCD7B#&X@F,$ MT*7_5=^&;8)]NA_+WE;@AZ>PWT>$BZ'"[[\0,^^9TLU@8ZM'J ;&WZ_&(?SY M9QE\!O)^@<'_UZSI!)52 M]4*.P7*%*U;B/__?-4Z\>@TMLQMV1EU#^VSW 0]GD<.R.I/\[=_5O**.4@!WU4+@2XWE=*-C&(OS& M/OPDWVO> MGF@R>;78J+F5#Q> ?X%X\*9FPW\_V]AI",$5HE49KB< CNZU6'V))C^6^2V1 MIH"-/ -;\@ME0;,,IZJZHAN

<.M?GA/$(2X#?.3,X4ZY(U-@:=YE=L=.I[G6! M!ZXQ\912FEO52:U<&F/,82!ZIW%]Y*A+0%E\2AEUJKI8:41EK% \E.7>PE[0 M9?A,G'E*NK(+#-EO^ "S=#9H4I,UO:CL%2+]>G<2[,CENJ!93G$W.[6QP4 P MEX"2>DI9KN[&6*O:;PAFJ[.+_,)4G]W6%B+VB;>VQ^B$+X M=AQ[2HH/QFQ4- ^.()YD]\2O=4JG,VYB%I MBOW3+#BT7=S3L5K)*S.]G5ZK\O%3N:>DLCT" J"C-A;5)58=FNV@5X!/)5*B M,AJ,U%UR6\*JF>,=T^"&R@HFB]-"%=9-N^RQDX$<$8:N-5J'SF$(HHZT4#U^ M;M:BDE_#RGJ]N.GZ_>:A#2E30J6/NP.S/C!C@?&.M+8,%ENQV >4::&RQ\FR M,V$.&YD09J+HEB?].@L5P(6E3OKE2^N3:4:/S4E5'-9%!H= MIK&U'(E82$9)I!4=LI\6:K"VF-EXXXMR@3D:1YO?T*,IY"HM5-YRA=%POCU: MA4U):XJ\C(4\KU!*BBM,%$\%RJO.Y?%QL5?MK5<5YWU F1+J@!&G'?FPQJWQ MD%Z8MLI@/1#T46FAM@O=T*$MMFD5"&74*ONG2EG9 \JT4(UB@6?W/4^RF&)O M-#^--IW%+B9-";6/ 7;V'4.SU-Y>PS:5T&_5X?O30AVO)C5AMJO@LD15G9G2 MWV^63DR:$JIB$8*XWX@*)AU.)._L^,9.AJ1IH1+^$,?QL%@6"O/^V*P53\1Q MSBMT6JB^V-E81FM$"D=SOK98M:'.!GM F7IF=:RO!F1I4Q (%U]ZY*89U7I+ M0$D_I>RXQQK-E@31BN9\<3"='@ES =_./J7L2;/1?+C?AO)Q4>5\VAJ/:1:^ M'4_-*3E9UWN"V[#E<=<>KYSI<:&NX4/QU*2.:6D>8MBACT7#:K>W62Q.Y&V'JW-#\,^H$Q+-"+;E<'&8F2IX!S7?ITA3UOXS!3W ME"*Q_4 R-D)9Q5@^=,22,(;/3'&OE!J3"3 E4R84S9.B=76T+T-*'']*NJR$ M)N$96T\H+)3:WAYLKXCOUM5^80])4WKBNO2F7QGP)M8: M<=JX,ZEC11*RGY:4+..&A5$ 46K-L.GC4W=3 HC"IB6UZ>PHJ1X*#'8\]+W) M?LT[XB9ZJZX/0QJ8WP-'YKF2C)(D::[J1ZND&B"TL<9&?1 8-7P] MIY<*E^:J1C8W)SP:K^7"8EL]6)BBK9@]H$S-JM3"-<&S>U7!:7K%D<.U.W7 M/Y=6?[4\LFI,B0+S7V?VIW)HETHD?&9:4LI@5>34!K/&")=J=PK[3;$JP(&F MV?>X#G::;&L_EQ3G;C@^&2Z9)MT=V<,#,PTG8KLG.)-@ZQ2%T?V_X2I/ [UA: M85B2QQQ+M9637:'G,6E*M-OFD>Z"%:LC2\2D,US3*NTWXP&D1+OD0O78W7-3 MN5##O4"7QXL!%S\U+5IYME6+A5[%D8^]4Q=W1OT]1\2/38LV+%"3T@'S &1B MO778=*O']0F(]H:_0H6;NSDX1X?;86QZ38D4C)ZPR88PPU79$_:TJ) TW6+:9#M@U"9 MUX:%/B1-R6NK-8A#?UT2K7&3+!T/IXW5 AX&?LL9\7B\!MQ@32!VLMR=%)KU MJ!G98P@#*X;?\$8DXB6M9[\V$(T95(PJ332X9 MPHV%9F(T-A99FPM,;4A[P#TH"]WXN6F!.:-H9^ZB30N+=A5ZL-2;\RD4[@WO M936J#@MU>F,)YMBU:\%87'3V?4AZ8P7M$LV!QA =H5 3&]UR?S<=S1/:%&N\ MO]]:#=,=8@:].=17VZ-0U!/:%&NLX"F"M:IH&",RJK6M.=NUQ4/:-&M-9SP? M4=4I\$J=T8D7.&U%K@#M#7^CLC*$&2\4MT*!&C?'+5S2K>4>DJ8F."A-S%.U M;@V%\I9O>'ZTE /@; /2M+LY:P?"L5\V,8(I#4%D:JJU4A^2I@56+X9\.Z0& M@C462\N6-W%JDS-M2@B&01;%L)B/]F5[')8LYSV MFMR4-O.-*0+:&ZZ$&'2'[I'?%H3C3"2']+$O-$8\)$T91+>%'0Z!)!ERV0N; M9J4LB>5I3)J2UTYB\?':5B?8<:7[A8*#E7N-> I>3' )=CT2F-%'F_->6TV M==Q980E)TTI#Z,?FVAZ%(58+:%_QN>6R?(I'D)87T;4'.WPI=P2';+3,WBZ4 MHT4_9BSM>9F$;^S=25,H&//IRMGN^#X#QG##25E6ZJSO-8:Z$ W*LLS5]?T) MF@YW(YAINSMR6G9[ L'4)S6-"ZHFSD/2E+Q*>[&W;IB]ME6CZ&:)I^4-;_8A M:4I>I['LD9O=IIU%V'A(/'I&G]JD[;!7L\Q ),[10)@9XM"9].:%.R M/;5+^Y;!]EM"V=UTZTNY'K7I6 9IV0YV"[HC;DJD7,-&P/T_A7H /'7BAO\3 MF2M<&0N;FF JS>40.XU8^;B$I.F$ANRZ[FS= #!>;34=>TD%;3Q^:DI>18P* MA],Y4-9R*< FH;%?=JB8-"6OK;PL[+@"YPF.L>J.5&Q?%,V8-"TOMQCL]SXQ MI0754=W>26!=R>['M"EYA6XZ5S5PN94_7(OR M=C3%B]3!%0O&'L34-Z+%_7%+'Z>;.B9.F:7;[#A=#"SH@/2&F4\H@$N=622K MR[6BC-C:00/83-SPE0ZEF6FTR%Y+/@Y-;U)88LPK)_D8:O"Q[0IT;;*NT!@A=X$8^:EH]O@ M]9+231A+YR'"P';%E8_)8[J ]0AF8AX/@/:&7^4+A>7!L*004VE^M&6.P4%F M>$B:DA<]6BM'G:DTL<+ F"]&_&1X&L2D*7F%,CD:5VO[/N9$I3+97) M0$I>_6%5GZ_5KHLQ?>G$!K8PFP8Q:5IM/:FWK1&>)6)&R3?<91\L%6$_IDV[ M^/:X3?!4S[#&LB\REF8:9#6F3B8 MOK(A6WM,&O1GQ69UKOLP;WK#K])*S=+);F.$?-1;6$DDC:W0BY^:DE=UUA&D M8'D*Y?'T%%:8BE2I#/N0-"4O$#$+5 GXMW*YO^@?#LOH@ 'X(FZY8.O];%+6 M/9*2Q\%QT:B*^QHMQ2-(RVL^XP/9V(0V1H"8SQKZ07?&)(REW:H"J8N-,C80 MQ)H:M*GB21,B\-P;;I7'4SO&\[<>YA3%:I.+UE&@\Y T):_-(618PZNP5D16 M1TO2;;1U-GYJ2EXR,1C6&'Q9LL9$J61O6][)MF/2M!#*G7I!Z/6C$5;N1F7_ M-)X<@Z ?TZ:$(%+K0=?'2!QK<:RZ.\W;M+-,GILRR+ZBR8N#,U6%&A;-.B*K M.ZPGTN2; )'M!.M1+&B M+2%I2@J5H'4R^J=C47#T3AWGZ7E+ )X2<D<,C.&& M!]86V[HQ6O5:6/G8D1V/:O8",R9-<3:<3K#PI"T"RZAS15:;[?O=<4R:L@=? M;/+EX;P%7/SQKC"G)8'"V9@T+03K$#7FQJ;+"FHTH^4Q+VZGJV5,FQ:"(''> M\5AM8$R5()?'D&HZ$0]I;Z1^E+'+^OM6V:J-1-:OUIP^JX,QW'"K.'$=DH43 MWL7*9FE+N>2D.03>&G'#K0KFI(95(V^&E:?3B<_)%:H*(D[BAENEL0NL,CSP MK% >4X[87%>K6H^'I"EYF=28D7A7 &.E-H.ZI$R8PSQ^:MHUOME(46WI<4 MFRN.P+(*"]U2I&6>FZZ)S=*1QZ88FN6 [(Z$/21-;U3LIQ5B7HU*&,$Q5<;# MCPM*BTE3@U7[]BR2EK.:56C+^]$NZ/?;$@])TUL5 ]8L\_;)\[!(:D\*0;_; M'-H);6JO8DS)GN_H[2$6E;2^?"(;([L<#R&]6=%N-D+/&0@'05JNM=K&&U6I M?C^F3>U6-,?*D)>G>$T@5,J5H@H1D/@^J0Q,*6-]V95*[GXHJ]'4(!9&*9SI ML7#OMS;BVKO[BI^D+E.#N\R;P/AV^I_;&!??HYK.[\E]4WP,N\?UA==U93=DZKSP+.CT'CONJ+O5\7A/UOR M=O[SG]9$TVAFLC@S]!V'HYG)XLP@F\GJS&!W'(-F)HLS@] LJS.#T"RK,X/0 M+*LS@] LJS.#T"RK,X/0+*LS@] LJS.#T"RK,X/0+*LS@] LJS.#T"R[,X,_ M>RD!FIG?-3/L7?'9[K-H9A":H9EY.C,8FIE,S@QSAR$TR^3,(#3+ZLR@2#.K M,T/?L^[>65KZXE/!@? M7"14.X>4Y.T ^$?^VI<4RH^2\K^IPUO6Q/3)#>H#H"[2HR^A1]Q;@_3KK]X/ M]^>AU?LM+>?YW/&7%,J/TK8(=9%!(7?X%3.'G\N@4!HO@UARTT%YN3N2W"N8 M_O.5?),WCQ=?W3\3HS" =\F 07X4_^R]5. #A'VOK@X]U4=J@-2@IYIZP721 M*B!5&!BA"I[W8:)WI MOIPM#WU"#R#\B74")/3%<&7ZN[#D;WU@9;F#N#*06 MKZT6Q3O\;2^H?W6UZ'INW-')]VP;Q11OLVJ\;9;A]5<-+U3MQY) J94,VL#' MS$C"A,MG*HJ25JIO!!\%-S_ZAFKB@W\F_1FI=O1A/#&D/EE3G[*Z,5/+-5(@ MI$ O52!!]5TP0+2"(0WZ50\(U8._=T799U*?MA<@\'DG[4GR4Y])>QJ0W@A" MI$'OMGP1GTN#A&T$Q/<:^:ZYJEE+WXM<_=N_-,TP%HL,IT!+JJVZFA'DJ?\SA^1R!$?BKFE+69'+)\[Y6)NOWLW>E^_&U"E<#R!%W! W^PI+_P1AR M_V<> !]NU5$@K%[EF.# 6__Y#!O]0)%A:I/JZ$L19+:4VFP8SMSPE8(75?#YL:YCY>;$;/09H4.H^S]RNJ&9CFH' M__ZCT:W^D5MXOJ.&__[#/(3?W,C1O?!,\$?.51T@Y/,;OB4)NJNZ*0!]8)H! M!?;'_>U#*WI7I6AN((P+?7*_91VJ4()7IQ-__ >G\T6,R',,]W__^UAX']5* M/D#R/"GGS8!U/9+*?R'<^ %NR%)%F?#[?G>QZ1[D2-.&#EG='_O<_G>#1H'\ M&S(S@I/<^' N##T#?G47R9SM#K>N[5)NK%)[T'&O(> M:"I%YU3@)+UBJ<*\P%6DR)S6(=#0?_R'R),T@S &80S"F Q@S,,Q=EAU92]7)CZ)4KIC3K-4C][>./0+;,RW#4BN2:>"H=J-)]8^O_/ MWIO[QZC_:RW.^4Q/!132XG9RI5O82DV;A1Z\;Y,C*V8]D_ MRI=+)"(\[4 '!9+6'3MONC7,Z+VRG4B&F M#K?Y\>4)!LL5/_H4TRAB-X>X=J6[\>26X;970MFC3!/[]D,0CDCFW\ RYRMR M)#MZAP"+'\XR_H[8(1C95;',P?8AM.'@6;\!Y@%KA@+6*=5K=V:WQXW9.E?+ MIYI%679Z(3!K7F2=02HGSML#;LJVJRVIT,HE-[$1<:7(<=A2$-.L:_;Y@BW=*:6EDM*40F5(?"%>P+X0ST=B;.H5 MFGA[H( ,FN,_HJ(' M9CSTVZB!UH/6@]:#UH/6@]9_&:W_8$\GY]D*N8_,RX&OT['VC@__,3GK-'O7 MB'97K1Q;5Q1Q;&KM3CWZ_A!+P[9&FDL:A4YX0"MQEA*L7G$L%6QV97:T.T]. MC^4XS3L+J0@?BYTO3O*UT0,,,&C]KC"GKR_:>.9E?AB&E_EO4RJMK3; M;#W.3]T%VXJ)0V(NDJP:'XD+Q^%R"">#N?AQYN*9CV2X.H&KOJ(MJM-8R9YDNX7F?<-F-THB*C4)^$FVC#1ZOM: ]6') MLA D6Y^!(F_9^$\F,_1L&YG##>/:BND8=-88@^[/ 74%9]T0\?(*<5G;&O0B M!/4F5R 6@ O !> "< &X %P +@ 7@ O !> 2,KVX1%/@%8CEJW84?FA"X>T- MAMU^EUOEA9'8JC%13- M)%')#,*/1"TT-!3'T498?W;7*NO7\A:);F64O[]W1A*/[*VS>5R.564E)X+V M0R%YO+D"M!_>5/OA%8CE2GL7P2( _IRR*W-?Z&7S\4KS_=:GJ$X]QR7O MY'2L%YY,CR@8* Y2LP<64@OA03A8!]K(7FI#U,#39*G8_K3&)KT+/3KRA,%9 M2DQ4@6VE+%:)W<>']YOJQ%VMY"39]%>(Q.)G/,C@:P,3R.DZR F69-!ZT'K0 M>N@"A"Y T'KH KSR+D#0>K!PH''MVAO7+A H\%1%;27D#,\F"JG8LKJ0U6AZ M+"?]=KA?1 INXXQ4/S%ES8.4%+*'FH.@WPUJ1L]];.J'1C2/#T1,H'')1(;D MLG<5M[Z<9Z;CC-;\@U-4R;U+CN,A%;\YV;:6DHQ_N"K]8YUBR)$"#*DGCED5 M]52FVDVKMM1.Y 8MJY])R5Y33I%C5E-\)):$':VA)@<(*ORFS_G9Z?=WUSXF M)VKVO,Y-3[80/UK9G-.Z-]E--2X-['RO.^@0;HI_^\'QP$O 2\!+-\9+GYH' M_@B.JMRG.[\<8XXBI[E&8AR<'@TT!305AG@IZ 7 !> " M<($6VB_70@MPN51:&L0"[9@ %S#&;KD=\^(AE@_.>G]$6"161,5:G];_C+5VD$J5C(\7Q[ UU:'R_ M*7"9AJ5%:<9[TE;OV<-6)Y5*IH2M^&?AEA<\II>Z!&:+HO&H-&49?I%<@ L &92A[3R]@4)XC M[_:;AF !&X&Y> ?E626C<.-4LJ )2QHY%]YB"-[L\8E9Q9DPJK;4L/JKT#OZ M^<62 \M6D1WUO_\W-U\SCF5H*O,OEOXO3,P!Y2XA*G>YH-Y<@=@ ;@ W@!O M#> 6:KT!N'U9N(4^K]%"KH+'HTJ*;6)!.4%2(\W>-:+=52O'UA5%')M:NU./ MOK_]/[=SO0XJSHA/=L*%7;1:@_5L:2ZZBW*[4UDGU+&27\D<*W/U;8(< .X@3'Y M:6V/5P2WZT_(_H83ZSTD$I.>U$]T47FS51\K1F?.B<2)I0V/OW1BW[=S[]<& M"92B?$)=[VD9O [[2PL%% -JE < X !X #P '@ ' . < X !W3&77UG M'(#C.A4#&N@NUD 'X B[8H!9]0D==1<$Q\WVF?UW\.P9*_^Z@66H^(\9Q5#, M(7(B3%DQ/<7>_.^_N 3[C\!%_!](SNJ__QE\'(F$33K^,+_NGOP?OQNDZ,CU MT0=N_]AIWF>-6?Y>UPO5E=4>U I.35K]P?:/="AUSW7(X/!TG-CML5A?]<;; MZ::K+]R88L37Y9P6'3]<$9J*?_O!1X0$,!0P%##4U3/4 MZT<.;I;J9E(L"$6IWIDMO6I4:]7T/]SCXQQL)52WI0N25BC$'RMHLIC- M*5N1@PCCJ0B79H&O@*^ KZZ=KUYHX%PWDG>;5-'H=F>Y4=J M@ZA:>4?1:_>RP2XR]8>[@6AW:@8E*MKNF4I%$L!4P%27%LLU,-4Y*NS_C)M> MWC1WTD]8=SFVSW8+T[D\[57813KQA\?+?P0]8;GB1Y]R_Z9VM=0?5]AN792+ M.;U7\AI5WN"NUNYF MHYPF%]AM;SCQ>2M)XE:Q. >T%8)^XZ\MEFLX!C5\M'6:#0*F&H^*G!&WN Z+ MY$UCRJHBFUR&F:EF:WNVS<4[+7UFNXKTL.E-44&D>4#VVX]D.@D\!6[@Q=U M.'_VF+7,1'ZPF::C.LOW5UGG<3Y0I70(4W@M0=;N=#N[[<[&;#N!BI6XFZ"V M$.G*%OAX))X^=N)N[2#:&G(9C=JT4*UX'0T0(=S9Y&O/.-2G@M9_O1D'K0>M M_WHS#EI_'5I_YJVE^,.MI82/R=%[L\JJU(IG=;;NS:.98L=H3+?O#]$T;&ND MN17+<4[M2-5>Q<>YME74ZS-OE6R.-NO29BQS LVS"T*$39^Q@/%KPP-FXNOYO52<4^5LK&VKF\>[Y:YG#?BRYOW M5TZ]:C0JCUSU?JPL*EW>U-FTO,IE'WB1&(TD)<=%$FP";$:P&:^V!?[J>,06 MA*TA+F)+O3YUB^Q89K62N9])?#JABHD[]ZZHK"CX2;8L%DFR MQWL8?X$>_[QEXS^9S-"S;60.-XQK*Z9CT&EC#"Q+J$KXRE78<*P 5*N$1"P M%X +P 7@ G !N !< "X %X +P"5D>@&-C-#(>*Y$PMO[&OOB>)!.60,D9?ON MIIP08C'5>'\)_TM/"V)GV2!TUB&1,U]NHJEVGN)H!44S25@R@_ C40L-#<5Q MM!'6G]VUROJU7B*S;$Z3LVAFV]6* [&LR'6[HHHR%Z-=CS$>6K6AY_'28KF& MGD642=Y*5KG*?Q_=OR87LLDD6;I)T M_,7"?1O]>;3]$:O ;(XGP,\JHC7Y&?KUH!059AR*:4#K0>M!ZV]'ZT,=07IU M-^2FHT?%9G9;DU"R-^R)*A^O<>]O8!+5J>>XY)V)HL%9N?UMBD=[E7# ^=L#?%QV5BE*R!H/5@X MT+AV56FJ"T0*['6SL;P7I[JTJ-5U02H,^IT&C130=KA?A INMAO.SU99\R!/ MA>RAYN"[8^UA+))+9.AIIE$Z#XRRPBK%.,AU#1IZ@E8Y*#<]]Q&Y'QH./3Z^ M$HDJ)VQEH=WMC>X?E%JEE\T._N3$7'+ODN-X2,5O3K:\I03E'Z1+_UBG6'.D M &OJB2-U]6Q>KDWFN12[>3#&4F^0;:T&HLPER)&Z0CJ2X,[8MP]0A((>8*B+ M9&O>0T^_OS7W,3M1F^EU=&8C+K^!R5PAP%YU$"20%)A2'4 M"GH!< &X %R@^?;+-=\"7"Z5T0:Q0"YGE81O/Q*OA6YOHS/3#Z_CYY"4MXWFGCV<* [ZN"SV M5^>%D-4%__,;[=PWGI%N[;7]1%KZ1 9ZS2FK?'VLU;O1C);D9I(U5+(KF4N2 M##072<7CD21WO'WTQ^W"\K6A!$5X(:03*#T%K0>M!ZT'K0>M!ZT'K;\]K?\= MA^DBA2@=&RF.9V^H3^.[3H'7-.YD'ZO=3*PD16>J7>GDAK =K[9%]0*VXSER;+]I\VWL46?-9A^6NI)8HGK38+EB;4SCY,);;+Z; M[2O-*LZ$4;6EAO5?A3Y1J(R$VA6H7;F\6 N !> "\ %X )P^9IP"7V,OX5< M!8]'E13;Q()R@@"_-ZNL2JUX5F?KWCR:*7:,QG3[_@!_;N>:'!1@$9_EA(_G M>-.^F+\?N%)V6&.[56F6>^RL9"XE<]RW'QS9.NB<<7U &9#/K9 /K-67RHR! M6*!'#N "/7+0(P=P 6,,>N1N(F/W&TYM!ZT'K0>M!ZT'K0>M!ZT'IH+X+V(M!Z:"\*?WM1Z MX:I9Y$%,L M!2'%H(PG%?=4*1MKZ_KF\6Z9RWDCOKQY?P2XJIF6C5]E]Y0<&I(6892WK=EA ML-/I6*=?JV@9*K*=$Q'C?.5QV='D6DGW4H5'HY*36MKC6.;26";??B222>CE M!1,3^KNN)UMT1JY0ENMM7IJ58]+L88W2W6EU6Q&:E"N$7W+%S?: 80%C:5J& MIM)99JP1U?T%< .XO:<[ M#.#VKNZQ*X(;Y%T/ < X M !P #FA[O/JV1P#'=2H&=$=^0GV_@V?/6/G7 M#2Q#Q7_,*(9B#I$38=<%[D^ M5]&'\E2?:1U.& A.5)R-99Z7>;HG:RS&1>)I]BCS"O""[9R!=3Z,==Y:U/'Y ME//[Y[=._!Y]_TU*YM#PR*0T+)L(0'3])G]E8*"7FOQ/E(:DM>2J^C#6[KKM M>6L23>3+9DYI$IJ*?_O!1X1D#!@*& H8ZMH92L3B(6^A& U%4TMF5IEKKF($ M;#42O)IM\MH#VUZ-]7ME4IEI#^\_@.QL;+7N2J+328WS.EK,[M(FJ_4'\HJP M50H;50D^PK,IX"O@*^"K:^>K%TY*-/O-PFK=G*2[T7R]7%O5:JEY.H1$9135 MQ::S5F?ZILX]C">%U+K'4:(BYRKR;#*2.E%U"TP%3 5,]0DE_'_&31U2>N_9 M&_],'NKZ[3J1+&N4L'LEKNNE"Z.4(S2WXTP(Z G+%3_Z!$]9VWZUS:U;=3V; MT*L2%^LV\K9(>2KV[4Y. MD$TNL]$$F8ZV1)A)K!D*>"NAH\EB^!!?2INM(6Y'=UM=Z:]"S%LC52KV1O;= M8]=3W);.)GIRKN;S5I+$K5)).+8Z#*WC7ULL<+ HP 6\D9LZ6/3SXR;K6FZZ MR11'7K=>Z\^XF)Y1#3D$/L7/2W*IB9">%#?SKB9G"P-^5!^-11KR($W&?(J- MI-+'>T6_I^HF-$>.UI#+:-2.@LJZZRC6#^'J^+5G'&HI0>N_WHR#UH/6?[T9 M!ZV_#JT_\WY)PN%^2;&/R0M'9WP_N;52'JL4-\D-FY'F\N+]Y78-VQII;L5R M3AV(L^RY=G=:2/)L8= 2^P53:$XRV-$1:&Y7X"-"_(Q%*%\;/D AUT$AL'!" MJ_*5M2J#UH=LQJ$'.80GM(+6@X5S_ "< &X M %P +@ 7@ O )61Z 7U=T-=UKI*(M[=YI2?YT?U#:AZ59LNXK#5BA8Z9?W\I M^4M/"V)GV2!TUB&1,U]NHJEVGN)H!44S20PR@_ C40L-#<5QM!'6G]VUROJU M)C!IH; Q<1[K=!=Q;6$-"OUF>B/*6("D"2S-'V^N!BU@T (&+6!@$%Q>+\!^ MOMH6L L8!!^<_KOTPCVV&MZBNIX6=,2C!W967FJQ?I,LW"3#^(N%^TK[Q#S3 M1OCUMDAEQEA\#H.51EDJFD':[*)8CE$'2XEQT-"S-5=#'Y=@_.J, M627VO& MH8(&M/[KS3AH/6C]UYMQT'K0^J\WXZ#UH/5?;\:A"^HZNJ @5_8;(3<21A-W M8:"\9;<5 [7W,2!1G7J.2T950VY]Y(?5CJ)IYF.KHA=C]>Y&E7N#>H?J Y3*7-WKN,JO7NEI]7&E)IL[6 M5B)9+DGRZ?7E\C9ZV^@6D'AR9W,L6K^C#:W)SQ^WC2$DMJ$P%/0"ZD +@ 7 M@ O )0PFZD<>F-B2*G.K76S>2[TI-DGG4GS17[[?W'TR7)V.]<*3Z:'3 \5! M:O; DOG@K.$%PBC>HO;8Y;H/92EJS[/Z8O-HE>8B":.0 M;.*OXBA7V,OF)P^M>9 V1/90<_#=L5XPY& X6QNZB R&7$64AW&0ZQHTWN9$ M&!.YC#5B'#()#K/2W,D$&2J9X?V]F#F^!Z(WI'^W##)"QE76T!/WA6IGWTA$ MOB;)A8=^M]KOJO?ZXKZ_6G2B:6VQ'9\Q/.P?^T[!$(2$QYUEGF-+@Z7$SY)B M58D:Q5A&/.2R4BW_NPM#[DY4T=&RF.9V_H4N@[L\%:.S%X)\N68WQW M-JD-DZUF9M2=?/):^_,2FU+RV81:WYK2K(3L6K$J+Q^7=(GE8M]^")%X,@E. M+'3=?N6N6UABH;436CM!Z\&PA-;.4"=I/\0@M+9ZN:,+LJ KRG@^J63BRJC8 MI&D-TL098=.O&82WT<;I6^U!JM5&<\\>3K#HX&3"+UU@^SN1WAM/GK;VF#B1 M03V1*[TK=CQV=E^L2HG)_5KK5"U;KF!229%O"9?0%_]\;C+R!;?PI0K_]F.I%!_'UO%N8;#. MZ)7ZJ)7A1>(5DMPCQT=BB1AXA=#-&HH<9;B)"-;M2V4R02S0S0IP 3/WEKM9 M+V#FGB,U^IOF:6+0EW6MTJBR"4><)'OE38U[7-&DA? 6\_0*6U"SBC-A5&VI M8657H2?T0QU9RU:1'?4O_IN;KQG',C25^1=+_QV[-U+^G'19H9 MKP W4 \1FOK6TV)YG4(N+2=0'RBG 50!J@!5@"I U56J#Z JY*@*E5@ 1 "B M:P01+$U7J#[0\Q::GC= UIF#R9/S;ID+[]X(0( M'^,C<1[.*?S$LIH0(.N9C/XO,,AO,' &,;,=_DY(Y-#PR M*0W+)@(07=?6!IZKX"GL6#7+)*.S+0.+>5S"XR2'$I\ZMSD9G:&UA%KL73-= MM;*:8XUXD8@A3@YM$Y+'3?/ -L VP#879)O7SXBLM]2FT8SUV6Z6UPL'KIWF9:[:;D/]VYZ1422PL9.(A;A3I0 O< ]P#W M7)![7F@5-=/+[B1IM-;Z1LZUI(=B]G&CCL-'.G7+;6G*:-1@T=PI+0 M(@3VC?;2N=C=\JHT?7SH"Q):3OIFTVDY$V],.2?V[456<(PZ'WLPS\*5JW9T@FUQFHPDR'6V),"M8,Q1PT*8A%;+> M>AO3HU$#"[NH--4_W8[[K!S4FI;[B;ANW4D+@YLL6/NN6ISZ')2D!P>?."<. M*.A\/IGE*X,$1G*;F933U,:3&MG@AAEB&T7#.D-'CEC6BY^N&+CCTU&PU\>VXK! MS!7;9:P1@^T>!Y%YI'WRQ!1B1IJIF$,-7^3LS"CG.QWO!2DL]78*V[^EJCES M0]F0>4/_?-@KD]_?\L8GA_I6%E:UY8__XG]VMQT:2+$)+4V"9^]9ASPF6(!8 M]G\^IWSJN0[RL2,EC#()CHD>#(7^^W\.1_14$18=6H9E_[TCS8.A!H_G*7^. M471@(T6/*B/\\+\58Z5LG)TW%-NQ\=][UB6285+_PP3_)9(Y$NM,640 M=-1 (SQH]KL0?_K,]B41?&@Y-"/SMXVP^X"]!7+W9_>E<^1:\[]Y[GN": S^ M-1A.C/N>C'_6K!VL .3_PM,<_5=A)C8A[G]UZMF36DQ^QN#!!&W\J64$SM2KMW!_U:E6J==SV?%=C%?J??: MQI9L> =[. +F:0A,/<^003!T%/M1AW ^7J+Z10EYE$26VU&JN7P.,IB MK2NV'AF!BS"7?'>*[=03M%\;QU\Y;!(IMH-M ;SZ6YZ#[3SGWS_IFQQ#K#(2 MD@D9)=68'%.YE)R*)W@Y.1PF!SQ2D@*?>H9%;$G-:ZM-S2Z6AY)6JCHI*Q;? MC.RF3*O9GE^9764=I5/=)B5^V2Y4>BG-; W',BU">7YE8EFIJVEK'94VG8(9 M'3Y:>:E#[GG\].F=-?VADDQ839F7V9^OC&_CJZF7C:VZ/0.U M*IG:HQ)OBK)P?*77?\R/[*078Y7,J+#>ZI.Z%R-7'HTH+2DI_*^@L;Q3%J:) MT2J6;9,KCT84D]S9G9E_2$I>/VT74P^FVAB2*X]&Q&/?8K6=W9>[2CPEM2JN M]GC?;\JQX_<<]>^=7BRW2G6U=#P]4=EU4;=6K6'!STK9\QV(>]F MQC.L(>SQI8HHERJ]@9R3M(&;:SWH[70J@U6$.[Z4W<8>'^_3\2C;'@DEL9]I M-QO8UN=.*(GW*#8[]?8LJ7L-DZ^MFB5+-D5RJ7 TJ@IZ<&.Y5$V*9K>C'-\: M.$E])7,G%*K3$^;-B6,7NMJTHFD3K=VYBX[)I4=WY5NUQ#:]*>58Y7XT6E:; M>7Z=HG=-_'SIMIU2DG?(:.EW*8.-EQ85T2U@"9S0E':_E#9C"464-I7XL(MO M7[QOXTM/J,JP*KC.Q*SP^BP]JRQ[^4JF8^)+3^C*:C*?6=5!^TZ?==2:Z)M:53NOQ M(57%^L^=4)?,EBMDVGH))R8NW M%&>$$<"?4)>[N:6K>N^!9[./[5C+9?7E=H'O>F)B:^U..=.[ZXI=K9!+3OBQ MZ]$=C$],0CLG39=QH;2?:S7QY>>F *QNJG,,H62P2JYNW[&+3]\81-H-5,[TTV]^R$7GJD+D./]Q0MJMC27296R0^;X]JJ M)9)+TS]?6L^6.]''6M%C>XU^69RO'YOS$K[KB8E5X@EV5.:\E*[-4JQ5ZJ9T MJ=LD!_(<7=F, M68KC2T^P"[]HK"KJ:+S1HYO<$KLV]U-VT)2%$YK5EGJE9K6RWDJSAQFKCV+E M7FV++SVA6:V4HQ>V;K3)1D5^6&PTFV)KCB\]H5E2;M2MBOV6(*''>:H\B=;- M?H9>>B2LQ\G]\$Y?Q IZ6ZH.IIP]7M['Z*5'ZC+QZC5M^(!BDI)>Y4KY-3=O M("R!4\N+6A"RC['V5-?B2BFEFHE85EG)P@G-RM=FE8>N+"[T=BV1S6MFO?Q8 MQB]P0@=6IGR7U]M%U.5U"?')A/0@#T0Y=F*V[O7:7:$4W6:ZFV&LF>P9SE:) MK^38"1[@)&>8G;C=-L-)U.Q.S(3) MB^32(Y-AV$O/YN.5>*>CP>- KPM"OIIMDDN/; :Q\C@?6LVZULTFHK5'SIYE MLQ)]@2.C094&'3E3\$S)*\5;SB"N9]K$:#BA+ME^BMRZ1$,]<:LP&V0MI'J!6,RT3=E.2[2 MNQY)X*XHE>/.PTCKSDRVFQ,?ILM-F][U2%_OJINTW-CTBEU4X1./J?%&C.(E M+G9"7_F!U(^V!K.RI-5RQG)V5ZG&1RMRZ9$$JO?W.<-5C6+W+I=RTZ[P,!4J M]-(C"4Q&]?Y($KL%:3'-+G-B89O/Y.BE1\.JQGNI9D]./.B:N9YEQZ-H=-W MEYX S#*ZSHT>M#ZFC&D1]6+.:AUCL;JPC]U!,YY1'H4XO M/1J6N16*&_5.24B%5<=KQF.+9GI%+ST:5G[8C:[*&7W578S%9I0MLO?IO$@N M/1J6G,NVXU5-+.L;)R-6RV-5TS 5QTZ >UC+U^1TT5U)FVWA<=U9LD@N M/7K702Z6:"Y*#B]IDQRRTO.[EL=U]W,H/^@^)$S5WT-^['P[]-Q+P"5PW$N48^M&17>2.1I<4S[5V'_BA M)?K)LPC40=X@N.8XV.?:NQ?;^8J^!_BV4^T2PO?T:SFK@\C-P>TM?,N18:UV M(9[]KSS_"THAC?]XE+?^E/+57SG=%Q;*;\I@ M:!GDP__WC?_V7CIEZ4IWP4-UTA]=Q?&!FU/]R@PXS^"?#=7?<.OX7]"#-^B! M 'KPFR--?T]?]LS+]+L*W'P(?$>+'&R%]])(/. >GW8=$;!/7^8GA;5;6 M)MFSR'J>QCB/8YPG?HWSFPBPB^K40'? %\<7F^.&]>X,U\,6JGY4W#CB^[A=F69^L=@YO&"%^0'$$D#:E X(M/ M\C" +RZ87W@S7Z1JO-E3V!&2H@5YLXYOU+PL-66ZBY. [8M3>[+?7*KA9R\L M.U',,:)[MRK#H>W11(*_M3UCD>W=ERA(2T > :(W-Q\"_5VZ_><,9U!]KGM6 M,H?DI#R40_Y_2Z;H\\#NA(L6&B)M278LJZ%3QUTD-2N6*@_9>E=!T7QBKC_* MU>A83M"2K$@J?4RK'W$N% 2"@4J 2L+EN?TQE4S2C^:RY)@\M4M3'4G;ME MLBG3KLH0E$H0ETBE@"6 )R+F%@"7.ZV[]@B5$KM#+\>DHVZTKPJPM-%>+85_$ M+$$S;4(B^14S;17BEWYXB2/$9T(0MGKK?GI?))(=1CX\KV]5W_7=49!+/L9/ M$.,F6KWSVL;]6I_QCZ7>HAS-C*R5G").%A=)OZ7;$<+A N=;?B\?/O@@!\\>7X M);H?.WWLH7[*BEZB5' M7G4WK>)P5M&F8JK1Q'SA.UYI[@ODKT;(MFD5H[]G@K+>^5S,7P-DHI'F?E#1 M "2V(!@%(>O+.U\[R);ICME.=I: MR6G?#1,$B&(#<7PYXKC^^L-?$\&+53_(M UA@"9NMY I9\O14N4N[8PQ(]!> M,E[@SUAY^+5Q %P0PHS69W#!N3-4[^:"8F&X:,_XARGK-8OIR7IX7QGHQ#H@ M%8#L<5?IOV\Y:R7.+/S^6W]_#FM$FL,454E8J#LV*&]@GRMYPN,"W@#>@-36K:6V?ILW M^D5.2>E+H<*VAS8[7KCZ]J'1)+R!_;-4DKWY%)>T\# /D!T[#,MQF+_\3->_ MB7?F6(9B,]C%M<>;L^S= 03YU640NKAU&"GS[%MV8,"3$Q7RMC7SZ:"*W(FE MEIX@_UJ$JU/-;RTY6[Z7LN/I."%.YFXOMY(YCB; A#=0*(2\@49NBT:N/_WU M5EHXVA>--Z(+*>&4)6]6ZTUX5AXFYR)A [KM!G>B]1.27\ $-YO\"J-!GJVK4Q&ZS&A$.R3Q1)?XA"GG]VT!CFAR<&#=Y.D%VAJ^H)P^1NF71F\++;AWL?H+J@NJ"ZH+J75EV(M5_6IBQ8EKK2#./) M1"*&Y DS5%M+[8=F;%DS>T)?PV:D0,S(9"3-GLN,#($7\K)E24UO MZ#FY*?\<:L=#SXEGWCZ-@+IFF4/%F?BYR*1HK,TBQ9< MNE'+KF0N1HN8TN<__1&X [@#N./2>8%W<8?W6(K*CY/1O:[%']GXR(Z6!X,Q MX0[2>P+, \6KN-Y';=^WA&&4-3*,*U#RQ, C[[ZC(X>YCTM Q> MI[A+"P4"J@ . > \!QR2S%!<%Q>Q%Y<3C$;X9-27M_Q":$Y\%1AA#;S83G M3QZN2S'_=*KN:]$V0Q!TV2QP"WV6*WN)9K6:G ]$F4OX9TLF$W", 1#)UR.2 MSXBXG;WC^"W$<%24'\_FRL5J5>QFN\5>:>7UY\URD_ !.=9$B/"QXX;!C^LX M!BKXRV8>.F>$ID5H0+2.)PZWHGD>@/Q M/_M-6?Q%,JH@$@^1=XB?7$MP,8ST]MDNT Z^/64[JK!M0QK-C&Q'R"ICPB2DV9B+)&-?N$WD@STKB!Q]N<@1!)$OX%I1\.Z/ MO'WYX)%YFJL9M5A=5YQQ7W$[W9D^P]27\H]Q9-ESVE# !< %7Y$+/MNK>B,7 M\";:#$:<+G7K=;D?[\[+"2LI$BZ@!S@*D%$"+H",TI4[2&_D@NG8*3R.M$*: M+6@#WDM:#R+;HG8!<8E.^$.WDU/:U^+-E8U"SV@T5489#FT/J0SRNV$@TW0E M<238TB9<\:!+%=DU?"R+IBKZ2*X\]6N=H#^G/1L,YVTTDGC.JDR*C6Q6**]D MSC_=/A9)P?D>P S #-?L%+V3&:HS;CLO\XL^F\AO[\KU5HH=+<>$&2/07\P./=3KU>URZNAZ-M=7U$0NT=FVJ2V 7:%X M)!D[W@'[ID^SW]?,"HF@BSF@49 YE-%W- R7RJE=CC_]1Y5>F, MZU4L66,1GT3S^VW#0"[V.SF:,.02D53\_)MI YV$#V) )S?B!_X6/;QH:W6[ M2H%[J/!95G&*QOA>Y0M5=DQX@KB ;(1-0!#^R-Z( M2FFVW,0S*MTU[MW[@3$0=-0D/$+J,U.1&!>_B9:U7]'*S][<*QSC?REJH)%+ M7^^SMF.%K&8XBMNO0"R7:)"YWDV.PR"G4(D%4 6H E0!JBZ;!KI-5%U9EH,\ M8_#L&2O_NH%EJ*2(3VP7F7REWFLS^5:]RI1J]U*[4ZH5&#';*=V7.B6I_=__ M##[.!/[:8(']H9 !A., "8 &P %BX^$DUH3$20]WLT?#LX41Q\-VM M$>-,+-N-NLB>,9JY1(X[0R9L#0:>YQ>(YX0QWWW>TT87T C0R)7EEVZ!1L[LN?T)CQL4@L_>K>EA!=!SH! M.CEETS%$"!S_$9V\@!7 RFUEHGZ)E2O/MCRSS.D[6;LBY7$>4XRN?%7&#AG(CP&2#(%(T56F'QU,'82GC^_56U+;ZK*"[=^*C M7II*39E/$AN9CR3CYSP4#V -L+YB6']R7=GOP+JF&7S&6\Z2>J&63C2D52(A M%\8$UOY9E\ES.KX ZQN"=;AR"S=8Y?4[L*[TY)E>[!9GDC9WNTW6>A@T. KK M-#G..L9_L;-:2D_U78QFDMV_%)M!)K+'&^*93-$0^G=N*T8!QWG?NO="^,_= M5)$[L=0#?)_:)*Z=DHP'(YWHUGOF;.IMC96U%F4^17R7>(1CX;@!8(.OQ 80 MI0>=_WCS/P3#^UH>P=M70.T^D<_$H\L[2:FS'7LZ*"TZ7).L@/3L1I9[-7IW MY7D(*BU'HQ-NC9@*0DP'&6AHS2),R1Q^A^S#;6PK?04RNKK]ZL]M*7QM=0#( M &0 ,@"9\Q2_7 ]D;M VSW@.%H#C(*=@6\XIFYRMI[*]JLF;^JS9G%G.!)F% M1U'FZ7GJB3/T88? /SMAI/]\_%QPXES0DGVF ^<@0'$%9X"&(6@7MN'?=(C_ MA9-@2CLF>-O14MER=3$Q>[E"%\UZ*JL51F*SO)(%>O1Y(AE)L$D(]P.S +.$ MBEDNQ03MZE]%[?5.(<7(^OUY19L&^8#+""L>'YH8X/W,;A]4! MN7YU&5SH=()K.!WK:RL&@ / > <(3M+(_PG@ 7JMP#><;O' J7+]7$6O:, MA\*!:Q^">LDK$$MX3G -E5@@/@8@ A !B !$-[V_3LC/KPM!+4U0\)ZU9C.+ MB,$:ZHR-YKM]>" T"@[NM41_PIA)^IP&U[QEM_:8K8]\,+<)ED\DCN2RL6XW MJLF\7L>"4+ MVZDH_$$C'8P -X 'C@>FI5WL4#6G/=FHY-<:HO MC.F=N(SV;$%O$AX@I2FI""_ _ES U<<\ XC#WQ.2\%O\4"W<#<0<\.FI/?6 M_;37&0VB@SCE@?2W'SS[JPV]KC^V?[0):2!%TOE+^PM4C13JF"HT$]Q4S"0, M);U?C/X^QQVJCW([Q+Y.?9M>VJ(T33V4#+7):6-" N2L-2&2/NL^Q4 "7XX$ M8-^C3W.$WDP"CM.=+"J]5)TM;#,-U:PE.FNU24B ['X:CR1>#XI>>?8GISFN MK0T\.M&NQ>!11LGDV99AD'9J#<^CC1PX=.%*HC]?>7=VV$L%5/=*5?^J M9EKDH-)2L(:<-,%!M%!PK9G4=98=)B'.2Z!J(, :%TZ'&' MW3/>1AVA..;\S*'[PV/.B8]>GY.'.](:V4,-,\BI/?J3(VY:YN-='0UR#U$N M5[I7DJ(L^&?P1MCTL>$ M<] /D ^UT<^9_9:WD$^B=E=O=UK.=&N,L6^2M]K M&ZG"BI /\5F.,P; /, \L+7/]3'/F?,4[V">SGUS:8[-AL"V;=X*#VHXW_KF9;I67=GX=::9B#L^T\ROP:OAVACZK^1:RL=YTS=8+FZ'E=X!^ MVV9H=QLG)WK1(=+KF"DI\7 OB1Z;'J9:8T(0V%U+\9$4>\Y*3R"(\('FK&Y8R,9ZT[5> M'T,0DPYK2HU5;<*VE9C>GSQL>%VC%@3VJH18),%^_'ZJ$,.!C%Y82V*O0"RP M*P_$AP%$ "( $8#HXB"Z86VYLF3!/[_8JE7*YZ5LI\W4\XSTD"V*M8+$M,2. MQ/@_XS_4&+*=ZX=NUWH3BG"]$8 KD!&$%C\]]R"-1FCHUD?2>CA1S#%J*2ZJ MFR280/XO+3QMJ1BD6+6%2'_4T$4J^8-HJL\_.+CRM1"#.6+CVWS+X:2[+=N^ M$RN25ELU92%-Z]4XV&T'Z ?H)U3T<][,QB?33YK+SS)%KU66>*$JBK)8;SIC M2C^);S_B0AKH!^CGTAX4T,_GY4T^F7ZD$=NKWJ.,6,OY/TC-;ND>&X^U M#IPHG_2/^+>!Y6VI)7-H(\5!.>3_%_]N>&0:#YG> M9_]3C0U1;U:TUPF.;0O;5LKP=+-AC>48/0N=%R)L*@[-#4!%7XZ*KM_?_'1J M>=$6C"\G;!-)K9RNY-/5LC-&2(Z+A&/(EFO)1"3.'Y,,[+D&]'(]Z;DPTLMY M_7CI)M>QXT5H1?2(96(<.E7@UTWEN]\T7N,,!FI M4*K5R"F5]3S3D%JE>@ZRGA#W@[1#N#U2T9'KHP,[<5W+33>9XLCKUFO]&1?3 M,ZHA7XC(3R8>ZK8DQ28NVZMK#75=B'/=:E..<33OF10BZ=CY=^KXVC #*@(J M^@0JXF4SD1]LINFHSO+]5=9YG ]4*7VA:-@)*EHDJX62V.BKNC>K=0U^]F"4 M%V-"1=CQ%.)L)';BL!.@(J BR(9>&15QLE.(1[V67EA(4=5<9&59W)0\,314 ME"YPZWFEWZZS[3ZG<(E8*K;B14)%I.$LD8@DDMR9-O((023D0]Q7"7]Z'L<5 M(H3OVUU)P"2E6M[ 0.'HZ_V_G[>G6PB&?E4$'9/'QF+M)3TS*K59%HG3Y,@U M1N&Q%0U4'/40ZGEL(56PNGDV?C^?88+FJ=N:3D98X?RV(A 1$!$0T=>.G_'F MK.3F1!3M+J9NDQ4;^B9)XF>\GRW]G/@9$!$0T6_N-1F"H5\5$84^>M8I=5&: MSZ7Z>CV6;6<+A11?J5$B2O]&]"QLZ=4_XYHCC_43-TH)K5!NX_"2*Y#!V8\P M.BV#U^M8+BT4B+(#. < X QR6/R[H@.&X_*5*KUZ(T'U*JW4OM#JG@(RF2 M?*DFUK+TMVRG=%_JE"3H$;NYRNDK$$MX=A6[AM4X#'(*E5@ 58 J0!6@ZHMM MWA=>X_BBEG#)7"+'I:?&DK-^',M0; :9R!YOF+EM3=$0_\&T7&:#7&:N:"H$ M6,]6J1F"G,ZY\NIA&V?(?LRV",E[_?8#_K#6;::Z+U(SGUBSW$;D-C/<3 MJ2JQGI0\=;%H23R:VM%\_F$;;X_E6)P4[P@1@8,R;R /((]_3IU+#WH/>O^N M%H40C/-/]/XFPL8M\GG4&D4]!S&*XR!L&UL#5\%?HB=EHJ"3GBR]C$&:[/&? M\>#H6OYQ9V:&P9T*(R]<0@]I=YCA2L.&*!).(MW@D43R#2>I M R ,I MGE>+G=K=1J,B5:5:1ZSX7>#Y2KW'E&KY>JLJ=DKU&FQ:!K614#@,A<, #@ ' M@ / 57U%RT<>DDZXLT6)'XQT[/*?=.\SX_E M6(IN(12+\&G8N .X!KCFZKGFO%F/-W&-E%+CL[@<5_5-XRX]C6G]@MYH$JY) M?/N1B"02<&P34 TD,ZZ>:LZ;S'@3U10?ME,D>1-)]S8E.Q-="K;CFS7D?!4A MDGJ+6?-1[F2(?$=KE^7Q"^L^SE\$%@UAJ2F4DH>2'\_7A_(\B>N\T'E2JQ3* M&WUI:U*TH3XL'S(#I)8P.::ISQ=)4VB>23RZ M"ML;%GJM:6'=+JPH721(76P\#HUJ0!?0L!,6NCB/]_5VNNB4NFU/F^07$AK. M.GITM)A54DU"%[0\C$^_P;J@GM=_7 5/^V=D)(<(B]/>S6OJ:4Z#>>U,$*,, ML=N)WW)#G"?3G:L[<4#9$,.B?#QLJ^?TM9'921&]E-U5;_O@O_F=W MVR%V+FT"]TGP[#V:R6,"4F/9__F5C1],;91(\$ST8"OWW_QR.Z"E* M%!U:AF7_O2.C@Z$&C^]6?3WGL^( M;!B._2[$_X([N!?@X'%N._)^&?-WP''4IX](%F%F=B$^/[5 MJ6=/ZC/Y&<,(,YKQ;//CX".,9T(L!*E9PJ,8BGMM5MZBT<]E?TJD"B5#=YU* MQM(<)W-L_)M_<_\/\C 1XX9<:B2S+.;%&&*'<@K%!S([',6'JL(-DVDA^,9G MXR,0\FO5KF*K(-8B3*F6_4[W]&MW,^U2KB2V#O?R\T=:JW>D-IZG>JU=KY1R M8D?*!3L BI5V!_]*:F;;4YV$YR(J1;&&%NP*8) MXTS(BHP77.7?YQ[0RTOJ&]?,@ B*AL[%T\E8G$]P 09\VZCFS?";##\BCO0\ M?%ZWQXJI;>F-LGL3!?\BFFK#QH:+Z=)?ZZ/\SF9I[TV6G.8,#V'T#6:_V-=NPK!*KL/%Y_[$Z&K(/3=]6U4P/J:+[RG4RN8S[QB!L3\[Q MZ[JVAS[%.IAZCJN--C\O.*FG]>9EY:2WP8:RY<_+3Z;!SW\E;_$WMB"037XZ M^K._;-'Y"&B'X?P= +A_F)S4SK9*#=))0,Z3ZQ0E)M-MEVI2NTU!G!';I38] M::XEM4D;PK.>@S.KU#,U:N"?AIMC]1!E^TZ*U]E'*9'K6L6*H146CR),^&[" M,AC]>32S#V##6BFSWX'@#1U,UQ=9(+6,!S68* MT[!6F,S;&P>3#OZP4LEB+TMEE-$(TZI"'*_=@PN-]NZQ_S#$26M9 V3C9V1] M5^VG]^RTLD^7BZZA8&(:,HW=_FS!EYB*-M.(S_;"0\7&_B[TDK;EXJ3/"T8"C?@T>&17DZ@1K@>:.CQZ*,T-?>B7YN6TM-)>-F M1IYA,#;=!P3# 9GXC@B_D3F.D*N&> DB*U*$R@YS!PTDD-]F,\UQ\,_TRIE" MG'.RC*'(;B,^1D58>M:_E&30]BD>_U(;X3;!LR1O.J5*. MR9Y^5*?QK6T=N=^IV@WQP"U,KL0V&1J>BB^W-7P!EC#^1$5SA/_!3_-O@M\# M P1?C5_)&V"V9#R7& P4 L$E1#<9M/ T_S4=;SXW-/( \L(6T3NA8)!X%DJ$1\(O^!.Z8/?G\'EX/YW6-"J-?OI 7??GX!R MH"AX''/?/#G4&+H^)O]Q@K%B8>.QV9NGZ_)GP_@@/:?=+"GR;8YRS% M8);P*&;*9J_0Y*\C98#M!\5'FHH,S$)8U.1R#0].,0QEMWIA MZD9$EK.Y95*]<[SAA'#47)M3=/GD3K]+9I58E,P2_Q<9SM/\8,Z,X.5"PU_= M+RJ#8$TD-\-_QR0[LA5?LN0>;''IEO;1SP^Y.T&2IH#87*5.RS7\7N2])^!<-8Q&R+(4UN2Z;OP//9P7-D>39>91=X4,1D M"Y"Y&S)^@Z+@9UF^V+ ^FG0) M#RC_B7<957.4\1@S';5'3BW_3^_I/X>\"UD7YYX]MQQ$WV*FZ.1C*DWS::'$ M'Y%<%[$9G8MP9]=!]9&$P30CP]MS9#59GJV7M:@E+;B*>S^9W;=C))X20H[4 M3L3?-;PT:D/\UZY#+?C] +%X?^SC&@3BV "8*_;>=G@+XLE%1!T)3*E)JSQ1 M(88H_L;6D(%46SLH1_8T;[SQ?;$AA+Y)8$N3!OGH2[W*V9ZH *.2K1K#O!N4F&SLJIH=H MD!.[$ [E*_,4./?"(5 )(G38D/K??W$)]I_JT_L.,#/@FP:O1=YG_^819NJI M 2Y_'H2'S;@ E1HQ&8V=:VIC&](R*:A]+-,K#ZE"62J:02^@I,D$C\4/1?N7 M<-[X&N2),T5%WY^4B7[FD2?C1T:P=>C23\A6ZT;@QKM6Y"1E'*@,88HG89.+ MEXKA[34RF!^J:(:%K_=-7A7A"<"/8(@AO%N'R.W&EJ6N-,,X<2M[?Y8IGC-L M$='D?^#5[33&(JPUG)!]+VE$V]DM(3^/@)B5Q$LA-_*?A9X]S#-WFO+4,HK? M@+@8S"YM=6J\ZCZNX+>8[MPV%6'FI O+@<6)X66MJ,5+I$A*-5SLNN]78KR: M84.;\K*_,N"/L;ND:A@2-C.RL?OWDP9$RF0XH^? A(8 M1 =&@8*-('-L(.I'VFB"&1 ##;/>$N'70W/L!F,GU&>1/3D_+?_4BM.H _8W M5:G ^ @2^GZ5$8FG*7,'_;W[X>,J+P[R1+ORAZ=B#)IB)[_2EXH:R@9[Y'^/ MM#523\W:0;YY5S;@3]KS[H3@LA3YVW\.__!'@_JIBHN^'G[]5^K54D>E6=SW MGVO#?BK=.LKBO_=MWU@"4"(!.2Q:RF$[=8SL,W1'14B@/)=3'C[4RH.]"&KN MD"7P8)_JW?H(NA5JW1+"IENYP,CR QH'#CYQ;(8(U.HJU"H6-K42#3\%\()6 M[;)>IOP7]VLP+^$9/8]=8^<% M^R>^W[('S^@IL+MC8LL^<,SQ1Y:QNX+$ ZB/_Q_L!OV<6-[Y/M^9'O9PL--S M&H/$,W+P3\Y((]X15AT:0XD$026#1LOV+I8?FPDFXN#R[R<=M6=?.^E]'_U^ M_17? E1\0\7WQU5\8X $$: KJ\51>ZB0+]1&LF__(S7(TV_$9?BPQ&).B"N MI]0WS9S27)WE8>[^<3G MJK3L"2!6SLATU#OH4Q/SA$- MW@7>\RXBK#*8AQV:G!QI;N3GQ4UQGM94\J==#C/R-*=#R_$3Q1X-:]-BFOW- M7&D^],:10AN0QB'SRMP[N;[B>, MW-!_[6 [=9(V(*4H-%/$T H.;4Y?PR!#I%'/O6OW+#U+$@I/P_8M$?KF](M! M6NLI^HGU3K/4IVRJYA(+0O,#%UH@!/(5^G4_&<4,2+$,?C5_')@QOS//Y^\$ M!)Y"N3_-RXJ8,X?6R$I MU,RE131O3OL.21T"R:NI6E 4ICFG_D(D.:/O<_!$?'_[9SN7E.LI>X"2A,K> M63\D 1+,-I"O>*17P2],#&2QR\H=YN05?P T?Q8,X)G PH+T!H:61;)#IDNF MP3!>2EN=) &J%(3#L2""DE9:S[!/ IPF4E(L09I!QA-F1BHWYP95K9GF!!;V MCD()[K"0/5ID1;XD-OL4XAXF2'*@(>CXC]B_G!IOB( 6Y"$ MHO5NGE^C%HP%XTCQ'/2, _Q7"HI5*/1(52]]%*U(V*&$E)=,#@43I#9^UK] M'LS0UGR-#=I0_<)%ZTF7]M6>6&,1S50J!TH8+"38^U!LF_ 1.J@"\1?=TZG' M%Q(XM">6U/.1B8J2=?I@9:0)W8 E;-7G;G^P>/C.W#+I&K"7VLJR=0+N8*A( M#<^RUCD911E1.V$O\/U ]J6KSC$W["]25HI]0(C[J2;SJ#E^DIM0QK/X8$#< M-+,<$/7SI3%X2E UQ#@3A%Q*.W@)\RL\L65-J?*@(&%?$K4#I*]5NU),DL = MH)VEA%7:IOW@1'55M/LE&,:1D*@+2@Y^5(F0_43_$*^% S^W?[#.8,:F5I3J MV;O%.%C5GBVO![R QSO4[*$W9TQIJ5)R@<^:2_]M3FH MSU9(!IX6*=+G'#@PP:*W@SMY5=IG0(II3$(Y2UIO1QM73KQKP =[JE,/3>V= MY;IY8J*=A?@LO(5-$,?:"68/\>?2/'XT?O*A%7_ L3X1N]0R)&/Q;4!$YYUP MEN(3Q)/7\50GME\V=[5-I&H;LSV=4&K6!V54FX-ZJ8,JJN],G=(;K?@R=B]$ M-)&6>S[)*?+"Y!.>IU.(Y4ZD.29%070 H[V9[-\;"R,EOQW]3+0K=IQO3-H_37]C7/_E@.GA_ MHJ(GUY^]87#2*")H#\H!=_;39DMG/AOP)^R$PD0[LQX,6KB=7 MUUO(>0=T3[>'!5.G0R#HUV 1%]/2U M*4\1PCZXNT%:Y\B'EN?.\0J&OX2IG70>F,/-=T8BM?O/%I!@ +14$NV,?3/H M? K\"U]WE)]B6@%ET2HNXPDQIZ0E^C+%[^3XAV'0'H(7BR:?Q1#F%@D':WM6 M]:.*1P\Y4(N=3?B+?B-CL0@WHNR3BQ>SW:P MA?+/(NT>9UH4 MMKY[1Q<9I^THQC,/B8J$3*$UQ)3Y] A,D:1A@[Z50QP' M];E!\?3 )ZTY5I7(/FQ(=%"?SV,H 86C(\IHAF*;085E[Z"[-I" M+V@!D"(K]=LE_2YH_'#W%'ZIR>-0U#XE;$F+Y:ZS M-O*@L:?#V^P9\=*CXZ1L_/N2/2=V;O<0WG6!N0G35IX[#4^OPLW5J-R2*?H

-7.1*D9DF8?>;Y*, 6@CN< M1+TY,T/X&5CDW2!Q@>?-_RC8YP&/9>@[->;!2':A@->#Z4&ZSC>H:#5.4_53(Q26=Z>,#C.WT)-A49T-9^O^S M]V7+B2O9HN_G*XCJTR>Z(X 6,]3N6Q$RB-',8&R_$$(($ @)-##XZV^N'#0@ M['+5M@UV*:*[MHT3*7/EFL<)14P3)"9A$]CF<=3."7!9PCUQ0R0P$A;$#C]1 MXST-*KY9]BGMZ3=QP+]B3 MP /I0>#+KCO'[1.$JVB1&8!I"8Z*R0>] YK%*"HB#5US_G!21D\=/:R8FA: M;A8BK8)G00ELFOA3,MPP:ULC3 1[>HP(LC/GOH2=,YO T" &M8S-TK,.=X>6 M\6E.O"HX_J>X)_?LW]L. 6Z4V6+$S)[(I+"?.4!Q+@=S5L(^G-?@DW@BLZS> MVM-7P=F]9Y'CL4%D"21!<[S J8'/\:++]GI8UL"-!#];5.RTT"#!#2RB7$\W M8]MP[40FNJ%_#""LVQQEB_H6*'G2?"//,)A+@#RW%Q"1G[OUR:=1@? M+<=F?3_8EF@=J+=)E,],Q9$:2N'8@QW, W%/@+4SECQB!-.4HFY\CK[$>QA, MOZ8.J@=F=IC]H(=3;0$=0"1BF.1D%T^Q49&?/1Z)UW@C$I +0A(VSIS(C6&R MDSM1(PJ2*TJJ<.!@R-@WQO(D*;(Q2.#S0.\TP[1%5WOS4>(9)W34\=SB:5A( MHW)1ERCZ(O533PF[),YOAPOH3K\T%X:N5QVGMM F$\Q_CXXADNBE1ZGSA5:D M$YS6S[ F0 8B&C N$1R"J<^NYD7-0B?=#!Q6$NZ9ZWI@>PRF[FY8!J"LS:T% M$Y3(YG9-\SC[P:;GPA!;(G0YLRP*6AYF8@=SS:>]OE+M>D3O;M M"7A8P6?^\3(P147#WY@+["*AF[,WU,)S+M#V7^5SPFC6W MZ0T[;:>OC>.C?D9[<6'G:?YQ AA(?< U4B 5P:MLNG>%=H-D(G%U2Y)A>_I& M>1@PEIA ZIZW@*+N]JX!%HGU;K1A*E 1'Q3Q%5!$P#=!E$%'F:5!1H=9HGO! M2J#J-(F,$?V9*B@R=(W8$1N4PGWBXV4B[!/)5I.R&:0%Q];HZ8L3O($-36VW MKQ%V0+CYUU[&YXN3(<'AE#?@G,PY#?S2M /(,H;:-RZ@ MW>1*IK]X0M%.#0651U'XD'5]=!U46$YYD-C3F-+3 !&"#;8% L/11D@P87VF M']%Y?,%(AG.0V#TX.?S$1'H))_V>)T]$SOD.CGXZX2"(HL#&L;'E=."AN6 $ M.:!S#A;"-(ZRAQ@/S&W136K4TJZ8WN ,\6:P>,P)"X$;Q/ZR(-%[DD8=K=LM M:&"K8"MDBTR?(\KSB5I^-@8-TA1:Q^(=NH$>%N_"L2C)(J85M@N,*;Y9ACH* MQ#4A.0 3C"_I!0Y)H,F:@AJ^N_)F5CK4XF4HL, Y NA;@/H+$6#:]-X3\"0@>$ [";Y_H,#6Z%&2_&LANA*!S7QW:G M->W-SK33/[_NL_89PM-J/=!YKLF0)Q8/B@ ),4)]A,RF0GCE6&\\I+Q MRM0OQ2O3S[_C15[Y@1(!ANGQ+-&WK!M]Q%/ZLD0YU',2X0%QJ_;#JM%9V?O' MF\2N\2#)Q_WGX_'.R6/HZ#$X>\0]O(_A\Q9)Y0M6KT3=1.D84A]B)CS%F=!0 M=L9"(-V3/9F4W%I8+4"\?B8J!M7#L*BP-1:QC>!4(5]NK$;R"MTVBKA5/U'/ M2!HNJ:G"WM%;L-2T]?G;C@=( G57LX+>A4T69F_Y,_H]G)(7;>Q5G5V(MV/0G MQSE!$-/1MG%EG M_]+RI/U9!$TLEQRZBE00LC/O"\W'-Q@8"QMCX1-:8\VWH MYEKN>]_LO-1C.AY/?,6N[H!U3Q#W;BX^<180'Y;;7S\*%\]M 4H0?)G MJ.=J7&#>"V8;=PU\T0FWL(PREV;/7+*LZGM&*2QK !?H8U\,LLD4*^:ILJ0U M]X0D:.(EU'7[O3@@ TENH8ELF5.H'R.X6!E>@-XKLZ [=O7C M)3V\LQ9&G( MX89\S<,/0 M$%E-/D,Z#Z,DI>>GP'5S+?R[916?D'OA-(VEG,"/HZ\XA,N$BOCE#IS.O2V8 MZ>&\'QOG#'C^= ZGK($#B%V%>JI/:_-> M%+5^0O#I*2<"%]T=ALR3;/JF!IT; V3:1XVZPW,WIL4T9ND23R#J+U5"?HR=<"M.#V @8?^P'.[E\]DT, M\;28TB7:(P&?8L=6PK_![C1 M"\R"-\?MF8<[F(8U[H$[F#\H)OZM*1Z4M;UNRNN);(SUY+@G"S?YWDK>]?A[ M:=\[9$=SWVQO@-'WJ6WL(9=/UE[-68;XNFZ5F4R82DLTC/%6[%M"=K]K",<5 M_SC9[+:6,-Y_^V$M%/2,F 88 %,OS%,&&8_05UUE@ZL;Y3*P_LTHO M#U@P;6$YC#YS^EOX#1S1T\\)YD1X"!@#(BZ]@4=L(>RL M6"2!FO6UBI[91?!]P!.\[)6@$^G,1L8B>D*JQ-E /W#'3)"ABUN<8NSEM8X. M[LEA\>*&8Z']=),P&%J>FCY^'P"0@UO/'A3,N*DLKYUR.0?QV$Y.'OJ3[4!6 MF[MW&$#E[.$4/4XRS47&T?V=IN#!;C[->7R@< )1>?I^;*;J='LG:? N:U#9 M $'Z4O_AKB>%C ?;$L]WPGA-%5!L[@4Z>,V0T&9I!22J3JF!56'B;CL2)-8Q MCP1%"1D@#A.\/$'P $V=NU;$,RW<>(_V$EF/$D:\9-"G,YWTF A[.N!8E M0X=);OI:D:+."-$H967$=L03X6*.O])Q%UU""ZHY^-0V2CCY0%3;LUM=F]]" M_)_H0S5VOE-%Z>7!C.IQ=U@LE,:MD+5EX?YID>SF,WPP_G)^W6>-.@/L8AAX MM*K"IV;AOZKXK]0%\"^/BWA$ZUO5,U#%0OJ(7_=?5+# @X-RV*YF1-L59A!BJA M3SI84E(%A4=^1AG%=M@)O)G,L346$0$[AN3>D6QQS-V]5>W$EG&-'=N4?5X& M1PO"T'C.3>MMM<::Z9W=L6.P$9Z.'9%D!KA()+G'[>MX;7V1$-: \^CA<2?O M\NHS0>6''JOLB6JQ=_K+R(BZMK5U"R^P^5SE ;HA4<)AX)GCN(U' MVD[#-'*B,XH=FVW**N')0F_)CZ]/KG(N2DH!1;Z*1\RCOY$AL*"\^?2+@-BF MTAH:#*WM-7V(4_]*/!VX'M,-WC!![_K)XTA=9L%>F#^.E!]:(4^\)C3CE[IU M6$7IN1@8?B84EKH&K6WZ+]&C#4BD%QHR)Y$<,?0][DT';V9:6@ 89QHJ/0<2 M!@3:N3)X:K>G)*#6V[,03[P&,5T=O5C#/. L;W%P#9.?<, ETY+?,_;C3XY1B3S\?KKZ?2FS1 8;!AW/4$BOZ*-/'H.!I8 MAJ.BT4;N41K#= .?I!<''M9 @87O"=@!O!&412;/-:A! M_KN3@.!V8#!DO]<9Q[;<'$NF<.(4K@E4&!&UUFOMF3@)3X4V!<3"O4C0LH8# M( /Q\)P"N#*LLCR6.%$8'3/R+%$6\YOM)\SK)0>-# !W?&I@R3=/_'QS&(16 MQ'D#(\IQ;)%5!7EZ1ULRNGX#'.]D?KB,W543&7$>6L.(Y,>*1+313EF8TW#2TQL['XS:/GPR M3MK:U? 97VR89120KNH.8T9@<*;-GZLD8XFUGL9;3I2 ]BXP:",5/ W%TR\& M"GE,G#J"^1/B,+9!JT4M"WW!MDB@X4P9&$ZO5G63E8_Z=FF)*UG#/JN37IGL M#QJS46@^."T./.VJ$?^_?R2RW%^>*E9/[)SF79QVV')QGK5+/P_+LPY$TO/7 M?1U$+LUG$?E?2ER.1R-SA),6\V>+D0SW3]KM#'=&^3<]NHEP@;0SP+67\D%T MJOG@*) [@KNF(X2W5/)V)UZ-2<&VD(!UNMO2)&X6]H452]M0S*F".T%=#89[ M<_1).H]'90#C"/*(O84!IQDS'B2AV4%_(5T"H>,"U$3*$IU .;EBMV+Z)($? M4H41@419)ARQ(Z=@UH 3$TM$^I;+2+O^ FWY!C 3\%K&1>FZ1I1SG+9#9V= MBIEYDJS3Y^^61[6TME;]NX?!H'\L]Q?V/N@;.K_NLP:?,,1B&&21#E5_GO6B M4!;'"I*I$,79IPZP&0*0<10J\#RD;K"4C#VN2IC#K!^J6"';73_*])EDF 4$ M6\EZ0NO>SL*>V(-_0 -0-'XN;2A. Q/P0JPHSF3%(GL_/RCL2-I'Q2,$(N3] M9P]V0F&_3A17@!2^T@<'O@ QXK %F$(8:7X:[<&W2:TG9R@M@SB&MM,B\485 MT<7W)20AX>XV3HL])_[BS^XZU8!,Z%5D^=[H&KBTA3&V)$R;=H&WO.V(%">3 MW['76-8F1BL:ZM+=B1M^/Q--V-3D/7C=Z'@DW_'!TC-7L1F4\SJYRT1]##90 M1&_7G&X KH[YBB3B8W%^+'0RZ\*P<;L>MV8=_CZVF%\BB1A7+ONSB&%.TN]S M]9\E%??$XH@K-\S&JO*0[4[GQCZW2O&O22J&(L?STH!WNUK<'-TEE/GQ<-$0 MQ[P#C.=-TUZ3RQ8H8MSI8/J!:M)#E]C!Q1J(O33![Z >BRINQM#!!I_'!Z1D MEKW* [?9#(_+C)2]J:UZ[2E/TK)CD#,9\/P,XWU$'@;FN+@M(H?JMI-IZP@ANWNT_QYLJP)" V ]-'$#OGX$Y&C&]T*2Q> M$RA$) (&)[3[7)?O]1H:KV":8@;7NWKX/@>R; >+O=I/K@:"O+NU;POESCPU M?Q%96,,L2+^6'2XS];;C/REGPH*8I98_([VQT\/'?OV57S_/BO>_%$HG48P8%AYLHL($Y7@O2J]+-G' OV$--'L%LNI(9-!,PZDWJKHW*;K372 ]U*OTH8O6R>O(+'X'_N"/D0 M+I+P\(O&++T0FE-3$.1;\TF?S$=\K\M3<7V>8= Z$VW*LL!M)V4QH !2_*+W M[G9I+C,6@9'+/X-X&J28R!Y&'K(T4^;2H!A3-F@+9J -C"]P16-6R#S>(-5] M?%==">;L+K'DDKUE>5W2T]F'.4T/_)LR C)MD8YC_K]O*7](2+/74]VB?_;* M"W0-8$PB /7D*1G\7=/X^1R:#%JR(Q3:,XQ&Q 3]%D'6(5;TDI[K&U0S=M4T MUB4N]MBLUP;CN^4RAJXOGX]GV,4Q^/SXIV/9L%T;56$S-)B*4 ;Z/%KX.A!+X8Y[8%.>10C$>Q+N% ML7D:CO:#?JZTXE;-_/[;CPSW/$JLR4OIK?\;FVOX38Z;#DN!J9/I=D:JH>]@ M@>3/ (#X%)8K9W6%UQ9@XGQS4[&,].$)D;(N[L0>-[;KN@GTLY M;RY/<)S/^=TY(5FGN^[5>) Q&U?6KQ1:@X\16FQ&-#)J/ \\YZ5&"A!1^13SIV\M$GW-G/U5F7A: GE?]Y$5F (S^BGLW>?,%U:;#=9]I!7ZF%YR_%=QE6NIZC/PR W(-][!>N[UU MG?AR6RXJ96VO+U=ROYC/]WI24]8^83,(7.1UQ_BV<_"(Y^3^-HK]8F2@;] % MY)//C>0D%LUI 6QP@=4X++FG'S+5(Z"]P4 M&\<(/M[$>T_JGJ)M;-:.1">)Z2>+;2VX'(MT$A4G W39GGRU< HK7@/91<8B M>RKR2-MLUHC-:< " S]@4@BX8^DD&"A2<"8&L4X%Z,62LH$9PP;)<R*@5V$10[06;\[36;>">S5HHSC_ MYHG&F2D$%0W[FT$\XO'>;' XJ?:V30(:^A[/D[^_IYCQ&3;(_N# _CA#0?@C M!4_-^AYCZT[("IL164Q7MWA^><*AC!K%.0/RCIW9=+0XDH;.%&*KWDD@[\S M> T/],3O^10/\D]/KPCI)#BL[S$G9!'5"ZF5^;/10'_>K.GIQ>MH,,\FZ3N\.! -%\U% M%"?-DTZK)' WE;&E[QA2Q1+[@FM-G1N:1J83^N8[14^3/@,Y L$*,"=QYG2\ MNV)X>P.R=J;8!^P6,OCFHV#]SE$1+M.\ MD$Z-JU(CZO=!RXTL[DM2G^E:8_ M/))76\4,K<:&3=2]W&0:G,^$^HQ1%(1!@H(I[#!_+_ ,$PQ@3T\7,3 M+JA[^)0DV(NH/QF"->BO?0LC%4-OG/52TE7$B1T$IZ5PGD1\ME76M^K<)J!% M;Z?HSO*;V9I$!^0Y6_F78!NZ^6^FA 0)P[68W.]XM_COTVQ"Z%/@ M(WKYCD MGK^B+_< ST(A$L;?F\I-\R4P\;[JV4(#H$OOGG$^-M16LOC]@;3BH-63&DO_ M=JH9G^T/2H(!R.X#_H!T;LN3A8^;;-#M$7-VH2!KVL#B%J>_G3T""2*=L?$< MYP;;/4LU(B+$=;6P4!<-7COWYC\F8\+X*=>3:L*HTMFU1Q]W.BD279ATCZ6, MVWDIU/6,;E9#SBT_HE MD>]/OOYTKH,>]R=E'?QKGEIMDEI.^ZCZRC[98[&SS]NU$%$5+9*(!I#=>1=C M6L0!S=HS^S.;G6)RARNYNR2S]S#7)%S)MQU"%BR*/SOY*\MU)HX^M_2%3&'% MA4G008DX'A;HNEB9#1YNB_9 O)JXXZH7G+"EJ3-/%MP0,6C31+K%ON&65-PX M^LR. @T(7]R1VXO0HO,4J/QD+E$\08/PK],[I*"/1W@H.":,37%YXZ,]/K_+K/ M6N "LHS6AB( D>H.'UNY$4UT*X A5,%RDSP4D^;&$3,=)S !8_ LIG&C0-)< M(#2%9\YY,S21_0OI5O"\J>WT8"6!%J2L*2I^[4_W1?T6X%]?('+:R;3]+K+8 M\5A&"QP=9L1Q+P5C9[YM>8:,>5V5>"RUB""@VJ2@A>B(+M\]X0(.!R9#C,^^ M@ XI=29;(BQDSX]&W/:GC&+CD0YK98O;I-"=/+M[5NSOKU@A.3CG8I5_4,NM M?)AV$J:=7#+MY(5$DA>ESP6"?.A6WNL[/6Q+<'BC\3I*R]ZR1PH2BT!KNYKPXW.&7%'=LU=,=VH=?'N&0T\K.F&,Y(4JSN)/\2B)^F M25M3(VE8UQ4DB^_0&EP>^R\2JTTE4__^[MT6Z V>QX&2/! /;/Y1'P]NQ@\8 M.CH!#/0@+2H .-XAHID/&^ MT#>UCMI:RLSI2N-)LL(5-= ZC?2M>9 MSB H7\MV.!X9]D34%-KFUTV5\$Q9)HUYF8L5E,3@%,!@Z3^Q2A%[TZ;.)>(N MV#;!--QQ"&MVN!$Y3A[!#A+BDYG(B"APW1 6\Y$2V@T9_Y")4H(@K03 4[)V M>!\8@ BBO23=WRL@WDU5C6J06-E^ .\9!7Q?ISN#>_QG/N MC.5&@V68!Y!4G3]:EX)*D+C@_):247[/;FPWC$NT3#D(=::)_Q1K'9C0:?(^()P?N7[6)>[XLJ SL^1D&;E3A]E% M(/.#6"2>W?L3H(@#60N2(YE+]3R<:'$W A=BN J;;O@J,/S+E.5("]D D43R MW]?CLZUYYJ!XI )B\@YS[P\IP\[]C&'WY3F&8L\)/%!^G,QSB!_7O!-\$':1 M95B_8]\L.8UE2!J. NTFIS8NNE_)1R_U0^V[ML"4Y+:CP7B^L2=H/\X<+HI6 M-!R"7V>2UX&S6">?N V]B=U%*E*0*$,6Z/&DWPVN/X0H)_3SIAMG/1)8B;)Z M='U)E%]*"T6>L1&88#?+DF)B#!%74.;$8J3M4M-UY_K?3)@J>Z>"2,,98XH] M=P0R>.(FZ:>.?=\()&XHR.F"@;-36.(H>N=%V>LO/2KMYZZ*$P)6G4F8C+/2 MN%L49"=:&W53EAVV[<%OG+B#G04Z\>FYC(B9#E$GZ5"?^<:9>GMWPX1,%R6O M)J<4T;H#RI_1>N'GRIG;L8R1>2Y]CLS=E:?D[60;4RJ7::^E*7@F5?D,6M,^ M %Z"]V>ELL@6&N&YY62]Z<5Z $<*(B MK%#9J# R9@"W[?"X>16-U-VQS%GG6P@U,>727#'M0YNPTG6 B8!V)?/PDI^*USDF1>!^D<;TQWN03 M^YO6*FNJ)>NV69%K!1[\(-^(X\=9*0ZEU;'W^'C@Y'DWEZEE4H?;XQZMS)RN M?)KU=/U)S'17QXDX3PQ7B_O9OHM6YD]7[A*U?:LNSA>K8_=FN*@,XX M.>9.5VK9I]2\*ZSLE5S(V_=:6W7$J MN,_Q?MD5:L=,=I5-[.=/?+,PJ(_Y<3JXLK%O+R>'N9WABH)DF%KN9JE/^'$F MN#(Y[LN]_""FK\0'G6_/R^V'Q]P MKKJS=6(M\Y9BY%?KM1OZFE;U/RJGN.!M\N[';WJZ&;:LWK!1+C=MF-SUN M=6!E /*6U*K9?*Z_6#5N[JK<[>RFM-=XM#( ^;MT^;AYS.R3PTK^F-,.U7TA M*\-*!OEW=M;U8***+9<-?5VDR6\CI!X5$>DC%FX$G70WH]C\4"W'!D)VGC.W M>J)G;(PS$X?.K[N6F%@P2_$R+KU6>R!X4GBQX^Y"OL4[H344^I%RK]U$NGEK MT..+@WYD5!M4(\5A?]!N"KVK!DXE5UVAXIY2D'E-L,$U!3ITG\6J"VG5 M3)3.$]%IT-UCOT9_)^Z)=V9W_NMKS^CEX8!/D-.C[P&&XU%].( N!FKHE: 3 M1QN!4J" 4?[.?O#N$N)]]#T0Y))(<(R%<'%P4;0MG7U (HOX$U\ DL,!4&_T MT8WZYDG0T#+8OMBY"!"L*?M\!UG?"!\I19#X,7U(.A=/YO[IA1]]'8.E)W#G M>3Y4=H*^S8#&?H_M$5)_)]%::%/TTR@I#6;C%[.EX@31G&W)'QT=?1YUX,BO MQ!1/U/N__[&FK[B'!;(V8^@!$@1: 7[TW*EX(AO>S#7>3")>*(0WS,A.[O6JPG9V;7>3,C.KO9FDO%4:&R^Y]7\ MQS+ (_!FUO]EP.#U3[X6$N]J:G]T8OT9P/PB'"1=A0]Q?]G?)-9T/.VDUK.B M@\3F$,$.T0CS$%\=T)YW=7_[ =Y/Q_?\OO+_"D]/!G8%_PU )$2>9Y G%2+/ MQR /J E?#7F2?E#]GJAVBZ>^_T.29'DVN[#T]G7:>#-1?'7'_#NR^.^8,5<' MB/]]BZ,1M\8UG,U#TSB^YHT3IWR5C:^=;C#LE\;W_+[;FFU:AZ$M28-UJKP_ M=@O[7QYNT&<96A4G6DP''."D,>.(7C8NE%*U2CUVVQ+:R]G@:"0?ZYSN&S$0 M>\W4B5C\ML M=2[L&\WAL:,L6@/MJ6_<[=%1"]]^I#/9:#*1>(%Y?$;_:4^F]3/Z+%(#S[1J-*B,A>)M(C9XS'%\;7-IXZL^ M$J;'VW%&XM;"]EB:++A"*?#70:Z?Z.@Q]?7D' M% MXAR[LJS'!*C?C1^E.TI?E3(/+\L6'YFTSE<\*E^:/]?V^R-N3>8';-C.U MA\'37>]V#07]R 1+<]%4/A]ZL$,&$C*0BUMDB('D#NO[42RQJ*]B@Y9H/K3D M0=VZM$76?^@4MZGIL;F*V8DZ-]HEQD5YCA@(LL@RN6@A'3*0D(&$<;#+6VB( M@4P',_%XY&O]85$:=[;+;$^1^4MK(,.&U3E.GK930=D,V]/1O-11L0:"++1$ M+II)?K4P6!OZ:X6!K[_'\*XMY?9]U:=K.^TOL$+:<#OTPH;X'N)[B.\AOI_3 M;J_MM)]4U17GAW&1J+M8R6KBGK#C=,JN#).=FYMA@[\]E7"&,262^(U%;_LZM_E>&*EX=S^! MG_>D$.^9ZC;TD+L.5ON^B?C7=_CKX;RO;,5X428J[L21I6DS8=BH= N]AM$K M2;/]. O1BTPN%4VE4J'W,>0J(5>Y&JYR$OLP4JDGE=^F=ZOVTJIR\RE77S4N MG9E?G^SN[Z6=I*[$Q]1D96Y*J5IQCKA*%C+S(6DD+.L)N05C?Q6R^=G.H5R8P: , M/JX03>5>XBK8Z/L/[N[\(S XY/VJKZ" 0$];Z=TIX4Y[5X.8WMHG1)NE@Y- MSX?Q1AP/2A$MRU F>/8T'!.9 M\&:RF8>G<^O.=W-G<]?G&IZEN+$-$X;]P/MGRD&>QL@X>8GB*)F)%5G3J8SP M'D->BPH>F^/L &:VGSS,0O".H0/'G/DLSB/CD>*S6PNTCP_.20.(DM%U.6>8 MV6_.?/G\XZ<+X?AI\EQ\6^'XZ?<9/_WBR):KF&MQF9D?3))';G7S@F,^@B*I M#-/IF"R*3&3,K64#M!7"5OE.$9@G,$X\3A2MGHMF;*; V%4BA&:BA,4OX;<& M^,(=41;% TO1)M:8Y:KH^# %6;FJC*;?T(GD>(MP$14&"![P-]0CY'_?2]M M+G_6\S25E?$MDBJJ $/JCHZGG[=4&'4G=:C8ID+T5EE#NCOU_4/ H(-G EIM MHT]$LO.$AJ(:NF[1!]!O\/M>_2FYM.I<KH3Z^X5=[_ML/Q#N#VF $8:,*\-Z+ MIE<1H-,%$2N 47@+49T%Y_I*B R -ZO'*$8@^+H!,T5%@@'3P*1;]EAW N ' M8<%Y_^,'8\%N>2=7*LOU=+BNR]6A<7,8=C;SOX\%-8T:"Z!Y&J:HMF-V]I,W"$^"2)*G *+6M/IV2ZCF,,>@2F@3;KH0Y&$#'KV MC&@$;5^)AQYMZZ.)QAXV^O9G+JA64=6*ATK/JM(F(33;F^(5>GUA#"0+AP/&D4 MVQN,^9&QV.(1#YZG"D;2/I32F(#16'U<0,>)<2#501&V7!V%5'I MI1XC$U&%B=;8OE.Q'N!9M&,[01@#MQ6!1M5D!#K:E&.5^H_BL0%+7E+U$2;: M]@E=DHGIZ,1T[+H[]-/6;!-F\"+&H2., :O3PWQ,JN/X#Z:PL;Q$*ID>I/") MQ#/BS#_N+$4 @#=%.:%S$P[LT,//[0"N&OWIY*!DH!J9I(8?>U%Q^8IPW6OD M%W.!G?-[,0YRI$Z4G@/^L\*JJSQQ&>&XJPNQ<;4Y,.X2IG2#5)U")IYY7M4! MF+XWZ'X])O'!H%O:T^-XG;UO#+//5 MB$!'&!DR<&KLA *.".P9]%%*V%A)B?K]4J<,"E&8BC@A:"V,3J-TBK&%1U2# M;N&P\ B,+T82 %WD##/>S4(TL4DNNF3NN@&1_F&22<:NJH(]@9(DPV!CS(=, MD$66B!_'=D[<=#.5:#M>SBL2\:N?X=C 5J;RANHV.F%$,%_;6FDIY<]R>>3C: M7-T>[)RMQ80^Q\G\,C>SU-FO:5;J-A#L?FX M587LK5H3Z\=].5_E8_Y(90:'UJEY?&F.K.'[=;C.I%>W4S5 M\>_9+'\+0H:::LYK_9O=:ENHYQ.E!W%0Y;K??J0+\6 MQS/<*G(M[.HR&ON= MB%0DX&M%.BP=+[HF19VG7 8")[:&=9T=XC720M3FB*D:>, [_)%8F]X!\,!8 M*4.*8884F2)-&M\\_@9XD>&X2%/#^C,HB)A9F9*^D>DKHI&);6%&#U^A-J@D M X_5)05;K-@&""JRGL?+,_1E*C-.M4"$X)I)"94\>K] PD#!QBR;80]2Q- G M^*J<0?<^L63B. RR/";$;-GA+UD+0[?G"R1YUOI4F:'5^#UN3(3R?'@OX>H, M>(B.===VIWOU'S"X"*RDJUQ%DF MW[Q!@BX?#V8G?U8Y]P9@RJSR0K+4J&0Y>\_%,NW;66G_!,IYXD4G7"CM/'/J MG;#T$ '<4LR9@DBW0X(>8(I'VA.T?T+E5R4$SZG%?E$WC?2&G3:PK??F'M3@ M'#LV)06J!XXN& 7JC1U@WUI[UL=@)QM#.S&L$F*ZCHM<0JK?&$+T^$URB4B&7086Y M(2 ?90TA@RR#@RD*TE^R#2P/J6_18S\QC[30*3)/M)L6XK'!SMM<1'TAOCX6 M <3$,*7^"RP,=4TF:H,AR]@-9\8C57T/T06"BBK:+WH0^+)D [3ZB(EP&^L< MFN5_MY, SY5^2#)B K_ZTN\^ 0(Z$&YF"E+WQ&T8.:>*6N_A7,O[1-]0=&G M"0\R-J9-X5$QME5!3#_52IR6$1\M9/IXKN1#?U M6 [/N;8S-#81R/%RW_":?09#=/X0L[.QZ5GOO_E,7"Y[)BZ7=;@AU?9S9Q;E MG.#=A;0CEIKAI@'5L.VGK'%:&_%):I#-AJ_*I5S@GA-FISKW/;,M&Z("S.R0 M #55E7#R*#@E9<- : _F+C%TO<$0>*8N(5%#)1&^(VP=/X]73)B=7O5).@!> M1O=,7DF>3GV8CN]PBEY\)'+K9.\0J#:)!:8[R^D9L$PTB7!$!(D@CV2+\"1V MY!R+!9RP%)_:DG,5#D9/9%7?!UFPFWGH3:RZZ,A52(][97;M\W+[-T-')V$- MT5S _X6MK2 #&:#.:]/^ I'&0#;6-6TGT\L8H/?>J+JT^L9RTOB#,)P/="[/ MC7KCVTY'J!J9#)5-",SRE+=>6$=SU] ]2>(&[0BI+_(E,MF"J5N7L9Y:[8$0 M29'& XF_(D6^7XWB?R-"=UB[XV^%UJ ?X5NE2*UU)_0'3?C]RJTHCQN(::T> M!Q .W,LNXC&?#Z <883@5]-DH'UC)5N(X#7J#H20"@W#>-S, MMA"YX-A/U/,>D8:#0 YL0#4 AR'.)]X8B"&B-P!P#!FI>1*.8(ESI%P2OH<4 M7ML@(1_L)?/L)1XI*3L%L0LX,&:>'DER;Z8/\GR1D!%/CN>RM1J&(0-I#_M,P<-YUD>DQ4I%934;WW'BS9 7 M^K8Q7TCS9VS43^I*^WL0:A]O4I5FK-3AUL7LT_WN\=ZZ&?, H6 %[XM.M*]7 M*)#CPD*!L%#@[0H%1%:1=M_.C"9R45L-8]IXI-P:\]:J,P>=\!MYF[/R8:_< M=OL=!:F$]_>CAX=,I5,O\FAEYG3E2G@L&9T:7U[UZY5![K:T;MWF>*1I7\_5 KW^>.R>[OH]&!X7N#MW7SAD#Q65AJ7K6UD;= 8M7)[F)05 M>/M3M])L]N3FXZJX2\_[G/;8?3K >(C@VW.#LB$ECX-A@RL\V=WL:I;;T$$2 M)\^\[Q76ZGP[Y2I6.]/6BE*I&=N/T\%G_7FB9LNX3H3Z<#I M)^E#;23L.T)L&AP3/=-&ZJ]T]<;# LMAK#Z2R]7N72\W-W7]J/ MY[W"T7X2[,+C=BZTG\:#YMF[O\EUU-5]29@/^X51YZ'WM+PQ\[ R<*9%-FTO M5\I]<5@L-:6JN)0;E1MX>_!,M5[]X4XX/"$T6==[+6XV6,8P.@?/),YZZEK8 M+'E.;D[&I>%$M_?U_3@3Q/PRO[FK3+6,,=Q.]+Y0WA?VK1Y4S =6YNN=V'XE M/A@K6]+J]BJ=EZ0Z5,$&X*2FBH?,3C/TU>AQLKN?)08+L\:CE0$X6>G%>M., M'6JK9&Q:O[D5NL:B3NOU_2LKF?9VF$EU3:'1F&O[9B75KNGPS !$[8S>79:' M]YNADKFO-66^:W4>H;-($*+6W4$9E7:/,6Z4RHI#KONXEK+P^B!$-]JT7N94 M=2JTK3O;?E*F,SW;'>>"<$H?RVW^N)&:P]$ZDSZ(Q[(V>>+1RL"9U.QBU3D6 MAJ9P3);40[N6YLOZ?IP//O/NT)EID]W,YAI/%6,M(4#E6_RX$%PIW0P/B?IL ML1PV4H7AL+[*K0[)/5H9>+M=28I)O;?;#+>J=EN?=85:+S]'*PL!CLO?+]JM M^UQZM3XVV_E!BS.3.R1#N.#K#^N-5MAO'VRN:,4VG8S]\'"?PDN#G'35Z UJ MJ8:T*G+M+E]9WM=FCUU8&D 3Z>E^_%C++>Z&V61K5U2&T[)5V\/2P*EZK7*E M\'C0$JN&,FQ9=J<^-TMS6!I E.&T(LKMXI,L)!O'XGRP/Y9F![R!(*:4#YR8 MTF/-]A!!K9\3!L4V7R1K&:H\4\7WLB?D%_PFR3^YYL_CE+HF_\>YF@>O#<[* M&J9.-8RNJOH>N_C/9:*[9O;WC_ $NE#%JFO0W3?4K-6XV*R.N9B@K4K[0EH: M/\[?R8'WX5T,:($[-<5(DPZH,!$WIOR=_>#=)5@N]#V@KDM$S6?&*#:31-O2 MV0?$1L*?^$PI3Y\/NL:U7_/$_+$,MB]V+@*$US4.S"7CN1<;3'M,$,_SP=,U M0^C)@,9^CT&7D^_$[H2 [$_M/6J6XQ>SI>($T;)MR1]MYSV/.HG7>^0]]OO? M[I"33(8W/&]@0_#?$A-=@0LJ/";_'%Z^NKRU.58M!/;G7V?9F'/'JSGL1T9"_0D"\ M29M>HGU=P]E>WX77AP'>HVT,&>M_T*GWK5OU_D9.UJ_TYCV7<'JF^>[RICLH M"(^#.RZ9L7>#7$;+KXH0R$Y!K[5"-)T/9OB_'2$0$7@-R!)RA) C7!='>%4. MXCMPA,1X,U2$AUA22#YL1]7\;3YYDX8DF"SB")E$-),X-W?TA! ^HXG(LUK\ M& )IS!1Q=V;)-F@KN#_>(/Q;G.W:-/]+0X4RQ6L#RZ?BD&^N,SDWC4VW9':>('I6)YO/G)M>]K1[U MQQ%1R%J^)&L)CHK]"IX5IWPABU\XT"U1#1TL'VQ.7=^LH ^TMZ[O\'^VNO&R M'3;3EL="YW&R&!Z?U*G56;2ZDQBDKJ>@I6(FFLJ=&^$8>F9"5A*RDFMG)6_N MVWF9E=RDMT-3*2;Z@JPU,Y/[)RXU?.(1*_EEETXX:.W-6R,H9\H@%:AUEYQ8 M'#CM(KX5J=N@ M2S-QVKU]2J]&E5W'K-9VR4.]^^T'M$"#%D2GY H=%%09AI;03@E3TM/T1M16 M $$>+Q.CD5::/LPN[/6Q\K2HS><^E?$1AR!,0 M]M#62H3 BQZZAYWB#\_W(:MUL_U$S> W7"/'K=3=:%1()1"F9\ZT7OTGOL3W MA7OJO>"^[]R5!S-I+J^*VN-C8C?F5GQN?C&XQU)I?5,?[=NK44DLU 9WPLKJ M([@GSXRH^.=I^XGG.J(XU$.[^@.M7+XWRL4(Z9>&9S#F]Y/N(:FGW.XFOYI. MA6*QV&Y7TI76L T=YS]ZM,C5D,U[0#G[T+QI=7:&NBKF,HG65B@=8U/H=!S/ M7_<0DE]51]T0:5DW8A BB?0](=)+::7!8_#EOB=X^YPVZJL?]3>N@O:%I*6? M2/Z"%(L-%,_"A*J)Q1Y^)(JHCDQ.10MJHEZ+!52\F'*($7OD>Q7_9URYKP[[ M"3796HE&OUH9WANEK#$_:^W\+B!?V5[%VNN.:83_ UKB+S2YA5&"/>A9B.D5 M?FN*!V5MKREIZLEQ3Q9N\KV5O.OQ]]*^=\B.?JDMK3\(=QJL R/)0Y/FH+*I M[C+3_C![?YOH/,BS@MWE?Z'A[%29XBD*"Z3SX;;')SCU4VLGY7N>4\!\\IB7 M:IC=QF[H1R2KH>$H:,11&".@[W'/8QCR(!GR%-E),*\2.J:1@82VAG!9Q=^9 MBXI&D)DLP3^Z PQGHF)$=J)JRW@LD$[Z+-LN.A^?(: /J:+N2PMY:JMR>_9\ M>!;&1&DPV16_[IEJZ_TLL\@6UZ/T*EEJ2IOJ^K[03G;#:NMWK+8NQ N%-RBX M3B7CA;"BYQJ+K9)A&=R5WDPBG@DKX:_R9O(A,[O.BPF9V=7>3'@MUW@M,,DI M[$]PE5<3\K)KO1FDF(7-HZ[R9@KQ1"AHKO)F0FYVK3<3GH]=T,_"])B(I"FGE;FGF?F-V? MPD)_$B'[4\#PY:CB#1H)IN+92\#D[T@*WINK]6:](T/4"!8K9J^1;;R$&A7( MU M1(D2)$"4^#B42+[IXKA E!):I&UH6(0F\"0FDK]',>%&'8OGO(6<,56L7 M+8JX\"'$B5"!E$7%"!7KSXG]+]WK\Z--)N^D M47^I^%91-[^48G4MJ$*T["^%*K>XJ#A$EO?@*Z!F?2EDJ4 M>H@K(:Z$C.6B MR )Z^I="ECMH8/$&BOS5];P]TYCF^YO1P]6=]A(=?C-AUW0G[2:$0T@9GK+K M$ JLRCF$1$@8_JJW$!"TR"P$1$@:(6F$I!&2QBNJ"T- D&*^KP.'SQ8O/)E$ M5K)EW!-?DZ%3O[7767?4K^%RNY _X;*G?HOI/Q>OPOG9F, /:@1?5C11DQ11 MK6FF9=C0\=?7DGS89\ZY%OCF CW)$YU8)C/L[?1A9^?6I8=#+ M_^4.R$Z2),1NV; 0J#Z!#O]37IOVT?6I,OM+"7WZ@"B]K$]KUX-Q6F-ZG<8C_.P@RR#!?-ILX--0W9QN\Z6SX_S_AI1[C+Y/*:&\NU$ODF2O;95$&:X2LK-Z(2D@AL9O4(>B =^ M9LD&$VP+9&',%^>EVUCL-%N%UITT; S*I5:V,5)339!NA6\_4EQP0$K(,D*6 M$;*,+\(R(+?DUUF&FBH]]7AQ80PK$E=5F[%YH5Z?(Y:12'[[D>"2(<]X6V?9 MY^<9/VE<%;*,:V,94 ^ Q()>)[1!K2QL=$'4IT8.6<[WB2%F&!EL0N=3 MN1=XQA=(8#KO; 0O(S@;O<.8PD!#F-'T53.:0G[\T5Y-Q(X13P;^X:T/'RKLX0"M>45W9!]^DU M'/_2B!"FS%Q;RDPHKS_,2PN"FKI$.^;/)+6 MA6\_DME05(>\*>1-(6]Z#W?PSWG3KB4UDJ7!SA)B\^;C1H[%[F]NYX@W88=P M,CC_/61.84+EUTVH#'G31_J=7_1Q\.;]:+:0#VFA,=?*ZU'QL*X_8,Z4P4Z. M7.(EYO39?=+/]I& /V[G1ICS9Y,8\L+<,^!A2R<(7RKYR7,6))'[C M0+?0W83AGK_G!?;QF!3B,5/=1@A[)9SM7MP<[96DSHO8IY;G?3YG>"4OT>EIO1%,QS_"U6*6[>+A5E/)P73832>-V:=S> M\.,$![[3!)>)9I/O6)'SIW&"/X,-,%?GU9TT;"OXT4Z7JT.!=VHB=GT'_5.% MWNO*5<](0JW:;C=NGRQSE=3'EJV;!6.7Z((D+'S[D"65OS_Z+6W3 M4F9'=I(\1;Z\@X"\&=%GD;JHV:)QC*02T0C@332BP*A9V;0BABS)R@[ CE-= M%W)$7.NV9L'7_O?RV)OY!>S]:3C/L.5IC1X7\7\8?DQ$%4 &",*7^ZS>&$$\'BFAG[1Y MI*P Y"BFP5>DA:C-,8)ILH6PB.D4D86N K^.S&%$>A3_%3W6$@]1N';\W:*^ M1F\_8F=#[B_SY)T(?S>Z@;05/,\'K3<0QJTWAKR0-5/9P3O1[W)D+YH1<;,Q M] /"'$M6CV^.W.CL(CQGG!QC]$Z-![H'UX66G:AUNG:':PN5QT6.JTK=_>_C M>AN.6O2>M(8/ZNIK50):,.D J=N:AS0,Q+^T.;FM#L(4?1K4[+Q87WY83X^% MV%;DLI5=V9[I24&I=+_]X.+!]L\,ZY_%!@/=!OQSY? '(H4[V"/UPY2UTPOH M&+HDRU.S;.AK8"_MV*: 3!CH :;O4+0?TYM <,[\F2*IJF,D,*)FR)GX)TA" LW!'?+M;H MQ;1G[M6T9*L]>P[M-X7NH9*^B\F"W=BDQ-7B;M]O[\]?#Y&:^((P,XL@]J6B M76$6Q3:&V)1N8Q;W JM"HEG'G)#\'H^@;9]RO;UB+;Q\E+PIZL4-I"6CA9IN M12:RJLCH^?#'P'> @2)YB* 4D; $9)]/1!.V2WB^O!-5&T,5-B_O%"2PD @0 MG]$ND$(O+2)4C"#&JZ&5Z)DF7 9\8[^0\?G1VY!L7",QSA MY0JZ)9'%?= 5("5H I&?^&5T-BZ@L_UWXML#E\N%;;+&>P2*PP^6>/^DL(,T?T]27CAYU8!:@Z6$Q[8TC5](\,.M/E9=M:\ M*=P?'\:EHM#HC?;"K%?@MR+HKNEXXEDQ'GUW*"6]4$J-C53J2>6WZ=VJO;2J MW'S*U5>-[L=!J;T>&5-I4YH/8QMK-*R*HPJ_04P_%0^:KXZ&#^CUWG!*>.&4 M',>XUDA\M*W#2DS(XJU6KRI2:OYQ<-J.A4Y-O=FWN7:]:FF;.[X]1.]'<.)> M0"8D:C8R^G"'F#U14T1#9I+"H\03V8H4()4E MT5P 8Y\BF\X$W8#<.^YRA34>^.U&U%9$\%/NCU852V9D8QO(S 2=98;4/6=I M' FS"'@%+8Q_ULE^\"N]CQ*1.J+)QP@ZQ0KI8"!:(J(%^Y8W(NZRA90[2[%L M"]LXWO,AHM/1]Y!&@A5 23;@AXA@&WJ,:%,3V+LH24151'^K&;**B0#]GZW? M0-HENBU\X_/GODD TXC#SZ:] 4@RXX#2K:YATN [Q7CD.3>0WR1.)/_YG(&! MX81W"3^ 'H8T0DQ]6)(N9!7M\1B!_$$U,F-YD%Y8!<[KG* I:N(?U753WXM&D1\\5XBGF8O_NN-)3.+&1BZ-'@.H_VP/P?2$Q(A_OK)F#\(P_E Y_+^[72$JI')\&-8FOP0 M4C@K+ACW*9D.B\ ,ATH$1/X^.1 -\F_X4X"#1UW61;V7IL.H9D^?CM)<]F%1N5D^#N1=9X\4S,!#;Z69LJQO"DOA*&SK\VRMNI43/%J9 M.5W9KO/RQNRTYT+_8=M-K%MYK.F+#Z6"]W$3;<[3@6/+STJ9BZQVC=6VU2]U%OJ35Y9 M\VAEX/A%?L_7GMKSL1![/$ZF3P_%PZX^1RL#QS?N\_S=;#"VA6-!VFA&K5HN M(N"GSAQ_,-R+X_23>2=4GJK'II%9&7("+PTK'9=%1J9HM8S:U-Y4IB/TV,NL%5CE^X_K/:#54---$<;KI39 M3KOC3'!EZ:G:[(ZJL8&PO6^U1#O;3-]OYFAE *2K4F/?-%>5V*K]\&2(G8-U MDV[#,P,@W?(M>S!M/CP(E7JN.-U5C6JQ#\_,GJ[,W3WL)['\\F[8WTCK87I6 M[717>[0R /SU@3MFTREIMLK*:FY5VNJ;1)E'*PL!U&MW>SIK3K7&/$3K96R M4SM41IO2P+''J^R,E-3BMC0 5O=/ZD-:348MX>;HW8J'"\7>>Y M)[S7 !&CYMM>WC85;GM?>XNG594J_, 4]D"5]J[J3SRG5RMP_4%694>)6G9 M[.['N>!*Q>:+U;R,3NW(BS[77\_*RNF[F M]&67S#/PK^2;3[O*KC"ZX>S9@[$_<'Q+W^UI=_$3+-UV5N:X(-56Q;OZ;G0C M".GIG+7[]2_=V9OY89DK[07[]M&H:1NA7>O!/(4@H I/A5*R6NTTA>QH>7.0 M\KF[MK@?YX/'+]ZLR[_J;8/4S.=X8=BKF-* M@_ML(EN=HY6!X_/I8"=L'Q:'YM-T+A9W^*F!X_,W?;.F;P=WP\KC^.XV MF[BWD_7NN! \OKI83C/I=*^S2F['G9K8N7^JSF!E8*?:[6/IL5MM+;EU62WL MZKNY-3*A]TA@HX](UM4%G;_A^FM-,B>3RI/ 0X5D8)]/HTI]TCSV8ERQ-4NG MN%UM6++A[0&0-K-"3SN4CN.5_7CDIUGIT+O!G4^"!*WSG'6T2CMYU6ZG1DA4 M+A^L%EX:(.A:8J,_W27TC"".8T+3*.[K1JY+BYW\2\>WPD-E/+ &P_YPE'^H MQ(:;+8>?&B#HY5.ZNY]HLX505*OIBI!J9+@5RV4]O]4Z)\&%:RM;MZS]P:E05ZEFQ*X@8]S3)L M^1)*9-!??!D_3*L]$")IDB"?^"M2YFN]R!U_.Q0B38'O#WM"4V@-^A?US9S M"?P8,QW2(2!DB]-P(E1S-<\Z!/P*,REV-)\)"&'=&;OAL3D/'K\U;D O$[4: MHC/&E"KB" $C$&V2P1,DPM]L \>1<9"&=#7_*"+@35.VS";=:UOKL)X3&93QN'Y?YA4N7?B2X^/)V)8 7S0I"L/$0TJK@QY>_L!^\N MP6BG[P%+52(6+O/#8 ^!:%LZ^X"X!_ G/B^")[&/KG%=-_E"O%# QK]EL*VQ MHQ$XO*Z>-%F(IQ(O99)Z#'#/\\'PFR&B87!CO\<@B?$[\;I */NGW@[JE,(O M9DO%">(GMB5_M)?C>>R!([\VP]7U7KUSCF]X,Y>Z&;2[='@SUW@S^7CNQ>ZY MXO- MA);F.]_,ZYL6/\O6?A9W_NB:A#.P^C.G7 ;RA7X1#)*NPH?_[UO^VV^"))6* M:-?5>/TL[CR?2+R'G^++2)#3# M/@T!O'2WQ,H._AM@ &^D;'\IET5-V]B6^95X98@JGP%50N7KU8(V1**0W[Q6 M40]Q)60X(1*%#.=C&,Z?()Q^STB\NMGVQ9,.F=_?C!JN[JAORE-_._LL?1V0 M^4CY\]O9K9D05B'%A1074MSUP8J8#2&L7I]S'<+J]5G0(:Q"J1=*O0^3>E>" M1=K3Y?6XTS;R>(7-D\'A7R5P,6'IR[] MK$'+1YSZ?]_,87-)BL4=CKTHF_(-B'KK ;ZG,]EI#^RQTP/[YNC\6%5D0S2D MQ1'G^/$'Q0PN)X$=O"#1E-<3V3CW2-I2FPSGE;>VK$G'\\_SK#2=]MNG#V:] MR&M.*W+?PS"9-S&5XX&F].OI[&"J=@Y)52BN'D>S1+];$VK^29.I7YB@"'$? M7IO"?P0W^G.FH;XS3C'US9FD,<_E^5GC(3>,W;:ZL40ON=H,89)(ZMN/1#(; MS::S@:&*(:\*>=65\RH\+2#YUY?(*3D]ZZ50]Q)7_@ZH^W)GBJ^$NB&3_=R8 M^G)_N\MCZKLJA*D_22'D^@_]CCVOCX9B56_D4AVM5SGP%U$(I?O4H+@UM30G MMV>-5O+^UMKG\+RXY+N)VE^<>*XP)'\5*!(*FE#0?(*DS:N@E5#0A(+F,V9;7@6*A((F MI)4_3"G[[%F1PW@_'AD8.,YVC&BZ)9NA?_X3A\$OY;2X)GH.XTXA7O\)>/UY MLH.3UY(,,NPS6==WXE[T$9M%8:/>S[+#5?NQ$EM5?'LJ3ZGZ<&V>__2ADHYE,)DP' M^=)!]DOIZ==T^:$0#X7XGY#1&:;-APP\S/X+&7B(UU]%,?D*N8+GO(22;FQT M0[1D9!)-+)8X> SC!A\0H+ZZ?K 79PO/9$I=': N*"%#@@H)ZH\FJ-!!^LL. MTI*.+@,A3I$)>[^WDCZMUF[F>VI[F1 :IMZH3/F'6J8WOX2O5-2[A5M^<&\, MBR)W?U]L)X=&MCO.8U]I-)4LO)^K]!K8ZW4:WY^!C5RC:E]>H =4'G\#405"BR/B^%G4>AJP-4*+)"@OH$@/HS=,#/FR&;2.(W M#G0+F;1AW.KO:; ^E$XAE)[J-K+XKX3XWZY%W_4=]$LZS-Z]O50RG<^9?+W> M&2J+G,K?KO787/X;Z8"F*;^V'Y11Z6G-W6P[&^(RT7P^'>8GO[=U=75D_ [\"EM'5W?0,.4ME,WO()OSUWC0 M:Y'-GZLS[=J\2RWE9FXWM ?M24DHKY69\C&RN7]H#!/CQ+;')56E8;7Z[53, M -,A;"4;RN8WY5?9:SQH*)M#7 _UT%?ZY/]C0AZ$_ MOA:!B2!KV6NT(RGXN^]7GW91L@T19-\X.:;ZQ4#W. *$EIVH=;IVAVL+E<=% MCJM*W?V>R65Q?O@^,,2IS&O3MK60#23_964'P#1=X3Q [[I1=6E%9?-DO.4& M6\6:I]9"^V$\5.H/1I\B2=Q#FOQ/?'KP3 MX_!CD**B$P#&)%W5C>^,"$[_"KOX;FN(M@;]2$\H"K4[_N96^.]_)N3F+X2R@X4<*>IKA(#'R%S6D-:IJL<( M^I*L3D2,2.CK.L*[R$0TY6D$Z<,(U^4=TM_PR2/Z+((PQUF& MSYS[RXS,6'HFH"MZ&JS=*]9"MZT(**0*J)D1I$S/%6 ^"/JJ:,$^XI$B>^5& M/&*U%-Z*G@)IGD0E1U#8*9*,*0&4/S,B&K+G(%-;QB]3M$B*@W-DN,1[96L=F2*Z8484]![9LPUZ^9I7[D4S\K]O;">>NP$A.R>*O5JXJ4\BRQ*>WQ(-8\QEE=X@_Y"XYRIYF:7.]K\-=YX=&,&]!3VJ / (_J8K>HO(!$>$=_8.-O/"\5"J;QK#=:N5 MTU9SH<4;W6\_$O%\X XB%/P88N\+IM3XT"HMCS?5F3ULMQ[7B?3J9JJ.?Q\] M_R:8DK="O[OM(45EU,W/EYO&TW;(\0"F8!8] U,T DP><3%E)ZO'^%F][)WT M,';JFL;D(?&4O*2#56KC_9V:+.R&\B$UD);I46UFS\DE*9HM3WGKA75C6);X M*(WM&M6SK*.>U5H#OE6I(:TLPO?[PJ#_WLK928+.I<%1T?7I'M' 1772$TAX ME1T;=!(QLK71=RT1R#,B;I!T!O4(5%00%B:6)G-Z$B9=*IT^(NJ-CE0-I'X MQT-"8Z&@[R&51=$DU9ZB1RM$^]OH2)Z@7Z9H;TC>4!731#_,00^*4GG40HH- M^$8C1!ZEF#Q*QB.\172V*=*2B$;!CH"HC;Z,*$P6UB#6.I)?JK)"[ 8^UZ!I M(5D WYV)BA$!/=O1F?Q'03J7),ODF0$=%3%!K%KB[V.-RI 1\T7;DM"65-FK MNB/ (I9!(:N@#2L&')@"%O\(NP4%7$$8192\B8PVH2%F;)H@G1$,B;J*5(CX MM2!17T$O%0WUZ+^,W\>G0:_X##ZA3Q'XL:T""RD6494^8+>\'JGP#U>$/63Q M.V!0/'(9K G*)"3)X>P!Z\"E97Q\"CE10J:LZ=ALMS+"$EE%K'8=C=0T*1[Y M%XB9)/?7[:"&?TK\]6\/$T(B'=N;B'ZJXGIC@1IRI\#.%)$80NA>;)4HS/I& M)@P<_X8>B*W>4SY&]^G8;1;9SAK=ND2_K6@S0R18"7;C*592"\QS,@>],>5L M;$-:($)WE'BLK- ]1;$F3P[H!1M"BK?70G]B,[%8UXUM(HPP3=X]$HZ%B?/# M&-T8O3!T733LU:/A!8))>,Q,C1\%'PO__C/9&;J7ZB2'F.2E^?Q&[PN1R;&+*XBHDS M]/+OHKH7CR8]>JX03S&W^G?'?9[">==(AYP$B][C%5 MGJ'CDZ^QSPP"$_JA3I#YNR&KF/G"TWW/Q;=EZ9OOR40<&J"LT:_T8.E$/)?Y MJ/L[D=$I][;^*T86!M#R/P;MXEE?.E96-2 V]2^O7DP_0LHB]K$A]E,$UH ( MS7&MBS\\:/ <1OMA?PZD(@M*-PJKFETNWS2'V66_W!GFJD:_.@?>\XV\S5FI M%V;BOL'GZIR\$T;J*,]W6LDN6IDY79EZ:M7X:G_67/7KA7[LKB 7[P=[M#)_ MNI)_*A5NY=G#W6HM3":%_5W]?F]V$>\+O+TH;KN]Z?"I.2PN;J:-O?2PO%_Q M:&7@[:W!6$G/N@>+ZYLYW5Z7V]7*%IX9>/O=XFFD]'.6PB6?^$*[G;GO/Y;A MF8G$Z=+[0WU1KH^[O-!NM%?*[JS:B.>K2K7$ MB1J/5@:.-$XD]^UCP*+5@9.)*VW L(UOO[E9@H5PJ;NQ)G M]KIH9>!(Z=*T74SNN@^KV&,AT^'_/WMOVIPXLZ0-?W]^!=$SYXUS(HQ'$D) MWS,=(4#L.XCM"R&T(;2!%D#\^K>J)&$VKVULV=9$S+G=4$A5N5R5F965V9F. MR!:[/5_P:#@2OZ"HAP]):3:<*&HAGTOE4U;7J]2[ ML_3EDARV:^H22_68 K'8X,:032=W\HRZ'#FI5<;CS;)0QSBGWAJL\_,L:VW! MR(O%6_*25[+UWI 9Y:<9K-PQ6:\$GWFQ^'5A(0+8M46VG"^UF1XM#->K+AAY ML?@UII+*@)DO,<]HF#4BW^S*2_CVR\5/R[R$K==.1_5JW=5JL\Q/2FUZEKE< M4J%9Z1OS7;W!NN-ZK=>1%ZK)RV#DQ3/%_*16*"Z$)5MH%+F50S2'>+L+1EZ( M:,X8+?=ZOIECJ&[+J93:-7%0A6^_$-%Z5>J7--5-LVU3&NR'8T$T!3CR4D3G MG:+.[]<+!1MAPV:MMN0V_1K,F+E8TMA.N_L.J=M,V9Q/)DJCT2;S ,:PRZ$M MK4N.UB.% FLBB'&QI@$%H^'0B^5G9I-RVDZ7TVR?4-E-9;0O]8I;./1B_7N9 M!AZ"4ZQB;LY1^F *5!Y'$[@@P*C56))E62JS]6:);>K&BK):: )7*%#?5?8I M.;=BRHJ!M[986=$K8 ;XY;JR=0JGM/*290KY?+X]RG.DF41#+Z1*S$"9ITM= MM6X,<^10F3%9 'PX*Y-"4-5 M7.[SJWRG4!^:,AQZ0:UTDE3 _Y4M3)GSRXQI#;;E$9K !;74SJ96D#O2".-* M>7Q&>[5BIH.&7E*K.]4SNQQ77F/)/NOVN#:;GHEP,R,OP&_8*ZW64JFN>DV= M78Y-QJS7X4C\0JT=>XXS8KU JFLW6V#G%<\>,?+5/6K=JBN94D]CDRU^:O96 MY6:>@",O7M\?Y1=KUFVT6,]UR@W%<')X ^X\F0L : ^JBV23T)CZ%EC$O5(V M,P " %9_P2I339'+E FP?Y1NKT>[YKJ_;,&-[W)-E$?H19&M@3D,6X,%MW25 M8@[M?!=85??R@S$Q*D]9CMXXK<*T(7-S-/1"K'2JDF8FYKZ!>>7-8M$;$Q@E MR->VOLD4VU2DOE%@^@S.I%*JO1[VX-9W0:F>UIB7)=Y.8LE2,M]>,(66/H?/ MO* 4;B=WX_U84!BO7?)6NZ52]E9PD[RD5-G!A W;8O;L>K,9;79%=:17T2YY M02FU#FP9<=Q@U8)(+*D5[G:[:*:7E!J-DF+9=2<3U:/&XW8S5YRO,#C52TH- MC.J>EKJ])5;.YUO54H[S9G;WVMZ;)7J&M2]OYEARMMK7167(Y"@9C+R@E%HH M%JLMIJ6J>G'8'/ 3;]$NP?W\@E+#)55O]SH6 MR8EUKH5Y57&YP4HKIYV$#[VD5+>95!:+HNRQHXQ .2V1&9=UN/=?4FJZ'"WV M/%5;JV5@VV[-*JVH632!"TH1V*0TP+5R4FWOUB[1&5))3[JZI7<[ZR;!968[ MM8^5B5V]4F+9\=4MO:]X:VJ22[-L?]$:6)EVV4G3?'7GCIC)*,N*;%'3 MB3;8(QRX^U_25,\/O+1M#RA6[*JR2SIM3+71T$N;HCQ6BT7"6 M@^XU[Z LYM8%/*=)F%ZJ"?-&UL"D&L2I2]/+2E)M7EJ464^HC[FV:"1QB[YF M2H\WW-S>UF8>MDYEAHT*D1R,TU>U1*&EV31;-3*LV%AS9K&R8DA[>TU*DFN+ M'9;']H2IEV5#TFO[U#A_54JT[K@K$>INJ:XS6#/+S;WDMK>]9D^5]JN,F5$5 M2U6X;7LHZ7RJV:*/["EE]SLXQ/(S3)X\\ H/LEYQ[$5\1FK2]2,.?L$9LFB' MH;LYI\$SS\/I^'DH[Q"/GGM!.!=YOD'8[F6)$!Q,F("GJT&7]!L?:?;YA2BX MFMB6PF.FRZ-,G!!S!INI*1BE#,H<[265DDG?Z'#R* *"W:,/7I#*=Y79+\SM M"W@4!)[\Y$N4[;2RQ=_A'\>SA'&:X#TP.,'[08TP](:"0ISKF.$'?D0(?7(2 M.#K*WPS&/$3KLGZPQ['">87K\HGPY@Q3,O=,E?JC&,S1*V&ND 1$,J1C^.\D M?/1O/_"V!91[-N 5Q"71B\.A !5-S77$CPYTO4]BZ$, \Z]SN].9F#-1Y S^ M3-9]S)G/XDSVGLS%G(DB9V(TBRIG\/MT*N9,%#F3B]$LHIR)T2RJG,'O8S"+ M)&.R]]B3M?5BSL1@%G,F=C2_!F=B1_/&G'EEZ=9GXYB?0X;C"R$?4AKA.2S_ M$#(\?BGF5W#/\/)_#W=9PO7SI@:)\G^_B%]O=I\^NP'K:>;K"ZC3@5=:+DCQ MI43AN>7_1;60OQ<)'+_'B @2Y2F9J!ZNIL2"<3/!^*3*WW\C%\$EB%@HWKFV MT*=45(H<'9XS<+\8'6)S\BNAPNW(\%Y6993;9+QZ)^D'UPF_]E8221\D,#AC M<8G%Y>5F:"PML;3\T*TH;'@T?Y/M]DR68^0:I(49MD%1B9(XMU#I++^H!/%N MZA*YA7^67Q*IT_LVMAK+FMY5C1S M#5;.*^5=%]X:@7V7LG=DYD9MEV)T.,J!BQPAW@,=ZN M0;'P*B;UZT_NCJ1NTF@A!HOC%+/(T>%]+ GL>E?8&"M>@!6#B[I=U9.R76=P M(1/-35FUV92ZQOJ,ZVP[]"IW$^-"K%@T2@J&<3EX=3P'X *+ ML2)V.V*WXWW PJ!*G="F^L.SN-9M:3HJL-/9;. M[U#A!N+7'R)[AZ523RCVESL..U2,H] +JP\E*_W:X]\ELOA9 !6U&&(D3K\C M1Y5/ZC'U,_4BG8J@!'PR57*Q7OQXO8BB6D2M&V/@2'\A,L5Z$MM5L5WUUGZ& MKW:EHN V/W44'31Q\E,74OB=_P>L*15'A[Y]=.C3<"$"A(A*+"GU3D?8^DI( MS\J=0A_3Q<+"FV$-2BG>Y% JJ<_+W9&8VF#U>C(]I+J+>5Z!10KC(^P??(3] M:3YJ! CQ%;'D-0?>LVDE,ZK0*XEQAYU44V"FS"39O06VY+N9_ 9CMRF,JZ8+ M=:^JU\L5&F!+?.#]8P^\/\VKCP AOB*RO/)XO#7F;7%$C$U6Y#8->VB9PA2[ MB>'2HH9-I5V;*HR"6WA5Z>H%N0$-E_AX/': 8@?HTZ#E!1V*WPD!"@M-4VW1 M6[#K4J6SK?8)*E6%"! ?IL=!WSCH&P=]X\.0^# ]/DR/]2(^3(\/TV,]B>VJ M2%#E&]I5/^PPG8QC21\02SK5D!30$,%T88NG: #'3>]B1&_M48DOD>]TP)YK M$,WQ?36_A7QY36'[LG44-O*[!A7U[BSRY"[3IXB;G+HOLTW,[EL8==C MRA-*[I5M(SL68=_/^-#]$P_=HZ=Q'W<-/7IK_XIH\\J#>"P[7Q4:\TJ>*3MF MND:64A5Z>9-C.'S/L55^V%PPHY*-S5*SQJ0WEP'@Q ?QL?,4.T^1@AM96^_< MC&LDF3Z&B?0R(SF:=!.WIY@U5&]?+#0PKI-55&)59*DI-$/>^7#^S2V2ORX\E_-/"&#]MU<^U4OV>J_ZI$OX#!?RY]IK?<]4_5-&^>^),^W<BOH2)OOJ-SO#4[4XTO*%(RWO=\0=);6,;';, M)^3ZEBW3MJ^\'')^A%8_],QR<2_(V,,?4+$ MPR\Y)PI'L/%0A:YQ'713(K[;;61SRY;SP[:RSHWF4G8[PW$8#2'O,#)W ;G_ MB9'GP^\_1T#S;H,\+[P#'8'U?QGDB4 YBU(Y.B%6F687>G8:-1M-GO+0D&9 MT1")*(A$V5PV1J+/OQH= 46\E0GTHNO1$5C_)Y9(B]4D=A7B#?M3HR=OV5J' M7F.1J6^E-E->23K-+]2]H';AU@HC*]F[''E9=>0_7SAAXY_/*!;W0X$P?AQ&69 M\BBHSXUR1**WT*^($Q&(85P[0C9P%;=2_8RZ7DQD77/2[79N"W'C]L7;?AYL M_ S4N%:'/0H+_8JH$8T$E"O H3=&BTEVD>ZR2G&47C8F1%^M=R%PQ+DGL5,2 M.R5?*/YR1;L)/"V6R76ABE$5 >-Y>TR79LB=>'DQM?]Q.,"W/^&PEJL#>O/O MQ29=,4(N8??H@T?5].&75_G[0BV^O70M@7VH2%ZXDFP@6]F#?-''@9]$"K]+ M0+&X2S@+,<$]E5@#90*-6D%G-:$$WFK"#G8/\ ?:=Q*6")\ PYRBYB4<$_V( M[A3 %RL3:+,A(YF^3T2%)"43+@?LD&+"X79'TURYULJT804*N(03>4C:(I]4 M=DF?V[\KZ#^SI3W3TXRD#-@"I;0;V27'C.?=J[+TUI7Z_X0/ @H!E%3S/]GZ M:P\^ NYZ.NF)G'40/O0?, &+@^.2D%X)3H?KW".3 J%' 8'?0X*D'<C7XBQK1M$5;31J9B6U MH"WD'3&O;X=3&K"&NK_,IT\ := @U;:<#0W4BT@7&?/#/P1].)P*#<' M<.,ZXME"/]P-/?HE^/*E3BE8W.%__](MQZB8,U'D3.Z>>C)@$G,FUIF8,Q=! M>B+F3!0Y0]U33^;@Q)R)T2SFS#F:Y=(Q9Z+(F=Q]]LEB C%G8C2+.1/;9E^# M,[%M%E7.Q&@65<[$:!95SL1H%E7.Q&@65<[$GF94.1-[FE'E3(QF4>5,;)M% ME3.Q;79CSOQ](^1G 3D^7V.:-70N(H2C^>K_OKS5,V%>2Q'L1S]K1RE M3N7HE65*/FOCC<'W([?9MV;[15 /&-M!5U&$&#Z?@4_BK?#Y^<7^7RT5J)IV M+!&WD@@.N*M(]XZ8JCXJZTC M=K:_C/ _Q5<_EG+YO^^D_+Z7_:VB4:PM2JZ6:"B2^)T0\EV$Y+V@\5L)C%\X MXUO961$1EL# ^F[2#.*12;&EZOX\K980>1Z M#0TL3A!1W:UWTX/(K?'C0R1!B" "A'A.[A\OX?98Q>K2RZJOH?K5X6^0E+6 MD(55JD>E184FW*W'K.O*SLLO)#E5H4\*0,(:G;\%UX))N;9HG%> ?'P:?C # MQC(>VO!A)74\[N .0^6U="5=3+7:]>V,G!&PUB8JSFA?5*F-]>$]Z]X3$23$ M>]2L]K/1H["TZ%2I_A"H>&/)ZR?F]%@/]X4URU2=$2EB5&8B\WUGH60S78 > M:=C#D\Q==A..L>,]L0->*XP<(=ZGN4[V>GO2&#N^&G8TX2TX-=>E(9QDH"V"QVY,;(O$ML@/AY/K;HS7Q>1A>ZB, MV/9RV%+U>7THXC(\C,$@=*2>=&.^8HIVP;7!C$3+;]H$>[$ME)7]7?(./NEP M]8>>I(:RU#L6I4"Q!:;HD,E4/J/TWH@PT_:FDUGTR5P%:(&E6B8CA\/-1\7#S#7/2K M\Y8R-=2"-"K.^(TVE](0?=*__N1PZG;>QT_3L2!R$34=^W0C! 4]HD:5&'D^ M(QAB-KR5OD_-+6RTZNW8E3PG"@4:8%'VUY\,F8VQ*+:"8BLHQJ)WCZ2PE6VI MI['E$EL?ULN[E5&TVH8,< <>".-4##PQ\,3 \U7CMD\!SX);9GU>,E9;:/+ X^38_XK]K]C_BJ'GH_RO MPC!7[M:E)L:XDIMN3K9=FA@A,,K\^D.E8S"*[:#8#HK!Z/T=L*PE]7NV6]-9 M5^$*#+].I3T).F#H*)MZ*@?F.]P?#B4H@1/HC0/3 42/\WR^XT7B2!2=BPGQ M>.;7Z?:3 MN/8+H OR*R*]\T-2QZ:X_*WDO.9&V]FO_ MB8#Q<@]?;\[JXW%&3V/]:K(LUT9K9[S: @C)_OJ3NL-S-SSJB"$DMCF^QMI_ M(H1<]\N73"ZM4BY)J6Z]4VQ1ZFHBZQ N_)NR!)Z)\2+&BQ@OHH$7J=FN55QZ M^8KDLNW65,=)-2]H,_DC?10G4VIG==5-J7IQKQK56:9LRS1$##)V4F(G)792 M?BQBO-Q)29(+K[_3-%4E!+F53;46=E>3(8:@.[%9[(8'D3&&Q%;'UUC[3\20 MZUZ*I,C8L)C)=U1"-RIE>:A6,S-H<_@782GLV8NP_^-PX!U_+F[9W9YU2]=V M%,E[0N!<"0DR]3]YT'N MW2?@&PNF#HC@@4=JBK@!JT4O@(-/IDABPI301^!!'! V\(ZC&5GBRA)M M$4[[= P0VKEHP=^B*YG^DVV77R24@Y@F."BG"<5.B+N5R =KALIC*7/7$>&_ M)-=QP2IXSEXD),WY.!*8_<"JUT"I@X[!?GPT5M4AX",ACF%>@Z^R#!A6^$TF7"=UY(I'VI M3&3"M(YUZSY1-0Z/NH.R_T$BB1_S@I@EL=:(F[K.3N5PD6L8M8K"IY[:31[A M1;B=5 $@*)8.%+HMG?."V?&:"_?JLFD*6T73#LS!CIBS8VM:0S6FLBK*!J6L M6GEI*&QO+J,W4M7WHXMH5XD**1HCMEVOEU=YHK#,/G7N+'DX\''#U^O@\;_QTY.4B_P@H]IM"E(!SX3AWQO;PP&*DS3599 M75Y7K-S:+.,#H _8/7G)5F"1:0AH;TVFU\/(CR=M*MT&6FWTD4)<>S8- M >L5FI[ ?]*\^YMY T3V:=,_L')##P!8S=PQYES%&CO!@9\$YC?X$ACQYA8A M#\0YW^H6#8B_B1IGN)SE)5+X;[3$QZO&O!$V3IG7YQ>BX&JB*3WAG9;0DH_Y MS/C(.H#^R0!,**^9O!KXK?-9ITZOV]U5S<;:_=V,)"BSTX,"!F>O&*XHT,X3 MXV9P&/XK(0+!68&I.I8KOENT05>,D-78/?K@!?[I59?QA0XKV80LT(O#H=R<]O4@#\:AOPP[%^? M$M \^N7+@QO_ Q9W^-^_C/EFGJQJ%G/FLSB#WV=2,6<^@S,Z>(H6+A(@X)/= MZ&_,ADO:.^;J=QH0WK$XPX:VUV_T%S0F_HW=)<%7__D>_'GEO19_CXG:@?Y#H=PF8@4@W[U&=L5 (G".J)R7O:AB<&7OD@+S&JP M%;6-V 137%RM24"R]J18[.<8:B^F*JUFB5.',ES KS^I'/%^E_&>,XP_"*&H M=T.HGYP9ZM51KL>79A,2Z8T&"VVJ?D M?7=&(.S)/)4\^&T,ILSW-9@^"Z$B1XB_ :TH+";&L0<<6UBB>*W+&-'+I,M= M>#T:=DNM85\*&*#7+$ M=IH.UNZV]X28G \&*]A6Z#;@$X4MZ1R/W-J/@O]B8\_\.\@%Y0+5HOR0XX29'@-["10ZQ=AHF,HV'"6 M'Y((\V@_1X(\ G2?:,E$)I5(GB>\_+^3S*N#RL+\3]/Z'>KET5*#UQ-(164Q MZ6<4(7OX-Z=M.<\.,SAS]PO'W# MN/OT3".+K+Y/.\M^*IO1ZW#DQ=M3[4FZ-,Q7YJJBC?OR:D",N0H\T+AX>WK7 M6HEI8UMA=*\U%9*992.7VL[(RY'E4H&F[+IN,*/F(I,C9]7V*@4KSE^,S#O4 MILNN,U.F/YZ/QX-EKKI;;\'><#%RK^I&;368U1DW@['M#:U6EMGN+'LY4LVE MN!8K*@5L5&_RTEQ?<,6,#$9>4(G/-KV"U>KNL61OW1KA2F?;Q^$S+ZBT&.[F M@UY-:V.%?BD[+&;VP_:X>XWO6K/29\5^DF*)=4\MYTV.EU?T-;Y;=:>0&/5H(#K:NE9AQ;^C0 MU*Q[C>^YW7JV6ZPR)MON5_H9;;%;SDKR-;X;TUE;PYLC3N7J>C^9%SA7[;&3G')\JK,U'6]BAMCP2!=VN]DB4;>^(Y(QS)7P"+U.AIG.+0A,&M7 M6<%[>T7%YC73=JTK=T":]+@E-LAFGFT#(9AD=XS@%K>F)OB/ 4:@Z5/Q;.,^_Q;.XC?8WT4+_G7QM;^IH& %>&NK/6 2F02TEG#\ MGT2GU^XPO<'D+M%IT*U!@FX5$TR7K7::3&MPEV@Q@__]GWED2B"$$G&76$&9 M0)?8Q% JH #:B@WO.07E""13T\PMO-W$.4<7G.[\V]KPQU T/^2^TZ.R?"G! M]BBK-#)[KZ%Z[=*L4UGT.5:XE03']Y*@;XN]PZ6D#'E/Q!4,O,,?YS3W8KC#GS ML==>G_-B/OK,X[/.=9_;93]$&AX/$#UU579^NG[@4T.B_-\OXM<;:9%#53NB MG/]R56:>HAZ,W%Q0*I:4OY>43,3[C;Y%4E+O)"G/[741P-8+ KP&;-^TU40N MAZ@!X\+P_Q5]90'#0O=/6=\))R*WW$\IAYZ+("'>H]JY[V=$86G1R8$*VR4_ M>@*2]P;>2CQIK0QU$ R!_ZD>:6'07#F=IH75DAREF:10GB<;FEPNC-Z>5?7H MQ!YKR5(A-DT=9S<&6QYAH\IHP%3T8G"E.DNE;M-+(0:/HQA+Y @1@\=M^[._ M'WA@=:-6X!>II>K6![(CEX1VR_A \)B-"XV!UIS4V?YF(6:Z3+\$T$>IF MX.';G5$0K/AOX]/?'.??9B2& M.@6&A7]>P7MF(CF4V"LZZFB-I6KNM7K)T9RJMISF-PD_8$6)%OAY$IQI]94;Y]><(NTP"[J6[_T M$ Y,R-1-]HL81Z(=<8QQ)"*VYXMQQ-V/.Y/:HCQ3=;;.])JKLMKNO+VKZZMQ M)-NK\L.6[HA,LB)VR_W*J"D4((Y0"$<(_*FNKG'P\>L&'P>6RZOV'>S)JFBB M92.;TV]KN1$7"J^)<1@R#D,^; 413M_Y0O9E.'88J%BP"ZP[_:0YJZ4MIBV. M5YD-VQX-J0\,/NSZ#*:U^GI=7=N]Q4IPTLW<7/;+NJ7O!!OBP.37-8;CZ$([5,"^G1WBGF=G-U?5^1S5K MG8)-KV2_(F:*N*/P.(4Q#BC&*O^>QN&N55QZ^8KDLNW65,=)-2]HLP^,_=%F MFQ:R^*J/K=-2V2[5*^1\LP4J#RR[%'Y'96]HVD5!$GYL[*\AVG8BF>!XWM5= MOT.\(*XL(%:HIE'LV_^=W18U=SCV_;^#14<_:&OQ2%G!WYH(_P"(?UP(_='= MX,I&T!LX&E>:S?MJ85C.VLD6[Q7ZU1VDX^+(5[O*^&U<\.*9PW6S(B82,UQK9G4\[#. M-TQ)Q.\P H\CB)\108R>QL1H\?EH\7'AQT>ZT%!+KV8UU;K*];P5EN6KY=X8 MUOJ'B8?8'9FZR1VX;QE\#/OQG'>V^8S:[.>+>7@8M"!?N+0(%)4?G%2*]^N3 M X?*AC?&P!_/F<%W"4&Q.5FV1!F%5^=>0A9-&0CB0N$3G"5R"D_MP!] MPS1DU#G*[Q>5]\J'2=)@CC9J+'-9C#Y9G*E9JMYZ&6VG11E(D?4>GF>#BIUWV5S<>6<&V-" MY+*<8DRXV2'SBS&A6*9*2YM<+%AONE#$^K*VI+L?A@DIV6VRJXJ=8T>I?+/; M78(U6V$![KLT\51RXQ=Q+$_$O2>NW+FF\/ (L@I# H;P71R N-I+7&'VYD9, ME9D-M"K6T8<;"RM76\FRT9WW//H&-5NN Y:TFA,SI:#UV<*NPX]V(INW!-FO M((W?95-4?&/C?2V66+^_@WZ_U" !^KVOXY24E0V)2:[3I*ZUF7QJ_F$&27Y* MXID]-4HQ:SY=XPOUGE5HR'XY:/R.PLEW-TBB8+=>"\O4P6L%4X]]L ^_6!"! M>.4'%R.(W/JC@ILOM8O*^5DZKV_85F/-J?H(-\@I-YA)DP]+*][(2<]UI;&I M4C.BWV\OY)KI!'61B6PF#NU\1F@GYV\F'F6*TX*TKE<=)AE56].5V-#3J_H/TRR43N_8VQ'WGE\P?BY44V M012N*-TJ,!ZYA48%!C_]YJ:6[Q%,K[MBE;EK]UVS9ZZ;7;_\[ZUO;OY I;]( M#(F"+L1*_\,N8+(514W5-3.#*2QOK=L5DAZU:+^N[[,7,.-[A^\X\>-2+0EQ MMQ(-&UX^M)Z^9YC8\OA3,!N*6!/^YN3A3BF"BIF95*[35Z36[4]M*I M8+* U=1Z]W9$L:9TOE*1%B.F[F0GFZ)JS$HM^M>?U!-$0:)S:[K@QW0A9DFL M->*FKK-3.5SD&D:MHO I^79TZ?;GK%'9%UV&JN^U>M>4>FD/T>72/SO0!:I9 M28%/0]=O[X[^D4)$>_@W<9>P1'LE\C!]7@-*";8^?I'@=.BDVHFM:(D)?@$4 M6P1;ICNW 3D=A=,T+^&8"5L$[S/DNX0L&J(%'@B?S0FZ8BBV8Z&,_%#U[80" M8( #C_9$SKI/P*O(O&D[Z+ZPSBGP=BEG\")ZA"6N.,4*WOZUT: UMB6PEVL MYR\,[&/-AR5?Y?NNGNHQ>7J;PO1]TB,QPGESDFF1WGG1(U*1CC+B37 MI4<4;4@YX FL.[ %O[SWC;DST^W&]0:*XMPI@M5KINU:5PH+3*5Z:\>YC,'V MB0VGS6?D;"S(ON0HABL*M//$N!D*)(.WMMH#)I%-0*L6Q_])E*HMNE6H MMLH)NM>C6V6FR;0&_4/Z?@0J; "!@J4UZ)6E(%W [Q(.V.D*I@[L<0_H@ A6 M+B04H =T\#<4\)YH.ZBD!M!B#3B=R!0N6**@. E:MD3_@ZWB+-#C\IRA)OX- M_X*4(;!_SH>BC_%__A.H'EB _R[X$Z ]BD_LA #>"?=?-,7SMP%E;')G-3S M&))MXGV@88;X&W4>@'J=.5HWL9<.4&>"[\H@]X#IZ(J(#> M=[R>\R\/ZPE^?#Y9WYZX>*1N"HJD!/,-?Q-^"_P/"\ J8!2 */!A%@[J07+^.UQ"N]0[3'NEN79P(O.R M'6<%7C(;5E3&EH;X$B-ZRY)>-$EJ(M./;#FI&75 L,/?8?<=?^TECD?NXDEC MGIZX,;4-F/[IF+"38]B^!] )^L5PB2<_#^AQ(,>!&G!DWY2LPS=5((&[_I9; MP6^"QQ."6C"F;$IDN6ZVHZKI[GR!G1A;KXD50""N&F";<%$3(LY6[#XPKSFA M;1S/'S_LBDGB:%MLYM-Z:S501YAH>Y,^T9R:W>XC%M>_D#8 H>$$(0$Y#38R MGA=M&^R24!L2P+.574X6?<$\%]<[N%\%6' 'A(W77 %@E'-2GD<2.=AGT[Z# M.R?X-VIC:/].< D-_!".X$U=5QPDZ4")W]N8\0,[!U$Z.=/J\\"^L!3ST!:T M(3I 8^RVY"^5@1@CM@T ("D9.+U9'DN%G>E-:+K->*U1K:LX+.W1;S>A M&@#KPSD?WL3M%-W5\R&\%;@5^,;QKMI2*RDS8FFSSJK)$9-R\*DUV2:!+97& MKOBM/@*$%I7/=LA'#F!/L.B$9G*^;0K_PX-M44#6ER\+H24%1<1&)AD<)0CH M9C.PE8X$PK>V;B$7-T:<:6O"J>UARE;7Y4:5VSF=,C=[/8>!4%[E;@$97<"X M!$C!PVI0(GV@W\M8#HC5&M0;G(8I>::LC]2FDRIU87CQ.9;?07-W">QBB!P\ M,-J!H0Y)Z[_?#K BV#!UL/>"Y9H)UQ;/]EO.C_JAI\"[\4&'4]Y'&>6 @,#G MMFW7+]1U,!N@U!QMS,BTROQCH]> Z<"OH- 9L'X7;[J6C2R$N6L#8MHV!"Y! ME,#?0CCZ^EX<+@.Y(H+M;[ &,,*NVAI@FX73,I%A!#84"WYX9JC<1\7&HYW' M"YR=&CV"(B0,TTDLN T,;'@//+03INM SPA<@:J3Y/F+F-P=)II:]OI MV-B-E;+X]M#+V9[4?J %C4AQ5;O)7$=.4:)ALFXSW6\(RGA*%H$5D+N_;!5U MBN?I _DP=ZC,@,7R5 M'4;+@%!9J(S;,5M]1C\PUQ<(^T@B+B>6NDF8_;$VD:\5 V;;*DEY88"K>F6[ MI 'ZV[/27^SQ;Q&#?CG;,(I2AX$"W"-DD//B'7VW%AB4C-\"14@)3EN?L!?Q($="N M $;;8#7 2>/A49!BP+'^U@6FKT&S%_SW0+?OTJ M8]_?L\$O=4B6AQ?#T[ -H@!@%-AJ.5=S_'7 -?O@ %4943I4<2E0KI"Y4(;0 MHPQD-]Z=&9N(.J&3#]:B@#,=B+N!WD MYG%_)9\V1WT8[HYLA;L$LE,0W2P31?@2SE;4-F(2^#: %SJPQ-Q@3BN@#"8@ M)OUT+='3K18"&A(1P%\%'20<7/8'XCX2ZCCFT/4(HE]QYZBR$*\!XL!L@458 M #-,!H":^"&EA1ZM>D&01_EN/C D$QDRD3PO(?3_3FHE'3(\SP)X1TL-7D^@ MM 993/JEF#@)O/PWIVTYSPX3_L!V&:9)_#ZD0T#:)("9G$K_*W'T-Z31!8%A MS=$C,I[4% U^=EI6-/SPF9)0 ;<<<_6; )[]ZJ04*XG?9](?Q;\S^S+UP*W_ MY1(+"^ZH_S5H%ZZF * @J0%W0.V?XWAL\!'8"7P[04I ?P>BR2$C@#NN)/68 M1)_2_AI)@8($\6M?^Y^,=0(J;\]2,%SEL1@J8-..D MS'R6XP6"X'(8#GSA7_[L7_&+&?&&WZ3.?B-QV33.YV8<3^(S,D.E9UQ:(F;8 M/,5)64*84QAY\HL!/TL.&PVCPF4EQMLL5_:ZT^1K8A>81MCYR&(QU=_I\S[) MEG?NH-[N)]MB9PL/(\Y'UIG42G'6N:TJ:FDRN5<*VTT)7N:^>"8VG=,30ZNJ M*K=M;,K;?']-3&C@HE^,'*_Y>;&JUM*J*,S;9)EJ;8L"O%=P,;*S&#MZ93'4 MV'J[-6B5AD4-&\"\FHN156WBC&1VM,3$EEYRBURIUIG"EJL7(Y."E>&6.;&F M)C/\P)ME&^:&@\UW+D:Z?&K:EU+U"4,,V]BP/$AW.]WM+'LY, MNQQRW##;K ^;]"QW.;+>PDVRRC8-U2-97=:R75TJ ,I?(3WMY08\V1T):K(V M'G;H1KJS+\G7F)2A-)V9+*D!L\8=HY,D"A6A"-F9/A^)MQRRG?=V74S?C.N< M1>W)>:-[C9U+9:=6K-E.8/O9D>=5E6;?&VZOL3.W:2[3Y!HPJ;PI$G.WEC0\ M!8Z\$%#94U=R=N-,L')K(^X(J^.M>ETP,A.,O/&16>$0J+*?.CFK.^5N?C!T M:6:4X0QJ9[=W78>^/#F[/NY33LXNPP6?>'*6.YR<%=K-9G7P(<=E$2-$ \;X M["B=$0ZN1-\T-$MDXA].I1+P8)]#,8'@:^0&!"$_"?A,8@*EJ-[YH3(X$.S$ M&QB8=VT4,X,_ 3:=O$@411YYU\!TAI8T-*)#_^1Q M0\LZ<#*@#PATRH\= #IMP(3LXZA%W]3#XT5;/'I-L!H8X9R#S\&T!,&/)\XM MDX/!$"XTS6W?C+?=>?A#?U--\HC?D5M^6,DZ_,K>9 M"D>IA91;K&]=,]7@MK_^D%?"8@]9:)]JE^'7*#0XV"&&A!-(>8 F; M@(D_2!BAM"?F\%S7CR<$Z0S@V6"H_S044'G^):])9_H.:8BGK&9\:EQE<6O= MG19F>GN"<>-4IT*:<]Y-H6/PW+=-/'PY=;+)@:#2'2>O*A.WIU>J@E4LTC!W M[O&TS&^0:OAR BW=S;"%=T45HUK[_ECLTZ/4MOMTOO(90GQ(CR 18)QXNJR& M$ARL-F'0%/SWD49!.W[;[A%1X47[="$29"F 8FT?[A,!B:9"+:7R)7Q 3M_^ETNVT.(CMSJ'N_(\ X7[3-1 MK&KW/E?KLQ&IH1V5R_3O7D'C2:^G$QC^15=L@?D,4'I&$V9GV%HXOE[IIL+)/#%CP3@R7)[K+$9:3LS=6#GK61/PBQJ'=#K)]7'N1I@^U[ MKOHY8RA&K]N@UT3DK,'6O ):>D.TQFQ/R3/M5=)=,7*6:>V#)AGX'4D]51'H M^UA>F>]K>7T6M,6$B,VWB '@PA+%*Q XDR=KD^D5:^R:J99D)YG-]5'F#[3; M,NGO9[5E8ZLMMMIBJ^U+@%;)=*TKF$6PY2W?=MD>6S; (@8#PB%V=%#^^LDR MCM_':,O%1EMLM,5&VS?'/V5SS6:3F'1JY(D*QZY-+Y?-S7)"+R_[E6P)_+M% MV@8+T1+1G:+8Y6K%M&-N&L6WX?1'R"B@6BYG& M4JFE,JJ^G_0FZ>S>J/?H60:"8OJ.PI_J]_UR6'Q4-J)@*$+J)11]Y3I^74%4 MFR"V&6.;,;89ORP\/U_#FKZ7MH:V[P1LNZB@=Q1H\I/@_&"CPA7T%PF]2'18JT^4V[. M%;5>]O:80L]PS$^^SA"7=Y&_MWW[ KB?K9:YFC1G=PS7W\[(X7C;;E:VGP'W M+=-X$NR-A^^U0!84 /F)&V%^M#@;+9L]>GT>/^[63?36_M,V@ >@N+('+++S M6J]9Z:Q4JC <42+7W\_5+BQ?A_: =(Z(&UU^=L$%OVK!R@^^V G;U5'E7L7P M)2-LJW6M&O]1,1M4/B0,?*'N(D'5*5C0]KPVPY4BY(>23K\3MZRL 1LN](/B M$FT)2?( 3)\VA&(P=]A[Q6Y+I])NP[$PYO=(L0UON2ME*%?),@5F8Q?SB[3> MKMZJV,91*5CL'GWP @F]*C0O%-EO6]'P3/(IW]('9%U<A9S^9[QDB?D\RHKQHXT_## M__M%_'HK:F;]DY (GXN=]@$*7OMXU7UTL9 \E,;_D@+R-ZM_O$[7/!:>%PE/ M*A:>IX7GE:>MP>82N3.Y$?H"-AP%L^=D6/E7YQ3CH;XZC%2_FQQ$;OF?M=W& MA A\E2@0XN7'CT\MI+U33PWD, M?CA!+"_F73,ST%QL5,[U)EB%<==64 R+Q!.H+Z-]V0DQ%NU8QV,=?[F./]ZU MY0-T?%A3YI5%R2ZH;:ZUH/MD?FT+,M!QZM>?=#;6\9>*]MO,N(C9;"L7< MCGYU,SV4(0OI 7VT'J(&?2#G4SWUG'PE7]YG&(>A"+*E-M>ZM)2ZO_[D[B^+ M'WU:2\:_(_&DW+"S)7VS5@F:6&L[/M7TJJ_O5_AF$F?K9$FIS?(93%3ZGNA5 M%CF>A%TO\8_N^?I,8\>_([,WU>7^P,YO&-UV906;#MZE)%J@DFDN0GVF>^IE?KM5:2/Z//>>>H07?>- 3_WD#9Y2P."%>T.J!7 M_6:1_I4X(/VN9:.R%'/7!H^U_:E#MH+L/'0"?/.MH:AR8A 7_LM'D- 7=&P%/F(L+3I..&J\'K=!A8W1;$13.4F ; M<]H.>JT??XP:*F\7IJ9Y27-KB +L_@YL MYQ82&Y\+81; \*)@?FC'K/6Z*D M^7V5@\Z>?LMTV#S=#D$'WDM' :6@T:<-< 1N]8"'0@+8Z)"B#ES)M1LNP6_A M$:+D]W/WV\;[#=]Y($* C+"/^V@A0E;"?O>0'B?79[BYZ0(^:)RB(SH=."% MCD%.PYD$8I/8FJXF0%GA-IRBH:L74-!TTQ =>&-&X'1@N*.N[;Y!Q , 1?_4 M3!M:3X<''*T3+&\.+_F8<_C 4]'TQ_O-K,$2^$7P(, I\"WZ(+2;4%/5*Z(, MG\TIB LB*GD3MJD7@8[IJ,VJ/TLH,."U0';%(V*"GX&I 6R&2G6] 2L4#\-T M@@>"-=P4-5_5G_[JA._.EN]3,"3+N9BYA@U$Q984V(\VD(5^WDHE,.I$\3Y+\?R?9H(?CFS,[Y6BI MP>L)%$60Q:2?;(JJ-__FM"WGV<'2,[G[0ZF-WX=$)TB;!([=I]+_2AS]#6ET M06!XW^V(C"?WV8*?G5YI"S]\)NDUX)9CKGX3^#UU&BX@\?M,^J/X=P:$J:/3 M1BZQL" \_->@7;@:L7BV[ "Z7PEEO>#?&;0/\0KN.%?V,8D^I?TUD@(%@4"F M '5'0!A1$H"TPS@QY'5 M )$"84U@H#[X)?/(.0. NR? ME45=YSKF5K3ZG@VLM] A#'][\!..MH*\U^)@@_@3G[(4$N3PB^!)A:5(E=*Z M/L7T4H?4#:[=-2:O=RW#V.JU"36Y'6Q4#QQ,$YKV5SU,=C-;39WMMLUR*WU7 M9:W1; 4=^=13'B;R%5:P&L>)%R*(P(DT_7"9*(&I.X'E]F!\0'ON>.]Q%L", M/H@*VG1\\P]\+;AH5SOR5N\3/\A!'?G;MA(M5_18^671$"U@$7@A M@/'EG2 M\59B:'HHP17\K6FIH3EY"'D&'IKM6*ZO[@=K_#X!WW;T#&3I #&3Q,!6/X1G M[PYV"H 1,!&PED3P0D 2>Z&L[@+?Q78>#"(P%<4$%A28*SP/@&Z<:R0DR]03 M+RB14TTR?'5JM'0LF9WM"K/D4-IZ]-4 ^8U+Y C53PM=P-UZ^V5"VS+F?4X M0_:A#/XK@)( NWI<8825ZG9=+4^HKB!;VXR:HH]MYT!XO0ZB<,FT"D<<+H0, M/HYT9>G%M)]<8&R_HJS4R;S(#F2 0\X6<-=+2M#BO)Y^DT#6$[*2 TL6"A&, M11P+%71^81S"47A7XP[6ZWTB+_I!C< ?,A"$/^8=/414'LSKX+,$C!4 :3;\ M)( O"R@ M:\)!^(%*P8]1'.(@Y;Z_&X0E5IP-%CTZ_0ZZM \8/>=L& \PCM[@!QG@[Y%: M@X6A1<&YPRFI!EB\[W@D0A,'+D?D@,?^X%X<: [5&M7H@^<;,(#T4+<).!X+ M!?KY_I2 $:;8B]!/@=K_,$_)1:PZ7><=^N5A#^'L0#!\B8-D@1,'F\X!AGQ@ M *,\]-/CTE+PIV' 4SSO*Q@. 3R$X)V0+T@M@.F+888]A U"A\7A"Y\! K MAQ,@_/J+#>))"7X!]?#PJH?50Y! ,P=F =!).+\KK$>1GL@$*#YG(V6 _)D> ML"[R8+^2%"?1 1SZW$WU;".%<09H%ML)$L/_K?XG87,; !1 2.%,3T*#OG:< MQG-5&$D$5I*%T (&#Y"\*W/7QZ&P:(X(9J.$43P?"Y657PY'#&@4R.LY[IV? M6IY8<#" "O9D%-T[?G$P>W1^>=L@T!L+\;S1U"[Z:RT<+15*%#P]Z@$9E T@ M%,)58UNFF[6,5N KV)KO%7>%RDY:Y.A??XC[7'0.)JU4:J_1:W*CMI=.!9,% MK*;6NY] +;:8:4H;H6@SA6RF6)[CCI-FNY!:EVD>GWG$F,1:(V[J.CN5PT6N M8=0J"I]ZNR?W=H*E5&_DK,AUEA&)T6@RJ;:IM")#@CUQ)OL7IX6)BTC Y"! M=ZW!]JZ@0'( !/!8Q[?Y?4O$KZ:.3+4@+'"TV8)]&'P+#0EH0(@H+ UM$LZ" M.#,'1@?8L ^PA;9NZ!B@7 K)/\)"MCUXU ML>5893??>;* SNE,84Q-QE:WH MGV++0TLW"K;\\]GVT,[WA?5<5HL!(WSK_S@SHU75DUZ[H3'U;FZ0K6WW97X& M5-H6-Z*1\ !S+\S[?QX$!?+X$"[R3=0@@F:Z=B +<.1#!/HXP':S2FX/O1AD M3FMRZ"R4-I "@ZT5F,_ K+TLU)8I"JF:6,C,6)?);/3U3AJW;?I&A=K^*C/J MOA9-&/?!S\M9.3WH/ ML@''P3]NA>88.L,\%%$_>OO1>_TS5N2(A8X%0"(T;>[!X^0$X)6!M8J2A+S@ M*R[1E:/PQTY7;QOA>\XF!W0.)T1@>.XN4>[TP>PU%-K6N*WM N^!D^$&YR28 MG:B!U8Z 2Y9HBL(6L+1:O4LT&@5$R.#K,HJ1(98$S/>'_-LQ9=$_KPMW+4!< M0!0H[P3VC_]S] _\G_^$[A][W[]/%!4;H"V@=0%(F7.P[ONF"Y]G/'P/Z N) M-8$>+QSU\$QDU,.S)^!+^)$2Y![[>21 <*!?C9Q0X!][B0T'8-RUCT+U@1MB MB#+GVP*PKY3O7\.IV$%=R]"S#L,,MFT",4 >:AA/.(F%@%T=4ARZV@F9LY,2 M.M5?P3 \LB&7MHPV:> M3-[TY1$>'UPD?JPL<0/%%R7IP#,+I&HH.?? '$OD164#X?)P*!4HA&T?@CC! M8X-?^>]ZB!59T(1Q@T#WY9G%^7GXC6T1F$VOH5.?ME0XLI][ON,.G0F[OP#8 MGH>;1\BD2RNEJM;(_#SML$QR/")F6B//8IM $H%A)0JT\\2XX-3R@VR:2!HP M^,& Z0_:A7HR3_>9(C!CFAVFU:<'U78K2E9,&VR KB$F8-H)D#;L[FH4W': MB"P ^6#2'XKL; +@YP1S%8;?X;_A,Q)].!P%W<"N!SX,=CCT'?PTW.0.@5B( MR4%^+G+?7@:<-A1G>U8>3]GFE!6&ZGHXW:X'R9RR!@!RY428F@'=@K,X'-;" MV;2 'AU $GX 1P38F":G++'LMH8,M1,STXV7SU;U$VRLMDJO $= 6-TT$'T* MW$H!F(1TTNZ)@+> I@ T2RC(70VR+0^0B1U!ID[52LOBC&ACZV1ZCC-TU5SF M@5.5QK [[$KOMH1/J(I<:=5"\OJWR>\?(C#'/3P>NAW;@)B0R8)P!B#.;3^V06,.OL/3OK^ M![<%X^QKST49QC =%0C!W=%CH+:?!''\"3S\#FS7&L<'T (,S#N0AR@9 8^"%$DW>A*13T$4ML@;@XP TXW.,Z<0P. ML<]PWX+/$46P/DT[G6KPE7"D'T?,]IUJ<2=:O +[3(+IB^B$TM"5*H9-*A\&OP36 R\=>@9PO Q/"^^#&84S/CCZ*%J(,K:.=N,W M6*XAZB+F#[S5 ^Q60_ZB&;3]"9QE7%U@-1H+/PT&[MST>,Q6DB2F]"FKN*L: MG">_JFP( F.$9L8Y*TEDH_M:"E/!XK8D-/.B&*1CP?VYENSV'(N&GX5G_$9 $\, OQ.(LVU(';'VBMS(9?.$M MI4^WW9=9K)NS'+S*)NO=YFA4*NS;3R#="M[[F)EW MM-W\XP>$@\218 .V?Q#O'B(?3P-]_ASH6XAD;6_BPM+D*ACIH@!Q["O M>E0G/ZVOT[VQV04PESD?*=2*O(;7S([:UE+L5&HUJ]L*+!EY,3*9FE */ND, MU:1&R3NV-W&%)1R9.Q^9FNV'NB++A-JNS;DBI@W99@=6,2+/1^*=Q;)GZ=DF MIJL[V21-J9W-;<'(B[XE1CCQ6LW4R6DMRHR<*B*A=O+U.BWG$;8UKE M=,:DJI8ZKMOTC+Q\>S>9MH3],.,RR7EJ:%7%?J_7@",OWH[7:LP@G2S2;#O3 MSS.KM'D.- MI&5-4]W"B('/O)CG7MSG&NWF0F7[9&>>R]=V2KNVG5$S['PD5Z_6YKS39ME^ M?UB>K69N)0?63EW.L^&RK-26EENF/*MVF'I-7M;:<.3%V^7D',_:Z;6BCC1V MLU0\>H6;\BQS^?:EO1N5:LNRJNJ]82N=G@#;&.98KYK-+D41JE+<=S8E MM=)- CW*73[3;I)XV77(&EM.EYJ9@C#%9GD9C+QXIF96NMJTSK15A1B1TQ9. M$U)&AJU^+QYJJ*-QOLB+,UH%+=,>+*4M''KQU%R_MVRD:7S#*.UBUI:Q M,3_DT%,OB,_JU*2_G&$4EJ0YW>NVC<&$D&&?R8L)*.FM:.PSDQ3&S;+D;IU+ MC8<=-/1B OEN2\W;5;:(Z1/=J;8D MTP6ZC!.7$S!G):+M*5X/&ZTI5C2JQ'HT04,O)I"9.'NATS%::IV$V438?B.- MNG#HQ006>3N[ M\GJR7))7=7SBLG5Z7L9[>9EK.-MKH)?+FI-!PQ!,-9D<.;7F:&)MEA!,+B!" M2>\6DDZF]JPB=XJ\4&^O9[7N-2CC7*["V*-LG2GO;*ZFVE2Q5:"!XE]0=#@O M:.*^G&98HI!ML=,DNZ#&5V%GT%U@N4$MVV223HG=ZKOR8#ON7H.(BI0JD87V M3%3[&7%:;A-I>;&Z"A&U1GXR&!:Q,3L:IGA!UEAR"Z#LBN*7A^FTO2V*&6Q- MSX=]YE]5I"O*7YF81&Y7K:08MJ[A5;/#DL=J2I?4_RL;([[]4(CPU!27Q5GQ7:C M.M\>*?XCERB?/HY\Q>$E$8TKE\SC^=>!<^#[ 9]1*^J=LZNO^V97=P',-3)*=9[>.9WZ%>3!UAQAY6UIR!!)B>POFH-\/2-# M\EPY(_H^^=.OH! H6UI4BV3F,=D<*UH&=E*6H:77Q\7H+]*F*8OVPT?PF>< M'87B&*^A]"%@(UH;A1>O$[YE&C"8"\ 60=0 9MXG)(_!Z49 M%J)[E7[[=GA'0]3,;>+?03@3'0*;K@WTR_[/[UMV5C]L!(?NZM=5X/BPD0[6 M^4A7]=24[9&5KCMBUU4>P\9:J>>K(=1\R96&=BSIQS!J=BSD21,SAYGXWA+)*LB>$LJIS!B?M, MS)I(LB96FJAR!K\GR9@S4>1,[CZ;B3ES0\Z\LN/CLV&9[]E1[#GH_ASF'X>_ M/X0,S\47/JE]_><3YMO)!V]J\,/_^T7\>NN>2MWGGH3N" A++!L?IR+/.B:? M) ^/GR@^M!9.'@[]OJ0H?"1^O@-PX/RDX$9FD$.(KW8)=*$X$=Y)_E+R M[E=._$88^"+VOYL9]*UDH0/K7/\T4?@KF^=;L7\@6KI/H'^CVA#_^6FB\&X6 MS[<2BQ*G6#ZQAK"R_7N810\587__%\^+HB1]LGBT'RK-W(45@?PUI_ [_P]8 M]>+=E"%R!'AO$RD"ZSN2>53,XKC<2NJDAO'-*VVG9KM6<>GE*Y++MEM3'2?5 MO*#-3FMJI3ZB8'907N5(WOT2VH<*3ZE?8:V_3DWD^Q5[8&!*LC<=8I+449(R M[-KSZP]^1Y*759Z^KWI\AB<%KZ]'CA#__1ZVDW__.PIK>SE&G$C \=)6EHBN MGT$<>09(BLI&$414+2Z$DK1@S?9Z!\.(_;:I>KW.=F<^633N)5!"? Z2A"?5 M0;0U#+8BK^*\$C\LL;UK3,;6?,2KZQ7C8?U2KB"J-,"7]*\_P$[(DE?PY7WC M%%&0P-OLPJ%[$H$%OD+%7EY_[(4U/:_4Z(.>S;OU&7I6!PXG]D?Q9NAF$02GFI.])ZJ 9Y]TEOJNF?/R&[-\ECQPA MWF-#]B]C1V%I/W<_YN3=V_=B9NT"X:^BSMVH:F.53=!'GZ M5)2]OJ?_W0 D $>R3A7OVYY'^2I7];O-^K648KPL7KJ1NW6B8]SI((U MWR_TK8) B)#">P8TM,SAKP3=(?%*_9R?L&%DFS=G=KI M,N"=QWZE.N&*=6V-RC%"%RIU;@C])U25<$\UW%/]WL[7#D_^U/^*=8I 48Q$ MB5QNQFME62C29175C(3^%YV(QLZ+VM_]3NN7N61!H$0PO;0@4.:K9228>XQ? MY[3B_O+G3)?\!WSR1R[X.;%I.GPL<9V MNPK=2?='@MM)]/.H4#;:*;NBE_?=E"C<*0N=M6 Y:Q?PX9WN6D,WN]TQNZ%R M#44U!2"0]?RL!;$#NFL, ^4DW"X+M\O"[;)PNRS<+KNK[;(WWT.,A3&73]@_ M._;,&.B9370'%>8.HFOVV3<:8Z.INEP["4>+Y#HD";AY0K)5Z>OZ?.3>:DLN A@T$G'6#1U"6#N?!7MK3#2,'P8X< M'.C$LYS-)]:M]=T%&.J8H#2OJO-*&@$%YD0,Z<0DO0AT*MW2#%6&_U_VYK9A"V ML#_.:0^RTM_9DGDU#_UYD'F3ATXM1_W*8$L"LC/+ZBUC4'>'*EY(?0^=O5K> MH2"$C(X4JP M71U]]983 ;;BFOK"S3XJ#J >K169 CFM-:+H\$1 >"(@/!%PZ];-YR',.^,$ M;D=O-^1!WB07V0S=B@^RQKK&(=P)#PJ$!P5N*IKP;MUX/'A^(%@@\@'K]]Y!0"OX(^>VZI)17_..*'873-[= MM%+!#TS\*32]*32QG%G&0H\4AF1E)2F;#L]6RQ$7H=-[#P_\UT;AD7. ^A@Y M6LC:3HS(*/[B6:QX>O*B +X12JXO_G/'LF5ILYM)TA?^Y%X!.,)R%O#7#:%+ MA#T#A#A#LF(1LH;_U+ CB'Z$](ZL_,"*)RTHJ&(X)GS" H1GNJ*&HKY8Z(A2 MNJ@@L27R,A() LDZ(5L$5"T+E=2:$&.@ZB[Q;_]1W*/N6%#0K/_\Q 3Z\"7^ M9"479V#BJ* AU77-FQM6#P[*X HRKXNDK0N[3*MP+KX\CT>E.">G%HZQ) 'E M%AXY(9YR2>X' > T#?AZVX1J<+-"B55L]TH_KB/JJBH8%OBY^W X2A9VYO>S M$-81S"5M-\Z("B3[I^#8^NX+C,C>-_YJX+4Y6![\-N@;;VE)DO]"D[7-W;AV M\_*(\+9H98*.)E_<)Y_(JPOOU^$[)2BG.Z+M_L;+P\^Q"00EXD(R_3)T2T8B M^=,$*I3-%3AYIQ\4/O:>A#^^U1*"D]O_^Y?F M8?S%78R0,U_%F524?G&?+.1,J#/?C3.V;KSDX+$O'EJ],EO.>0%'>["2WBM/ MWE!G]L6C9:&V_"5GWKEU_*HQ=I_AG]= .S"5G:]C+7Q1L>;OPN8KTN$#*GW3 MT<177.?XFTK>NVA7Y*]J>(=8]XUF?0,0>";HH3B$"/@, OIQ_A#_OI_ A_@7 MBL.WQS^\P1E!.YPA!'X_F?\;" QRGNIWJX%7LN=8!6Y:*MX4!/DPR+LK64!' M/3QBX0,?'X&+03@T=$2 ^OZPPPLW1I@/TX7 S?^#(X)!F-\7'0K[XULCS&A= MS\XWZ:+D\(WZ<$'%E/1$'4W_[M;(7YQ;W9^1\2Z'-"1O4;AP2<11QG-WV&P7 M%9FJ)9*K_'HF.]PHCN^(7*C9]M$&1Q#$[ A;OOO_Q$5CQ)^=%"[.D7;?;K1[97Q2 DRVN>HN$"^$C_N-W(DHG M7KAA=G-NV6F5($R@#ZH1%!0K^RZB2@&U&6ZK%!"6[GV5CX*I6Q?-AYJD]@OR MH$T*KK:AVM.Z.LIS(Q:7 KIN+8^O5YDO,17NQ2X(,$!\@T(_[U+^/S$,&LRB M4J[3PR&YB*R8>C4GJ5IO"H$!&@;)Z(M7S^\A+G%J*WBW=>[7:_I>08A?=U,K M\*_OQKX:8&!SSJK0J U:2J;#371A,59ZW=8H@0,,]+7*!0922<+00AA:N'FK MXJ\1XT^LB5DR$FF5UZDI*8AL405<.9>)<1!$<)B!N>1HW$V8X6.+$=^CUW3[ MF[RA@?%28/*X^.@;; ZWR%<*+:J0499TCJG2=I:O;*>C)+8YKFAQW)MBA>&( MT' (@N'P+!+\B2V1J"2:;L1P*;*Q&>0KJT6?7@XY" [0EHA'V>2=1R;>>F+B M8W)L!M(/NWZPXI9S; ;C2,5U$G%^RI&*2F%8MIQE(4\N"R5W0RO93I9T1RED M?:3. Q[AB8HP[!&&/0*74?.K3E0(;(*,40LYSB_3Z^ZL4='Y>0JA!PYU)%_= M.+ENWJUW)+"ZH/Q/+T.)B&XG\Q8TEJ%*'23'8@BXOJ$/] ,!918E8)-70-T\ M?,*Q ?K04F=&)L-L56X96RF-N5TDIQ.RK%1:AZ)?JN<#%E.=M)3EOULEKA?OQF$P_00#J3$N[M<+7A(YOT:F4 L(R0(9L0*H9E%&,#TLLNAY'+__ R_]=W:<$/; MZ)B50,D)K;+8E_E^LS9-;5?B9+1UT29Z_/QT+M:23Z'[NQ7EUNCNI#)K2IDF M3+*0G-5HDQ57<=I%:S"5.J-[E.C. &'K-EP>9,V&JX4EBYY2$,("FFJV1>!T M,UYY"Y2M\5CE@)]3>T),3M>:&&;JT]^TIY^OL#O%*93$TS1&@8M/P78 M)PKK9UE])ENJY8SG<(A(G?6GG+LG:HT$!SP5"SI=9V=(D5$?1RLOLH%I\I>L M1>!/$=@CV."OJ%_P7=#?FR 0.1K^#CT( Z7DQV.U''&V?^UX\^'B^P?1FL^4 MUX,TR&\04G+#KQ=#95K)L5P;K-L=4I2Z2M:<. MLDTKR<;)Q:2ZIO.3(IMC7$36\TVXR[H?);[&!23/7, 7KEGBUT"*ZQZ@HPR\ MNOES%^D]_16-XJ>C38")/IW]C#OYB7>F8:]M8$$RXZI8N/P8@<3*(O;W. - M&&3X(&D2M TA(%E!ELY^U![@.7C4$"DMH,FXU!<0'<1AZX$0@6D+LD;H$-), M0@$; BP,5=\ X,'G J!PZQZ-_:X0(%*)7Q#:=-@E^G$BFU!J=-."@(^&@9X' M@NFEQL8Q*C0 V ; ?I\#=;AX[,8#71FL5YH(O1T=ZAJ!W!I!G,E@!2<&A_9? M.!-(T!6$7-0:+HI>&Z15EB2#293(P?:7R8'*G=W-2"*T&>R9"4 $U?DXC6Y!=FB0 MK:9UD!T="V-P .0LAN0;(4>Z T6D";D#I1"EK\26#F'#-T+;!,[J^GLNEV5) MF*Y'S2=UP&ON);GRA:H,K1 I*0T7?+\P-HI@"[9U\ =!$U0EX7BSI619#EI\ M> 2?ET;@:?[$H_5.KBXX=VW3B#7(5+-"RMU:N[2(*SG9A"L3^TQXY"):/!"Y M8/(J!V$/CL>"!,!T>P?O:JFAI#:3XQ7OM/5A9A*?L>G)'T03K\@[854RRVK+ M%'."_"AV;#73VG2AL4;%W\>\=C"9UP8:\RTKV046BM>8TQKFG;$ M5K$Z4PIQIZBX9NS" M1O^.=-@4VME]?B0#D5.P9M"*]7N%4X#FTX0P!!FW]9]%%BWZUC$A^S5[%TST M#&_?V$'](AK*FB/X.X0X]_-!CFM1A2]"V\VS7:F/W5$59*Q\2I+K9]/:T+&# M,]">[10A$@DB@^$]#/_6$=!A_*)J-,_%_$P6=$HS,"H^HJ!V0\JI[B/W9<0&7WY2O) MR7UNH43Q-!5%NZ@'16=B5#01_RS^G1BZS,$!(H& ACI4WG]T&YF+.\#8Q]60 M4JJ_#MUI_ROH5.)H&50*5$8/%=_>;P@+ASG-GY/H8]I?(JF E7B42*;&8P#B M(RHFC$*Q&"6-R8XO<5+A*EXLW MJBF +IV=SWU4M)1Q+,GE@-V8)+KQB5M9H=.@9^]L/[;7*EV3B[E.J="3"R.] M:21-5-A-SF %/9H!=R/,@/MW46J/4^3M;<4MHM\?NF&SP=GM6CN=C M\]X4MMR]\P3*]V6ME'(L/8[;?"[RV*=':C7-DRMWA)HB.?BT6ER7P[3/FB.O M%.N:BR[U.$S2-448*X-U)OD8[\C7*M;UUT&OD^IK$'7DA;,XJ,+V3(Q)]BVW MHT7\< OAF?#9:7DV%&IZ1WVV>ZP5]MPYN003I<*".\$L[A)-ID+.!)$SJ2A+ MAYP)(F?"\F$!+1^6B(?EPP*G+="33B5#=0E$_; _-M!N\U[*WQH_]SGKUPR+ M^YQU$&Z$?V[F])O*C/[7Y<)": NA[:N@+:R@$U;0"6 %L1 20T@,(3&$Q'N" MQ+\O*A:B8HB*/BH&.05=6&7'7D'0(.1#.:+)P>6S*Y6W2]4F@,=7X4.DS< M]=&)N]!^:N"H\"&)N[P]R2#,+5"9NZX-/I^2=.3MT/,G^< &@[S3LJO%-=\H MT.IX(L7;]5C+J[#&D-'D)5RZ)R?U-!VZ?Z\E]$1O-CX74+/H"ZY9!\]*.LZ< M= &.:D*9ZZ]DCN(=K;.M35<..TY,O8)O%'V>&2F,GU[QA-F-F3\!!IVOR+%^ M740)ANGS]X7D$DURF5CUBK&C/E^ M4:./+*+WG>-&0=Z>#NVCS[./]OKT@HEDDOHP2>J;=8Z>I:>K9"O=S8F<5X4O M=AXI"LOPA3&B,$84.$OGT[#$@23[$U.G%U%GC<2$*RJ=]F!8G)-L?8#SLL11 M3D ("-\O0/3F,T@?4>0O#!J]%C0*JP%>*P_CVX!0M$ Z24F23(*BDU\ZYM9) M6U]1Q><##BD-VA$J6V!B"3*B%:QB5E)T*S;UB@LRL4O%2\-#2F'X*0P__55Y MP>N"3S"LL+\ZI%2CNU7*TD"6WQ1C73-F:(+2Y[RBA0P9I<_K/7QJU<*#')ED M%'_QA@P9%P4SZ#4+GQ3CM9J%EU+,'23#WJ6SNTHV[%>*N/V-NK'+I3HUS;A* M1BKS(5#S@WDA&\BU_N6C-CB_K_D,@ MRD=>-X[Y.:7EWGEH!%=(/!>BPP)IZ;S$CY=J!OE752/YTOM MUI6*D@-LV^W%"J46$J[3[/5]SK'7@*%S$_G%#=BSEMV9V)!C41*5876:MOQ*B/DRLX4MCR;T2S&-\QJ MQ'7Y3EP>9BNT4K33Z)UG,[)JE+7I%?(43W,C+MDO])>FT((MSV8D#A\+S4(] M-N?[:7(\>[1MM55&=1C.QMEDDO)XG7PE*G+3?;I+,WJI9H+&+@MD-^.P MN4V[W:^E.M4Q:TTO54*8=X>DJ\RW9*XOCU.K27*;L WW4GT#I2%F%XI5K9.= MQ933DYWZO(=J99#G3L9[(UM<%4G)CO,;99U? M5J7\=I# 3<^8OTF)[G++-7F>7I)YQLX9L]B&0TUWW+]R!8:2)NH+T!7666C7 MJ;KEF!?**11KK,-/$Y&$ E@QP9BCGLG8G+=Z0,""%J_]0CM<3(+Z^N(+N\C6 M5Y=BK3>Z.8*B<75FBOI%E.J91BU'=+G'7"=(]5B_ACJ>0!)0(HG<&JWM@&C# MMIH(%Q[SB*KAR[6A=H< M7A6.3ZO,DME/KR'MT<)G31IH0)+M9ZJP3,WJMMSMK0K\AA\Y(..JCP/V6E58 M/CTR?T]E4/!&)7X#2T=35)B+_H-,X;!RP_USAHK289& 0'(F&8V%%8("R9D0 MS8+*F1#-@LJ9$,V"RID0S8+*F1#-@LJ9$,VNS)FW7TAYF]]_FR>P;^*:WTN) MCY\OO'22+?OO\T:GHHEDL._EOCMMM'2?#>"U4&_0;_Y_ M] VFYP[@'5R&8-YQ&<+WW'QM.SN;M[^UP.SOV+=*!BDPUK+/-XK3WCJ6I7+K MJ3MB1LR/WQ3YD$R\E-,Q5.)0B;^C$I_<93,99JMRR]A*:2@IK>SN4:V,8T,+)H>--"U$1:5SWA()%Y*9Q\J<:C$WU&)3ZXT1LAZ M7Q@Z]EH1*"!4M7)1%IGI)RJQPL?,:7G(5GE0W39FB?1B*G)(B5-X)4Z]GN[F MEL/.)_X"Y"ZJC1W&">X\3K#;;/H>[O\]^AI84SEM4M7%M^%<)S%U.XWX/*=D MAEP'=F"RK8([BF&/XR')Q*]GJP1!/$(<"''@'MV5=^- MV&XRV'M4B^P@M9C1TWAX_+ M)L8!Z/>P,>9CG9[@>#AYW83-M# .\W< %K339,'8!0T:58*#@9^S_^+I]EO0 MCU5:JEY>41:Y&,?,560TTGD;9>>!WA#]$&=>JC,1(D:(&"%BW(7W] [$$-M. MC=-:1H;,M!=L.^^4\KV<"Q$#^DV)6+A=&^)%B!5@K,P6A!!T&Y. M["%.7RHB%R)(B" A@MSU=M#;$43J5^.%;6D3X2NEYIR:2^M5=X9L$'3^C7J( ML[&[V0J"G62!!""!)A]WR?I[0MYWFW7PCNU^8?#ANS$_%/E0Y+\9\T.1OWV1 MO_GX^I4O,P=KLL'R7^_=/PV8CA/_ONG ]\ZK\C7T>><33A^^^M)]:'(=&1IZ MTLK)O+C,Y,N#V'S1&B51)#Q%GY]&_$^( B$*A"@0J.#UWZ, H_;R(SNE G)9 M%ILSIOR8KTQ=B +LC]]),D2!$ 5"% AZ /KO4<#4YKJI,04NUQ>89'PX=HW* MG(,HD/KQFXF=7\?^SZW&HZ]Z^?I[PM==8560@.FN#NKL,.KHTM3;M\SDT32; M!MO^E%^Z:J^6B;&YK(I*YD)GA2%?RA<1ZG2HT]]6IS_'^_A#G99B:V'36ZY' M?"093Q0[C62QG$$VSB^2K8E!9FAIG-M6 MV]/X; I5&IUL83[XAG,0_,I/N_0> MC00W13L+E.F\0_:'<2>VG"_E1GZ* =Y90^Q^/G]J'!+*$2<$'$"UN"VCFBM-:WBWQ"W%.-0O)1KI5;(THRG-;F!=# M02$2A$AP/TAP/T[%'W@36G%48#MT/@-\$\T,PUO8D0 M" *A&R$0W-LYLS\ @B6YZ!O-1DDF*X.1Y"SKCR*88(,@A6I+GZ=,^+L39H$+ M)'@D(VQA30"/:&'0Y-.#)@S$AXGNC%40$#3\N.I&-S'W[^(OO=U/LKL63V6L MW"97: MERXSEN%D;VD(<,G3JBH400^ (@>,VYAXA\._F!P/T]_T][+--TFH/S!V0IJE/"DX(3G_YW(J]__@__L2"BJ0# 1 MA,S\R>[A $W4!T^2_-?G*+T($"%W9*=C!\ M@"XBZJIN_MRAV<%4_>YI#&Q3$!F;0% B@@0[_RFHKK"Q_*DG4E%F%[;ZN0=$ M1!N"(J-,_%_$P6=$HS,"+X1UY(",/HY&5"#!Z7N/[;XS/9KX7^J6C+3Y)Q8B M>070VX_>B[EEZ\9/FHHB[5G /_V)Q:AH(OY9_#M1$N:)6_\3B)F)T/4?W4;F MHN:CSU! (6RJ7C^N]V+_*ZAH"+N0BF406$-UVP.!\/M #)Z3Z&/:7R*IL$/: M=ANTFJG4NL-G1#?N-H7%.I%HH=7@A]?;OB4[8J3F-Z 7 M.(J?MK3;^3S=UBH)?F-0N/DJ;M=C&C*1=V/)LG&UVFU;6BTP^EV&J9C<1'RTC M/=3R;)P;LY7*E\6>HO2'$[C&S=(Q2N5@R[-QNBU98\4&Z"I.T12+0!RMLO/I MB#D?ISV3^:V:S.9(H%H5JI^(<+D^JJ9YUK)*5=IF@UW(2J$QS[5[I6:;3[E> MO;WCEHO18%;:#*9;OI%Y[#R*9=X94YQ7D>NXY:!2;E3BD7Q$R41ZRC)7<./Y M-:I><]:[UN13"AT9&4HDT5^7IUR2J@L<9/)92W(Y<;?;>D(BG71>'_3YM=7/ M3$>)\Y:QH@(&HTVSD%LFMQ'>;&U5TT6Y.LY:-AYSI?+$%2NDG.7&1:?3EZ>@ MY=WD/9$0NCVL&K#37*BL_MD[DTX^%FFKV079R#:2,\LPE+K9 M\B[J'+=\%)H%V^R277*A/4X9]7%;S4S]\__'+JUO& M&A]L/>O>31;:B^I,;>3Z^?&:5YRE-6CBV/%94]$=#KL#O0))6]S(LTB3$QY7 MG+_O?-PTH;%+2YJNM;8L=->XT1DZ#4B:0(BUPY\K@D*V0-OO6"EK0V0I-*-4M;91$IU H#DS0+E-)851VK5\ITACT.-3W3?'F[,G+30J' RZEZK.50RH"U MIZCIF>IK;+^0$I.ZDJLX]P^.1\4:Z_#3 M1"2A %9,,.:H9S(V-T)-*<^VAD^ "6>_UIK^%-/B32:=;W[A8UV)7]:!U;;; M!MA;?1-9D@"RW"137\#I0BO.,G0-+>3[-O!AP[$]ZTXP#'6#?D1FGN3=_$>/ M&3IT/,!A3_AON.*]T<,Q'!.,>D4E9TD]:D[2[7E^D=5C[&#*?;"+$WN'AY.# MU!'1&KMW==IP6FT !R1""Q\/A-L5H4>WEQQ;-S='C??>4(3VW*&Z8)JC.2E* MEC:IZ IHUYB,VH 43K9^_+XVM=X=20H$M1:)6;66FLF;7%\:C8J/AIGB2^[U MJ?7N@'T@J/4H:HP[%Q./O..ZK>IZ[2IS%5*+OG1A_;4O_H7#XCUO@Q@/,&Q_XA_.;MKI]@$0;$'N0Y0: !JNYZF9N//+^/8-8Q$SKB M#$P<%32DM[ #F_%=.("TJHO*C]T:H@P&:SDEEW.D4Z^RM6E)G*Y:$', G)X! M.[--!WS8ZG#@'Y%1_,4;PA(7EY4WQBEPW&7OEGK!-NB2JH)A@9^[#X>C1%Z< MWP]R743/Y=DYYMAE%* L[[[P_$7\S9%;>1"O\]L\^?)),AI/86_0-G=#VTW- MH\.K<49OXYZ))F(OG=DY\,@.WJ_#=TI(1'VZ[?Z.H'CE3\\-=R&E7G5__2@% M[GC75!A#/8/K[6>[O<]+#_7VH-9!..,OX[U0N%\\315RYJLX0T7ID#.!Y$PJ MU)F #_O&GF.D=50CRK9[C$R5^M^-G M28@NM]"Q__UW_$&G+U]<[#]%8EZ:JW>[Z_S?L_F'HO*,J#"AJ(2B\C91H8]) M]6>+;N".'QVX^A'PG MXIT%,/%71^2\?/LH&%D+825$%:>8.6\<$BH$*%"A KQ MKDHZ 0N2GAK8?DVOIY0.?L8(S98%-0R:AN[TK;O35\^._R7G6DY+\:%MH.R! MYKYD&+/LN#SN5.H:N70VRW6[P[;K&Y1TBD&U^.A4[%K5,\*XVC>9]?<$@B\Y MB/(W0#"?:FM]O>[J9*-,I_K#[6/'L5T(!.R/W['8>3:9$ 9"& AA() '1_X& M!N3")EY)*KA%SEV4CO1FUF1:$@=2/W\S+E7GO<=[RS\ JB8AC@M$E5AQS>MP'6!0 =UT=5 M*3EI"*0#UB"9L;.Y- 10UBM+RB;#G880/4+T^%;W ]Z!'H54U6;+9GJ3$]C& M5!WQMI6L32%Z0"\L&9[_#[$CQ([O=0G@'=@Q&^15JK1=;!5 =J1.5M?EK8JP M [IN+'4>R+W]0_ZGWEIN+0++(J#=)3HH+0[.9@XT"U,RW+\*XU4W':\*(B9> M[YS76U)TUW5M B8.;#96@7]+RL. W X",@<(P.%$YA>04[5 ;&AGS7YNR1O\ M(E%2)V0,54G!/AL9N[[=]=VT*\24$%,^UT?[;$SAY.QVM&):-27RF)5K\41\ M(D1:$%-0]=0')I4(,27$E!!3;MIW^VQ,J4]63!?D1TW2H7/K^:(D/R[R+L04 M5%CUF8+,W^!>$#=!E;(60+-1_9J5H/I5OU!-&LD_TEAO5*UP?^[NHV3AT>6; M@>2O=1V?,,/JZKT=9%AYW?1/3]1UU7H6B+N-A-,?BC62C)"9]EI1::J9X49) M[]0D^9:,&F&@/H2@[P1!MWOH\CJ0\NP)K%RR9ML+IQ.*:)[*#($,AJ@2#$#>!*O=_)ZL.[%V* P*7>T"Y#W2BHZN"24 <(C(F MF,#?9&T%?/0)=[K""-)-1Y#N]J86_,)35ZNT5]=+"?M:R5A'SZD4O\@.IFDG M3L9'.JIQ#]T+-G8>Y0GO8H0:?]L:?^UD ]^-PZ%J$J!-XU/F2*SQ_@SIE<]FRQ.0\Q7^HE[ F1"^82@C[K==P[R.,&-UW MQ"B,A(9R??MR'0AS(#!.R&Z1@Q9!]FF)NV /..G9BFD/2WUR^6@EY#A7+V4E MZ(50R MA'ZCD>:*V\%I)""!W""#?8RNE[=4ZP."G2ZB.W6O&\.ZP4'C;(8P\ MA)&'JYC009A^J!#!(,1-*,1MG[U_I@ZNQ5F6+LKH0&Q?MF?/FM#/'K3/%(JE MLB#V-:4?=]7.O)@=V%MW1.%RV\Q#C#E/^Q">M \QY)MBR/V?M&_8,V 2!H"0 MI"&;>K*O'^T=9GH*,OM)@,-8\]]IOFY.@!GQ&O^DC#5AZ:H\(?Y!XO]].ZKX M,! TJGS'<_J78G08'EZR)\J*PU<;);JO9$H1H;?(<2[7@O8$@PXFQ<-3^R%^ MA/AQ+W[)-?!C*XWF2:$X=I6%4W:L@DYT^KNL*EV_Q M3KV9:J64IB5I+@(9E.[WC;DY0Y )028$F>"!S">YBJ^"3&':U[0A01=54W?^YT[?17-(J?4%N! MB3Z=_8P[^8DC-;^\7& - Z#?M"E1U2V+^#>B#TW^JC>J^!/UZS]$1C#-#0*" M__UW'!B*E32BAH\N0ATB'PA[!HB,;NJ:L))-QWH@.'GR0+2!*@/I 6^WYJ!* MZ@M9)#I =$PH$P0GVL2_T8/^G#-<.]=!W^YG[@H6#J2 "2%KMDZH@ALENC,O MW!"68R%U] ]>H@=4>2';7DY' M GZ+OI(O';PG58MH P;1. M$IK",@V4#?$/S]X">&L44,ZX,=47:Z=A*-%3BIZ[OP3$!Q5^\+CC4YA8"#[),>D,$QV](B0H^1"+7-F>X=]*Z$*C!NG= M!BN@.0!JK[F21; 'JE*[LU=7$RP=-!?X@B>&FT""/,=J>EAWF3 $V=,3U T6 M)@*@:"I1%C0':2Q#/4 N4RQ6.?@A#I_'C6W=A@,2<.95]-J;9/W.7,@""9@F MF!S4@N.T"0XB>^%F(*_0XIYQ3//P#LFA,+ +,M-+QV)=LM,1$K3ANIJ&> M4G3TO"S)3A@(B!6(4QCW/)U"7+C(!)K:\_M)_:@=WZ,$9^/7R)IEFXYH'X L M% \(_POOI4_\AU(!D18"[Y%&^[Q^^CM.N,#$0@F?/ABOA:+P$V()APC%$_7U M-*S8KUW'Q SB@J;;N&R<"G"F3?@+6,/U4O/0'9\#0N*S@@_O%I(3!-J-_G#8 MWBJ !'LG]-&@+,Q?8\H<7>L].+!YF-+T(*%RD"R9K"=73U*7>CB4@P/I$:"2 MPX42":,)5C($0<]ZX]T1:'3,!!MVNX&J M )?L,0!0Y%=P!@A14$\FVKT"Y.FY),08FG+)^#E$\5/*3P/ -4=+Q*;3+>9YY>L MQ1I9?PR>"0 ,)K.Y8 M<($TO3M(6PS(%Q%/W_LDNY$BF$:Z<" H)H"6-6[D3=TS+M YRJ>560)0HM%: MK:$H"+(OWG'CZ62@7M<'*Y5U*TO]T:%W/QS0WL^M[26![NJ7Y7,OG!?6_=JL M-T^)[$C*"9M$HSH5C=Q"G:)=D"C][+H/E^.I@%9JWW@^A#I$<=/SG. 'R"L# M+K.(Q:HL>(X\E@1'V_DV9RLZ8>B6[/E4OG ]2<,-L8O7GH3OE'767W"LJFXF M_IA;VJA4Q&>TWU@7EG/F52P M-38<,*;M0.(9Z_#(/4#]GX(K_C>Q\Q+8!\]YD3%JP27K '1?7R_WH0-D?P/9 M]Y@D&7E IN\!09!&L.OA'W1094N8PF5A\N0TG4[7AMZW5\\*>2N$Y8PA&$* M/_)BT(/>@HJ1VW(,]'[?9CTCH"K("^O8GX.O7C@/ M1$'KP#CWV05,WZ3%MBQ>=I!=#. [9I!J\*&]D>]Q^C"0XK03'VQ'\ 93%S7G?O[;>VW8D@7N:E>?9"&])KQT84\+YD6IZJZ MBZ E@QC<=$P+&2]=/8\DL+.GXT5LJ=2+C?^NO^P,^F>5)XYYC*.(0B(*9*P@IX!,BN%H_)M M\ME1GSW'G_A\JXO$?M)/X?X2)(QHYZ&$0W;"KY^8%KW(M<(L7A'7J6V.!W+< M41).078*T-1\:0G_Y3L=(B(:XH^'D_)AXB3?M)_L=-8VA8A@6:CZA* *< $G MQIN[4;7#Y?I@H<[@:8LVA^8-E^V)%YNXR ?:D*A>2A*I7*85[\0WZ=&LW8/: M$XN>%^@)W,I\N R@H >DGNZO >IFMPH\R8*/WV@-$T04P8:B8+NZ9Z);**J* MW(9#/?568X#<3>?7[?_"?'?5%%7:&=E5G/IWV.Z2(1OY^,DG^ZW/V M046<*GO',3IV<#W-8UF$2*2(B#3$P?PM4^'T@!L])]#'M+Y%4V.TK)T@-%,W9)$)6>ED^MA34Q]9ZBC#X MA]?;ON4COQZ935KEHEV M8EEOZ^Z(.1_GVGD<# >S65VA4V8;;'IYIIZ; MCO ]CN.636[87V0R-*54(J.EVTJ"EEB;XK;3 M@BW/>D_7JLJLG=VN%'G(R$F^\MA*9:8C]KSW0KHY7<9&:SH3.SBBYL>=9[.Y)OE(SLL*U$:G*$;*E)'FDB7IPU#Z63JCJLK5CLVY&#+,ZF;2KU";IJ;EY4.7+T&D:QC96>H MY/N9U&EN:MO))#)+94&"*3"LUF280[WOI.YD^?*>&X^*-=;AIXE(0@&LF&#, M4<]D;&Z$FM*>+06? !/.?JTU\RF+VJWM/?B^59 W&VCZ ?E# HK^(B_K)$4QXC=WJLK\"WVZ XCQ&!D[U#FC[>.X2FQ+$K>V[. M[C;V7@U Z=8N!.7%A_S(^%O"21M"(OT MNE(A8OX4BH.?9CY^B%$_G/#2 0UPXUB8@Z42'S/SB\$]QZ:\)2/_]:>:_ M='BSP#OHT\8R#\44Q2%>"3U=Y%*=BQOCJ>:2)#TSZSQ=@3B<<'_\IE_PAA_\ M$**_A7 >.HH2^-#8YD(.=.#@+5.+AYRB+A MW^Q#N_[I?>+"X"R_&?_,H \%?BC,BUHU"[M/ MJSHZ@>;;JYN2,A;%;%_/R15F(VB,D75=[@J(*A@5^[CXH[]+OR$ R." M8^N[+[RH"/[F*'AR<%#?;_,4L4IZ 0_;W(UK-R^/",_>+K#UW3T"%JZL]$LI M 0XB#@^_SY01 MKT'WI\SZ^3CL+@_@^;_[,.EN_J*N(J+\OQ_TCS\V,&*I8&<*/#XF]0;JH7CG M&:5"2?E;24E%8_'[DQ0FE)004]XD*?0QI5Y?:L_BZX'+UG2T+7?A@B Z^@]; M:VB3%EW5>[I8]V$:$SB:?$D&JV0 "?$1":H\@S\(4WM'F9.KWBYA1NMZ=KY) M%R6';]2'"RJFI"?JZ,]S23VS47LAEU2_NW4RXW;)S54V";T8YQ,K+H_.TC(0 MWQZ2R?/+)*&6AUK^YB!E$*86%"VG1QJ;'V_FJ8A"TD,W8PV,\227^O/1CF5VAPUJ9IE5= X>511X2#'GV5Y"+0^U/%S+_T#+J9%5B$>< MME)8YB(3;9D9C;A-R>$^0V' MNX.KS\W/_PQZ[37VZ,1Y$ZFLEXH)MFWN%/52GNU&7]25B."2G>5$$0=&H?-H MHJMUT&U)G%\("%4]5/77STU\O:I_:(7R4%QO6UR__P:&>.B9\GYPN!(@2*[[4@WG34.K6\45B MU.QRG%S-"?0@T7I,)=EB?3J*HTAUC#S?>/]/J/"APH>QZE!<;TI<@[<^7<-V M#(*Y_*PY^90P/ RA?H8C&+BK#)_L* 9N_F%D-=23KS;8;F'^7^S4?4DX=I?@ M\MBG.U@R^[(]@^WA#YQCSW03Y[R]X,Y9VK#3EDEZF&-'VJ.;3F36CSF4@QJ? MI(Y1YVDN/\ZA"U'FVZ/,]UB-;RNL^Z8[DT";7.NVY#?%@".!9Z# 3W0'Y>$, MAL9_X.6*P$TT*% 0Y5/<_\R "-]&@J/L7WI)6;+;AJJM4GH\D&SE*+9$+>X@JNK!7OR4=JGLP MM"!%_GQ9[O]4$ M]Y]>@"%Y5H"A8.J6!07L93_+JY@#?[NI:K!OJ$%ZL=B*)AE)V[":69ZNFRZ9 MX#9Z&>!B*^RSQ5;VI;$//%'"*Y)R7L=$4%7DM/I%='1'G1"") '1OEA;&N"? MY!4X*K."JO3*$O$TQ^/BTQ,=RA"JW(F*_(I>U98W<)D0<4$.PH+"@^N^:+:Z MP<5]_ H=&N0<0='$ I)Q]MTKK;0]V\;L)^-:+>J :][LII@=H)D(!I M^B5E<O3R1!9,&17_A8TA&Z&(8/W3O1%[ L8TBYC)EJU#M'4,5" *(^Q^& AH(1MD^,0& M4UL4X-PD!PX*E_:#6NH5A=T1&4XJ+5BP3]VC[OX9/ ;3*^+L_X;')_D%](" M1B,YJ#36"G@5P"T?ZL? *]/N<\S076#"/R03OMAT1#P8OTP@YN9^9=%1D2* M1^B-^>%E CUUARK*J[("L!!!*P8M#+B5L"\.?D#NX;-^3J)W7)[N7 G$[^.GM%(S;3?H4D+QR M6"6-PS.^"#ZYI9!?L+EDFW3D#L<:2^TQQW(O&R=1H@B%##+$XY&C>48!*@HG M2W"51SMW<.W!-?QT#9X9+FO9P= M!X50%!PD!G!%$Z; *\BHPW=@F; MWV9RB"OX5EC(/ ?(J"=@904EVP]]D!,CQQ^V4FLU:A? MPP2&($^.J\Q>J.%JW:QEBAS5@_JMF J<-FEZ$]__ BX[J@T76B>;I#KDA?F@ ML#+&JE89($,T&3W?*-GK)*+L=S41-QP[.^GH8&"&2)!$Y+??P?T=U+?9G1$Z6AH.I^MW3.+8\!1&O;(8@ MPQ*!PH+>$6\_/"L<5OUX3J*/:7^)I,+^OM*X M3@V2VJRJ%)1>I#XN9QR;:R'K[X?7V[XE,Z9:^5:)(I5,W!ZZJ?3<9&NH9?RT M96L>BR3I87?!T\L,7W=YRXXC%3C>_7B@%*4,U,KI$Y:>H)7/:,@NH M%1OC,D-RR:G]#H#N"YMR1ZGS=R8?@0;6.S";4UBWI+=1T)],G2]ZN$'.QQCK\-!%)*( 5$XPYZIF,S8U04^;' M4P",LU]K'?N4A3"@#M+.*R6P31.BR'T3382'C9U3HV+B4=.>UH?_ISBY*?!,:Q('E:]O"W. MA%4O@\H9KW!:R)G@<29$LZ!R)D2SH'(F%:5B(6>NR)EWUO!]U5*^S[/C@3@Q M'Y!ZFQ093<3NK^!F6,3W*J(28^Y/5)@_K\WJXV?@+MQ[ :Z?84:!NT_T^OF$ M\$MY!X 0+RKOW+: M]EXLRF^9Q?(C;N.^%H_]\LNV1ZP]G(9A APP01=R;RS?QCON.5VXI3LQQ"Y= M3((L64@5U-9$W8Q$PZ\!2*4>$HE+M_+O*M00:ON5XI6AME\AW<;?:;N84=H5 M==POY!;M^8PUXXF*6N.@MK/H0N-#BCW/O/>G5DUP0P"G*7]M750(X6,MF&#- M./1SPIC S4'G]0TE^&'W76YM ,T"Z"X&_*]W?4Z;["[S=V:""?#=X,,&&=VR M+V LF:*GK++,3'GAT2Z/@ ) ?N".8EY6LP1]?G,S#+*$X/.M@RS! Y_KVVW7 M 9]6W"S,ALU,E2R0ZV4A\LB,2;:UJW?W)O#Y _LN.,8<)XHFRCT!/)*&(:E; M=E*_RE0+H3%H=ED;0$JN +J5@#4<=N)K^L$EA0MP6 ?91WTX2#XJC>1T83P^ M)B)MH^75#:,>4O%X&-P*<2,,A=VM2?6GN-%8]"+385WKDHWAL-\6-HWNS.$@ M;J XV4,L27Z_,%D5)RA>YJZ*Z&L;)@8.N'V60H!\L9KF+5?QDP^_QZ M+G+]!L5'C-9&V/;;VU@!5?3!AA:3O)3*/PQZA2@2!KT"A"(?9J']*8K46DM3 MG,TC:[[3+)+3PK93Z)$MKRX8]4 E4W<>O4+FJ@ I@),#3, *J+J!LRB*NF7O M\O8*:NBPMC5/5A&?P0/4F\@:O9ZPRN1II#9,FIZM1CYU92H!Y)Z M0VC[WD)4SYM/D+@X._4U#JL'BR2AX_GUIE80"!'6<0\5(@"$"",Q =TK*VE- M4Q>!95TV.BX8'.PJGAK*8C:5:RSLZCR3DCBKBK*@HJ-%[+V'9AHH_WWH6?T= M'@8M-\(153ZLO+QO! 1MLC<%@)]P2PXI]*7CVX7%(D^VBRF^8@O*8I'.VFF< MPAF%76+G);_"H$L(#>\UAX(VV9N"AD^X4O<,-,3BQ6EA;:LS4FZFZX7>.K]L MM#@(#= "8B[6L[VW@,N7($3H5;[F508.4*YJ6-W _&\*4*]O:^&ZTQ< ==!H M#+( < VEOZEDY71!']90N0H2WY5+/+!D>%DNQ)7/LLIN8/XWA2O7-]2>PY55 M9A#3J]6EK!084!Q9;=-N+:8(5U"LBGQ(7>D ]W<#CN_LL7ZW60?O%%$H\J'( M?[.3,7]#AGL(/AP<'P[S]X;[U=_T $<8A0MU)0"$N(FS'9^\8@;GP$))@][[ M5!ZK81*4T.R]?4^/^/?-QL /C-:"KD]<654Y;?*DG[L#6<=_7PAKE;+U0B1I MS@Q>6,>1^CFW+V;<_W#!-\+_*YU\?4 ^';*VE0%S8;HE]OI*_S\W%&KC-Y?9$$K MDL@))<[@ZO%5B9U#4P=GT4VFSM.)?)RA$P21"'7_:S;\OY?N7^M6ZU_J?KXT MZZ4*B4V!ETO5Q>.8%K=B#NN^=[65>5'[;SIHD]$URS8=C]>(<6B"8?SFEGVX M#S98OA="?8)UNC,B!_,AWMJ"=9&MR?J%!5,*Y9)-,&'H) MU3:,J'R>8?%6M=UN*)K.S R%;(RE>6I:+$/BNTAML3%!TR\J[KW%3=JH3427 M(HX%" ''FD*_Z>[]IO 8Q?V:+UBC&Q)O/1\Z3@R8924YR5HYMEV9B_D.K8^& MW(C:)6=-G%]J#:,I(2I\WP,CMV\=O0$5P*K:X1<;H/!T![XT2S96$Z6%4,%/ MMOK1&TK!L8+"7![W?F'_RRR>H%'E/LR?ES?6GXLCM\&,ZI/94E7II#KK=KL] M&16&T/7#&539\+!,B F?8^\$C2KW8?S\&2:X(Y(NLV:E1$96;2O/T9VT(W$( M$Z#5$V.HNPX&A?<& H"1-W#+/,S><8]&4TD3]04XALE+!PWS#=V%%OA(E$9Y&=#GK2@M\HZF*A M4TN>8:<()E@,$_&/-J6^5KQ[@NK@NMN$H*JZ*VAB>*TJ]!;#"-*M&D/[%$)[ MQ>9V>GTIGQ"WX%K\9MG*@4%'&N3XRH!-0K#SDL(F'A*I,)@4PD,83+H;(^A] M\""N$Y5MBRV8?*;5++7FRY'AC%L('J ME'I(Q,ZSC=U36&F_NT;1'M-W5"1L M8>V?,GH@-&"';N*GNXD,1(B)[HQ5$!#@_.?G19*",/>;2MAX?6OKP*>L@TM% M1NA6+5;F#$Y2%M6A:C>,/-\< 2*C+R!)-\0$>F0 SA<*,AHO&JZCV80N$98#Q[H?&M1$ M^"><@Z/:<)ZP;_26R9GY3(P%%8<<"0--6#MHC"61$,9PEE$B,+P\H(4@^EQT M-,>"_ZDWJA[U)0#A%-)1Q@%G/%D3&(BOD V&8QHZ(I%DZ@NBV\[ R0HV%@W+ M&<^!:".I4.4%E JDJ!8A+] #$V*\(3K PR\F22.:(S*5(,U,#?;6!BN@.6AX M$X!^I%))]@%2&?((:!,PB1)P\!8@5-U"W9]T*&B: U^"^[6\(<&I.2+ G0C3 MJ0FFF.=[AN/I"BM!5C&CX#L.!<5GHN38CHE_% S#U-=8<-0-\<^O-_?B[T#D M!E0_ ;&O"HF7.2RVN@=CU@/C.OQQI-4JTG9=EYT/2\ M=BT!I5B%'W;L\<@*:79$6EV2D+;LR"FL\0^^@$%:/1"R!*'%)AQ;1E@"O\": MCS12-I'<31S\'XB/-.X*=71<-Q8R' $#1B6NF2'X"K0#\$OQ2X#WV%[Z54LG M9E"\1&B%"+ G/' L."@7#.S^>>% 2F+92)Q>5I%#S8#M-5L65"@\%A1253!W M;]VI&QI -(! @:N0)GY!KGKK%1JW"3S(/T=$ZP$11740+L/I03H<\L6>^1(R M@5#M6 @6,$(^P#=!Z)T@'(4";,()$XZA>THX!1H67_@G!FI)DD49996Y+$Y( M65%,R%M)+LP#7;%"Z ,@,)E>7_MY3!!H>+B%5A T+0,B/%Z!+!N. DHEL*)$ M:;=B^(N)UQQ2P%D8WN/B3-"FX!A(CA>CA;!!8G:XFIH +6D$,E+16Z!4K"[L M;T$\@Q)KV82%Y@MG"7]",T+0=X$C_CKF+Z('[SZ07G_E.QXN7&(AN,YD*,E0 MTJ!*"HAAQ\+L\PC21H?OAVLV(A5D(S Q.L'A[I#^E V&[L+U7]8F4!9-J!7 M7,EH(*4T80IP)J$Q4&6X4OC*)"Z("L(F>'7&E9Z M_/LAN;%:[P07_3"&(2>.F*'?+[$F.$O]_\9'8W"] MUXQU=>*]9H)$#0\_(NJJ;O[<>4NGOZ)1_(3^%C#1I[.?<2<_<;#[%TINB44* MVHQP08\;#B2V#GI>1601M2GN/ M>^C;/9+"%ZN"ZX$.M&PU=G8K1A3/]#$,%! H#>Q?X=!%RF.Y-GBGA6/#3@$%?#',9"0 MNI8%:+!!M6>H!V2GDP_PK2* G,*+*]1PQ VHQQC9O9\\:W*_N/@D?WBB-V:> M_RAF(B((\ FA0X!#L"3K$\] T36 A^?/]7MK[F%81<+_@P/IZ,A,R<'5=[HA MFJ:.1 'K\]>1ZD2)9Y H%LXS9R.;':X+OJY!/?-&CW0P P$J";'#D/EHLQNS_;G/D#(X+TR,LK$_T4C7!A9-&0 JK\.0J9C,V-4-/8IRC' MJ^M!UG-]3Z-;3W_3IW[%!!P!%R3S=<,7<(28IB-ZY(>4N_I!-"-7=ZA2L^4T MR4:N,)PER*+879WS0E@YC/\U *V02>EIWA=C&X_%%;GD#;O$ M"U2N OM<,=,8CFVV90L(\8AFIV?G]C3#*W QPLH=">Q+)Z8?K%CZ9T) M'T_K*X77T#7OC&#-GN@')P$M@NAY MZKP])4VP@.X^@@!(/!'V=T!49'#L>CP,M" 3_(3\#[YW@,T-Z.Z+?M,Q( Q! MQG'K)TB)8]__E%,G4?6#80BBB .K^WBXB^SN&^'C3DG>HQ/Q0B59'F\=A69];-9 IRDOYL'/F#S;QKT41VEWP>HKND])GAH-X4Q7:VYO[X347I9VGR M@*)32!CANHT,[R<9]3P];T-%1[<&=^$LWQF'1,"^"Q9Y7^X(:P8 0AHO&'UJ MO1^*/5P/5S)<*#WK 6U"8<<1A8APW,+;GH(=R>;3=P M+KM0[2ZBY^WR>#Q_VIA#83L_!O-\Y/,T2GDD93BHL+>I=L'.*-'0<.3Q_.EC M*NXLLR-3SJ/I+G0"21HES@V^XR4218FG&B;Q;5MR^RLMGH=N<=J$FR"Q?QYC M!N42OVHJ;#7G-&2*&RI9ES4AQB1?PET4S'WBN.],8ZGQ@.7@Q[TP>J$U%(Z_ M63(C^X0[T).&Y*'Y 8Z7-!PF\6(\NQ#/1<+G-+$HZ[61IC0R$E=6U2)?;<(% M+Q$]ST=S3/C+.GNT*R2?JHH7DWS:K85OCSQQ*;)[&/6WDOUR QXO=_!]^OZ# M<;B"A;<(D#=DRE#%3@X/?&$H$*)Z'8[,WX%X'5*L'28_H4?^.?3V=T-/'CB& M%M^.L_:;9P=D%G8JS8Z8>"=%3B,M,,?D5VB:Q-OVVP_RIVA@182 MM/9Y.]MXYD\O05N0HF@Z7J@>G0X1-OX6)2:5.7EZQ]/!$BA]'D4]'MK8A'D7 M)R^ G$_% ___0*NN#6OT(:PQ(Y-AMBJWC*V4QMPNDM,)658JK;]8/79DV:\@ M%Y&KFBM3\CA3FBK]II@9)+>I0L: +G_LA>,,GO]RL-!.3M=D^M=''\O[:.I% M+" B"KI0WJ )].SB"ZPF]/\NDHY:-_B8SO=5,D./J4K'ZBAB@O.":0%>#C]@ MYJH0V>0D-IGE.[:>M<5Q*];6X!_08#P&.#,"# M7U\._^V1#75KS?!6E[2#7_0)6):W3?[)5HU/_I%'_LX.NJN^.\"M96O?!J>) MJ>N:OCNYY#V4\XSU&EB,@3G2DWQJIEEB4G'ZY6TM49KPR<6?N[I>%^B(5-[4 M%^]Q?/5AO%&8I]B2LLELBA5[(?8:;8@PY M&Z1ZM/Q^'/YP1C:*SC"7D^C97 M62^86:::%CJ-OW4+_H01HVPADS1<):84.(DN-/C(JMCF4 3BE:C,DWI\ "C_\_>FS8GSB2-VM_/KR#\G#DQ$P$>[4O?S]L1 M0HA]![%]40@A0$A(H 4!O_ZM$F!C@Y=N&UN&FICHV\9"4E5F7965F95%#PE, M95A.(2F>5*@Q/52XH4XHY&B$J[S.8(2JW>VB3>I#@15G7E;JMW[EDF\6[*'D=F2#7:8\LTL*66D"KJ2?7YGRTJO^9FOFS%1SUA0G MY:U,] 5P)??\2G9$R,M9720D F-;!KM";CRY#T97I@.E"!L8BG)5C-: ML2OPS0:X\N0]=7(X:VK5-H;EAEE=+.?[!3$M*-3I>[8*K27AS3,WG9V*J4Z]&3@-"6NE8;W/)7[N+DL93'*-O5"?Y49<#(VH2?@ MRI/^7!8FU18[-CVIA3I2 M,]'*"TTI3GEX:=4#B@3GW9%A!0??[-X>6L"\L\AL57W?-8:!?YR#[?E ,6#: M#]R0 J9KP9VH8-H T]3]5>R>>?5L(229[Y(,_L:I3T@RWR49[AXGD&3B*!GBC6/?D&00 MS9!D$,U^AF00S>(J&42SN$H&T>S"DGF[UN"'O0'761'KK97V]^C#L=_W#[M! M.W3IMS8M?$[JG'^F(J4GUZ- M<[4KC.E.//:8-RO^B53-LIN?1:,NK5V"!.! MR+O?))$DZ=-3ICZSSB\ZD!N1Y1K)$K^] I\)#:W +5?+,=>6YA9)^3ESB6=F M$!JP?"^9Q/AST$"T0+1 M/@66OQYK9'/I,5BQ;9**KLPY5J59].5#E8E^C K MF0>TX)($=9H??H$UVJU!(G:.TB]$XZVU^JUPS;<<.?4=)US'P(&'5!ZI/%)Y MI/)(Y5_OANMUOG>C/\!=)K#"U$1/ .MYJ+M1.>;=7A,G\&%)]:C6Q&$/SQ!N MZ$#>^B]8)=]:1[RX9(X32B[IF=^-.B77&\B5@3SJF,O.(%RV4[RQW$Z^TSE_ M((6P T4UXD1M'&WP\FJ/D(@V>YU96:N;2G:*939%\#*:T^#$"5,7X=Y<>!HR MF229TX(GR'F/0(- $S_07-:A_U'0E/&LO^"TIF2V1CDCG(KJ;&TU &@8 !HJ MB7&GY6P1:!!H$&CB!YK+Q@(^"IIN9>() RRM8ZVFTEU0TZYHY:%%PP/0T$D6 M?X=%\V-"!L_J)6"/)[=+XS$\A@>N&&']@X2Z._'N?[W@Z9.C>['1B0=/5!,F MQ\,C)>!3SIQA?_?[W_A_0+\%"Q1I^"",XY8A&0\RQZU7?AZF+[OP+-B:J^_. MYX5'&#CV#M#"40&6MG.H,Z*/]J=)"*X+SSA\6@+LD=WT:DNSY"3UM1%C_":Y&O\!"O+6QA@B$"/1C5Z07(=#<:\R=W(H3,!7OE(AP," 9&Q(( M+%-Y!" $( 2@'P2@RZY4+P*@=FJ2[^BUD20MJQU>KTW2=8D0 (#@\O5L5BR* MBKX:%=W7"T1Q490]'",W8_QZZN?1_5LBJ_MJF2?NR#,HKV'A/)"UC"&7@DZM M%Q8P+RP("K./K=(4VAB%8!6CGD*P^K%KX8_#2J^5J%G:X PYJ(\FGL1@X^%\ M F"UB\_B+(-@A6 5GYY"L/JQZ^:/PXI>C*CM=M@USL85VN5;@MR& U2[& MR^/O\-3]F!AOW$;>+0=K;ZW5U[5A #GGD@,@U4\X\@C% M05 V]6UF4W_C-!J'GD%C)1X=@<8*&BMHK*"QE>4[Q&OHD:MLYW4,([9AQ=PTZ^':^>P"P,0? MA&O.GAO[$)3!'H(RV[9'+M>B28$W>_2;N*0(E3R-4(%1\ M-RK^. _E$J@8SLQ4L5FE!E)J)0SL;JM9*C8$@ H&HH*\?,T1A(IXC""$BABC MXH^S0"Z!"L.G>MLPF//R/!<6>GK8:M6*$!5\9%5\9:)''-:A+R^[,FB? \K& M^W20_H2V_T2V?NF*;8^&$&829GXN9 M+UTIOHR9=H/MC2L=>2+/%Q6+456S2[L-B)G=8A%[YV+QOU$RU9/SQ/]>QO=0 M6#L9'M0L^@3\>B1V?7[F2/.GYY0?GV[^H,@IS;$<]]=!6X^.4C^]753.[9X! MC]J3D;['#KX2V"OZ@ZHEU,!W$E@"@\\]/GE\EV5V>(O=V %O8*D+3_]U^.&? M2\#@2=_M/CF4IXM>*F6I&R?P?XV-M3XZ'D2SP/.-\>:X,_=-WH^BIZZ!OWWW M70F],Y7R7N8Q=\*4J*;>4] ]@\[QD/_;5^7!K7:_P?N EP(#T=I]LC_O=O_1 MW>^LXR:R!AQH";A.2<)_R81JC^ /1#)*-@S/EV7PCNHRC'1?=X'&@XL @=1= M30:@DE')>B^AKS4K&.G1W?2H;F'T9=7VC8Q_L5=&,-]\(5J]@_X*QR)H:5K@0NP MHGO23F:CK.O,16>^"/SHG6KCY[@6YH!3_G-:5U7754J.7A%J+9F1#)%N;=8N M%=);X>XWP]%)DCQWIM>W2#!YO:KSQ^N#N*B.B8\6=ML9YLP-0]0G96%-,97& MW6^>Y9)1[<[;>DU4CG+.S1HKN+ %X:!9+X@P; M&^TYE#4: S' E.[B2X)I[X%F"5!OUB;^T0;3)N'B7&JCL!TJKN:X>F)!9@> MP=AZ(*K=98N%!U\0G%OM><-5@#AZCG?[^Y-?/F%1W&JM.UK]$U9ON5E/V M2+!';5=7O<#=M*#$VN I:0O\L%^J#!5584M%TK0J6,X;,_3 3:7ZG?TJR[ # M?23XKURGP,OPNX0.='L!GN^[@?XE*]*#,;U?*'#[]2CWN"8=/GF'O0"'CK6W MR<%0=W8=_6SE\ORO\"U^@06.[L*?3OZ\TY6H(![<&%-K2PF<>JCY)0JM?")3 MZ!0R4C732@C53$*L52JU:J+5KHFE1%.JRTTQ+[2DUO_^=[A;_GUYYV$GG5>S M$RU]X>M153.8N@ :L/Q.S)

D$(7A*;:SP"L[OAA#7*@^5TG*6EYB@[<\WK>*:F/UQ6 ..+@!U#5;: MF^B%?6,+]K[H'AQ@AX%W8/\#]5/$$?;;N-!NK0RY*)>DL=E>819?G@"C@3AU M#/PK,0;S2^+_7M1[ CJ*>V#-XR_Y#IM:AB/!,TL2+6S9+#]=:L+?ND_.]-*C M*T77+/"?$U]*U%NKY9CJ6]MNQVR-[$*0=CC'4<*[W]@]<9J@ W>>7;RS^./. MVO^2GDX,O5-+U>4229K;N=W&>^Y?1\[^NK-X*+?6@ZRU7L^V15R MG46>*M?1#/ML:H?V8C*A:H!S<-5O;9+'0QI,TV"5#%:T 7B1%\?U8E=G,IKC M+RL2'#N>*[&'942@S%V.-LB!5<*XP3PW-4M7H MYL19;SOC&V\9QA_M$V5O,3PQ']@4R[8KU#HP13GO9W5GD"EFOEY+NW:1T:8K MK602O:76ZN(B*J@TT=!,YCG9&ZD&-08.= MN.DR=:3*E$)BNU_P03IDB=2J+F^\P61*=VI6B?MZ36[5N1F;'VU54[3$5FMM M8&*3N[0FLT<]PCZ.[9G7KQARN8^)FT)GY;*].=_^>DUFJX52/T7-?2R8F=-L MMAUDB:KPPN3TAYHL@&60=:3'@14I,7F? 'T#/8N/'M'=%8^_$['F]5=$:UZ3 M*%PBU57CO$1-=R'U!ENY(W=KS:I(CK=V60POK.-?$2;_ZQX)N%ZBV#RU&Z*_7/;AV-[PI6+XL7&?BJO-H M4*F!/W5<8ZON'!O@3[#OHF7+6PNBIX-PJ(.KX=-<'2QDM"E8.QPY5G8A@Z< MJ#JKW1H,#I8SHYYZ^H#'^X[B6/7VSYQND9XV'UNT:SS05\/9EV8[JZM88]A< M,Y6,7%%/(CH[ M7Q4,$RV ;JQ!6WP=L/6)3RKEZ5K*6*=V216_\M%_E$XE6'$^2\],/>Q/.R4S M971ZPF=%U_[$G_5_^7OBP9D5_2!#DHF0'LO,AOLUNB/"C2QENN #>R4 MU,(P79BQ8]\:__6$'JE('8KFK)KP9&'K32KM'I8CJ=FR12FS80@,&0J[Q_!7 M$':?* #9CT911#M&HV_?;*4)8^RPQ+_K;]JN:GN[%_#2F^._"&O#4SP72FY' MJDJ$&0679JMZO]UL8 1=4S-^O];,XL*7C^&JM*I(]<8XA3O9KI4@B,2J5W3'G,H_L^[$CF.FKI_ M/!%E"TSTU-#553.ECL'#?ZE6J&Z\?=-9_IY\3&XXO!@9[1$ *SSZ7XFCGQ\S M.XY>9ZZN4T?=N,\]2%GZ&)X(&'WM\)F[/R9P]^%)KLG=L_L^)&R "95YFOY" MX?^9[)8^RJ=3$U(5#_G_:-?'<7/ VSMM1A 2HM@@) DSZ![:KOX_4 MX"6-?MKWY[H4#)!]@"""TNO!A'V0(!:>[??.WF_,> \$AW->3P@;U?&BNI8# M36O/R6RX:?!_EG;_5?A.T9]$[XYJ!8\S*W,$[TF5,\/11I^;K<6"U,U"MCQM M @.,O#_=>/WU1L;G=+16JXPJC>ZF+)6<7CB;CE5I-/UKQ_@;IDJP<+..V^#Z MLM'I-PL9?CD75]!4(>_IUURZ;Z\75$V#49YK6"Q$;P87L*"KVNJZ:_A36'8. M-!]\\'CT$6RY#H0-7^UL9]MKKS4;\(.?\GT M4/TG4>WGX>RO1!L:AA9_]$1QPE/]WUK=[S6 M-SHZGLU_IX[#[US$7#CKZR^7'Z50(D2?L[?RTMB:--_72O4!4#8\R='PW.[3 MI*X7G0ASQ_,_Y$6XM!WRYZ>!7-Z"2/?46A&355^NF69!#"I.FY@U8#9F#$P( M4EE7,[--.C\.Y%IU,,5M+=Y5V*P3S M$7//GJ:'O3KY$]\YTB^7(SU37I/4*"166%#%]8K6YHJV"7J7)M@D2Y]1 MMDLY"R\]S/_\'(W+#_-2TU2\3'J6D0*E4RZE57;^#&&_>)@3BLUD MAYL9GS(Q8A"*7G\Q'$G\I=R1/14;\'1_D 5&9CB>6(&;TMIPT<3=G_-9'PWS MDXT1QV,\^-&1 &AH/LE>;#U85,">A!_4(GM,.IAC@CVJ06/LT3H5H"5V?NPW M\=K D#D^A2U%U24&LPK'+N L3]))G'[5U/?W+[6W"GUG;^O]A97H/9?@\::6 M'X!E&-B T@L=T!;=_AK1#3ROD).7F4#2ZVS9X59JL5YZ,PLA%@;KM_27UND/ ML\#O MK@.NA6,V@?\+9J[#)21<-4(+8-<_Q^94Y!)/9'1M%[PE\2B!ECB!];.+:_R8 7 MMQR@$/II5KG5GO4K_&I"8"*79^NZ52&SZPG*$W^:)TX_Y(E'R=_?\B8=H5D0 MTF4I4:BVI:;4:B>D:KO0[L!F3V' MEP]U6Q\;F@%_AD9WHE.0P 7J;KP#,PJB&2Z3=E]R9C!6.-)7NN4L('P3$&.K M:+M/PMTYA@]'6RPLU8:T@(XFH,X[DD3/L$&OV*H/1IZ5F*A>:FRX,*7$ <", MON7?P[C,&>_4\X1YW0;]H1\VD8X28\-6;= 8"W!VL7!<_S$9Y?!2^R88]FYO M4O1A%"&+.B3!J KRV;>J;A%07 =3=5;1Q!Q(%3@B/76?K M$\>@!=Y76KP3T!NR=V3'E.2$X:_ MOR.4 =1G^#[W"6!FPPYUGOSA(5P/;Q" U@Y5T'I-]XZ>$&U:&NI@_?;0?X9] M5C+'#SP6BP\^B#Q^R?TMH.@ \@P?J/H67'NL6YKC^=Z^2_5H4]3C0X$@@7;Z MF^1>2+#I^C(PHF_>/VP_^KZY]4E8\KB>Q3CZWSE7XWX&/NBH$]I ]%" @7TX M,\89^NJ^RVT=[@^#*@#;[6\.W0QN>1@O^SOM%..I;P,J2:2;"0-\9+A1AX/9 MZF08ORZ<2#<,[VA<[70HVM'WTE[NL[WQLU?XXF,OB7L6B*"#"@]]6P9=>W:5 MOR&:Q(P*6WDII53I<6&E:I0-5OGL_ 8WJ'F]94 MUT%G:=%7HO#BX8*J8T>8=4#+[,G!U-H''#=*N=C($R:!Z0-^W=IV>NRB$WZ# M. NANR;8SG(B;[IEA6EN?#T0)["HRH'5D\#UT#[?&H M;^X/0G\^Y2Q>G0 @Z'?+E5T1B&@L@Z$>0I2#[VF NQ!".W"#05188YL%4BQ0)K2B6GS^=J'4[VK8T'IB9OKT]3 MGQB3P^Q8,+LNUAG@2J5*<7^>*0"7K3G0])I]O%XM[#LN\]AO4+O.ZE,VO^0G MG#EL8**=Z8HK@NQ.X$XX_/Z,!^:@)@]X!YWNZ9%2)!,38#1 BRLR$D; J#. M618EK( 5%0SZZM[>3WM QI]J6WNO/"-XY_V7;DS@!X#LH[X>/"QYGTE>,6S' M!?/T@5QGQ3VOI*WIHM*NR35L3*?T!K568=HE=G\FF'$0]UN".9NSIT8/50B" M(X<\/5887:<5:HP3"D=IND*,,7RL$T."Q-B[75[4A1?10&PP46]WIZ;AF:^M MGXMLAMZZDZ4KEYJY6@H?Y-(4CM;/S];/S.,^:[G5KE6D9D*L546P@&T*[4*M M&JL]U9 >ZAW7B9V^T?F-H0%[5(^>97W-;NW=[8%6$J<+^S?=_//#J8!6= MC)KT)JW;VA0&V)Z83RW &J^YZ[*J[K]]F_9FH3^YP_X]3R[=WRHK0.Y7:UV) M2!W8G/7O*X[YR_/R><=?3Q':F26_D4D;'.MHV[018E!1]NF?\ MW:&#OY;SF7GI6N2<;^JA[J<%>5X1&A0MYCOE]1?*N=DL54H8D1O*JLS/V[Q@ MKDD-+IA.#:)_[:KZ7%C4SQ8T5R1J;8A+WJ#08+%N!U_W'"+OU,L?V%[WIZ(N MZU7<+\^;I)R;"@:1$MMS7 :+*98[(^HHY^#<]#!^'@%^=5?HTXH])]'C]^XH M?9BR]C,/]'X]\82>3$2NO@#/AEL5XC4+_1AM377:'6Y8-99F:L54 F+T M QN>_U1;N[XI2=E>*X75ND4_V]N.S'05%BTY7?G'; +Z,2(NU&LY?#Y<47+- MY>>E3:$_FY:_4,12S=YS-)7)99 MK^5#/4Q:45HNC/8;8T.#X14-W-8!"__=6@LF+DR-A?<8D7FGGA]NHZ2:T]72 M]@8!5O*]&3X5YVEE>[U+)W'?[I5" MKMD;%6?"8:9-?J!8W9^JACC4^$7?M'J.LD6_D'VS0]V&;ZE6T(:[]MI.1 QHZ'FBMMNEL.&?YL'_ <63IE2>[UB M*'@8X]>V;*/L:'( +9SP-+,WKO;-&;6X7?M&ZKKY3E4O%:361E46VSZ>JM>_ M$%*80$Z$P6R(8- M6GUF&JS5^D+M(!MB#JO/7$TR<@TYWU4ZLQ(\ZP _W2GW_BGL!;_R^Z:PKYW! M?G DY"W52B\'7;I?F^FR6O:[M3X[2C7%+YC!QBO:'-9K;4DN%82JOEH4QGP; M6,V._1W.7]V.H..+;:-G$@S;HMIU_842L1LL]K)U6N\O:%T LQ*@RSZ2HNIGRR %;X\=;VWO9 MT1AE 3V:W=\=&?TS6L53\@V.V[!,,:.:7794* Y&XF#J?F72AL%F-]HV53(- MPURO"J76ND8)YYT_/\ O&$\A<_.1E ]TE3!3G>EJ1?5S2KKPA4(NY=-^H#57 M.:E&\N9FMLAET["RV9F",#_&PQ=/2><%5NK9>L[!U& 6I)K*(JS]?>V%OUCH M5*=A29D4IIA.;TN#7L.SN.)+DM[GYK^_YI_MER.Y[:42IN]%Z;'UJR:G?[3GF8'QCFQ:.)!6Z0&ZM9>HOI MC-OK][5B@88ER&(XR7_8I19/N?/!3* *'-DW:Q2MI16&IN7<%[H_EMEQR2\V M,Q)64MS0DDO58L.!15J^99+_L&9LX-!;H%ST\ZZ^.*LP]F9^9)(G=[O'M,,^>M7S=/_Q*_M-:(== MT#]B00];X+4=7[4NH!N:JU0QQ0P(N<1@"Y*HZRN7%BX]Q8=X@^7+.L-A^H25 M\QW!#)W92^&T&UO%7U3<68\!:W:W59")-N4X0YUO3,M?N+(39F(QW?128ZFU M2YC,@XK^P^,+E?5,!EDA^P8I^92ZVI+QL4,USAUA?ZA2>] M1;@#=BZ*KKD*S8UD$=79MN%-&HT7HDY/07_M"[F+RIL88XM6 M85:6)'6:*1F*5F0=[PLQ(*5&YH M8[A9MW;;K9HZK \%WOBU7>954=L8ZV&Q+*66:5RIF@1'K873L[_/7_>U9W^_ M&"/[S@WH[,,&]):4JTC5-CS0N]9L%ZJY.&T]W^O$D8T*RQ<#E=;WISVJ=@(" MS5VXL/(@C)KO(NDCH#RN[NM'):X,>S<^(>X,+Z&N5,/:K5M@'2OPB;Y2K6 ? M3XW.F[0VA[WJ)]O=IX8^AG52M2"JT^&,QX:FNS /S8&WBH9?= TLAJ5"=8Y0 MX<&'SU437FK8X"/PZK#@!_CSU FC.F:6!6OLP.G6]U_N;JP%[G&=$7C( SP<,*H/$Y4I6:@N M?*%A !X.WB":*[S=X0(C8SS672@6\#;J[A2%A*^K ##[D/ M.^?Q7-T<,F$2<\>-A&&_=W8R?'VN!/60&!1I*C!3@V4HU,7>HBAW.HM7HM*H=F7%FZ]ZDG%4M6,O[[)S^J$][R9XO(G(% M!W^1Z. O=/#7YQW\M2^K,U2'-(:KK**-54RA:$I7.&U$*SC.:)J&T3C%$?NR M.KMOM#6E:&KY#5$.J](F4^EJ/,ZGV^($ 1[?F5MB.$L,W[E;-0LYGM6?22)JXTX7A#6JEAH .B=O.>0"0@ATYQGL%9>D2=] ^!K M&8(K3]ZSRW$=NNIA93E'ATK56O5JT_($7'GRGEW5'+4&;IJ02^GZS!0+N;%L MP*>?OB==6SHLO9UBN;ZG$IE5CE0W\$H>7TI7 L4UI,48ZW;ZTA);R5L3"Q7RM/5VMZH5J_Z8D?3UD$C-YN*TAC? ME2>MUS@MI81=HFINW%1WIK':%'0L-U^U+FR[M8[5JV\Y6*_D-1\(7Q4_> MU.N5&NM9A>6PVFJH^T5J52IY\/FG'949U\P%+EH3*84-E&:]DB+ZN5"A3CO* M*@W(KM3.%B7#2_?KHQ8KT 2\\O3YS*RPX&5+#C$]O1XQSA*O3M83A3Z]Z2J] MF+/.MMC#Q+3-%EM9I[!4&^#*TYNF_9K0J^H]6^XJ,S $9X (>*@PISZ9-XD 5J?'8E(*Y1I7M7IEF:4'A3J\LYUFB6:YN M9I*JE1R=]X5>=]4 5S(G5\Z[V=5L7BC*J6 R+"T[?@5/313^])X5J;?"[ V9 MEI8UWDQMR65^%@K@RI.VC^9EI;OJKDLR(TW6Q3RMLL$(WO-$]K-NYZ1'7:S,RRH=]JY108W6GH#7'E&]5J8VZ'GXD;> MY$6_:2BXN@X;"HZ=MJF8&LKD/#VM8GI6[K%MUI-Q,/#P,WQL+@=UW6!94>I: M&<)HAQM9]AKPTE,U737:D[HU3.-2:D%:E#:P[6P9W/;,@)YWMCECD#94K-0N M-TNK)C9)]Z-+3[K5D:8=+17,#-QKS 2"6GHZSDZCJO DKB9X:_VRTY864PD$&S\GBU ME2[EL49T*?_\TE2UDNI7"@J&;;SA>K*@\J+'1>]Z*J^-QVY&K:V.F_.FOEJM M>]1TH$6W/1U6&Y\::+J$:W) I[U,?MB6J^KNOB=2(*T)5R!%(F5N9OEZ?[NB MEF( .N$,+;RPV]&WTW0*R]'CVE)LU-;+,;CT' .VLZE>$(<-3)_4267AKON; M-'C;,^.5WBR+9'ML=65UT%UL!U6[@0%<@$M/VC73EZQH,4Q:(IA,6<,4;.FI%%+K>DCCXE"6U(7D,XK0Z-=74;M.>[9:'AG+)IW9F(;8:%%6S:'F)+CV M#(FT@;D)9E:5DUIM;;Q5-:%.:>!MSP"FN*'2?5;I]^2<,S'3PYHMKBL3>.FI M'HQS]J"Q;N47LI[JM[:L-\"8 ,S#S\>X@M$:,:;UH8*/>%JA>!VP1053+&#:Q8=5BB)4W.&4T]RI:EY9:TL:5G MCT?XH,$,\L)9HVE5,ST\94];F#%M+Y=:?NWB7><31KDXT*(]=79I#!.CUO M57:,AG#.:%)DFZ_-=&YI=DFN-6M(I4)I>=9H\HAUR->S7=_,Z<*\WZ(FG9XR M.6:&^8(JUK=3-SIM*(.3RX?*\T=3SF4J#76\+9DEC6Z/Y)BNWNN>-ID%6GMN8 MQY;E98OW>N-Y85[>3,X93469\TK;M"%BXF8\LJUV;LV9C;-&$T6)ZR+&SJ?R M9E7CK6ICI:8SC7-&TZQ,C4RNGO*P3=_C"WBY,IY8PEFC2::Q ;$JIA8F,Y.& MK(7-N]M .<S;"PFLG8&XR8*$:[YBDI?7'6:&*+>4OTMXV-M.QP ZU;G@0Z M,!G/H"J3IMAY&Y/J&.-TZ(KA9_(UYJS1%$[R5)?!50XN%:JU87Z&#TMGC2:\ M-]KDMZZH2.*DU$D/>T6"-\X:36X^6\OBHKZ0 Z-8G12%S3R?:9PSFNSQ8$TQ MHB*:ZDRG&^$L*&069XVF4:!(P)+M!W(-K\J\O"Q0(_^\T;0.UV%*9KR^9+3& MF8U.YFD^'YXUFKQ.=9%-K^N&S+"5L!L4.&+EG3>:1H-UP^V(Y C+C5U2G)'; M'NU.SAM-H^UHFEEB+H6UYF!ZL^I8,1.<-YHHH\+PEI*LY3-^EL:.9("G>-9FV\)<.SEE C7QAHF9ZQP8PVUQYPA4+*F4S. M6T*CKC_*&E)Z9 ;E7D\R4H%3PE^PA"9BB\TT-T;?9-8!T^^E);;7.F\)%6FY MNUC282#E6L4%GYIN3:74.&L)J>U4*K6HFXX\[W0+UE!=9+>$<-X2*F2;?$WG MBI9%=ZS)-C?D2P^F-5 M9NW,2?.OAZ3^((!%?$<9Y7-'W/BZ^U@J\2BT$)W@LD\:T*+C9,='1;A@H,'6 M_>@<%EB$WO//!"T?2MSO(IJ/CX'9?8?3;XSC-SB$%\Y4B#3.OFET@,F%:Z&? M28H1C\O[%V"]\R?QZ.->E2QC;MC1A?MH=+\WJ ^PEL]*^K:/KUM423>&KYV1 M\4:\8K^S,NLZD#+\UEJ M72EELS-:;9P]KNWH:+!7SA$\+S(?!OFAWGSG@<,?%N)HK:K^IKUVL5) M8?Y MLJFWS+\O;/]9,C3$C=5=V75';DV=[2!/S^K5B@ +W;]RK@&4V!&-IV"=1Y=G.,#;4'THW-*3BM9 M/)XF\[2DX7DF'PX?4L$/4:06?!,>[Q6==NOMS[ "$\AQIM?#3O6'.NS[B/B[ MJ^<>SO=ZH]H[U* (Q;LC1AU[=^#PD_.Z#H7C51>>'/%]!S0^3U((YK#C8+Q\ MJ%M.&$UMA[-8'N.U0$2!M0^"/V8E'&)5":#$ZDO5]8_B^0]1^(? _I]44=ZE M"\#[$M@_T3&>^%HO_NPHER P[Y _O, MH4MG"FE3?118>FW\/&>H\)CCD=[L_WB:/2026L4I"1*'I3(9L5^L9?M;8W)J M?)V_[J+90T>Q7>P^^N#%H\L>OWE6@U>&9PP-R_ WOZ;&:*3;X/M0,P< ^=.3A]Q2\]:]= M3@&TK-Z,Y>]3+J(''RY5AV *"WS]JV/X+ZL3;/([M>Z>I)!DXB@91+.X2@;1+*Z2032+JV00S>(J&42SN$J& MO2>19&(I&42SN$H&T2RNDD&V65PE@V@65\D@FL55,HAF%Y;,?WT71F_>(:+W MA66^>D/JF_OS[W[W==5-2'94P/^P8?ZR)/]R77BO]/>MUAP+?AA5POB['N#O M2?:'J4%4Y1XIP.TJ0.$A#P9IP2=I 9B>OZ,'/J(%;=W2-6>.5."Z07!B*1UK MP1]V$E(-I!KG.NGO;.=]YM9^:8$OUHDH,39QJ(D2N_YZC:;[>F3_[W]P!ON' MQ).['V""X!4!=M>HTW\O,ERN2CT.ATDA94#*@)3A@V8V4@:D#-=)AFA[ ]($ MI F_HZ+ SZ#P?C/[C/S->K+?B.9]FMK'KH4?68!^))87 MNX[XOY_0M%TP+ Y-.QKBT8Z@XQUWY)/JH$\4X+AE"U>/PG'@FD3\-G6?E(-] M5J@9/O]BB&K5=DMV8%/5)RG^UG)+]K/2MX] MU-F:Y--%T,4SL\4N2SA9<'*Z XOQD'>_*9Q)$AQ^LJOUL[UE<=!MQ"_$+\0O MY3%:EE6'+I R?)!@C[*&;HV>\6Q2Z*3P3:I;Q[I;BMWDTFM;H;Z;9[IMI[1P MT<^8RW;7*S58OU,;PHIA##QCDTAR&.(9XMG'$\?CT#3$LS=YMH_[SD%3=BSS M"O;857?E, )7?X:TS1 /O5RPF)KSPDHI3&BSP7;#;T9:HY :>?D.DS-+>+6D M3.T.[:4@TGB(M"1!(Z(AHMV:A;8['H?X!ZDX4O$K5?$X3MIOG\3S#1/DI%;/ M][/;O("U9+ (,2LK,K6*J@33=[]IEDR2)/GV%/EI#N?O'2WBLT*.5Q)<^38: MQBW.U".\HJ".'D6(:(5H=0.6%QUGYDYV]K\^ ]4&QL"J-;$5>LMYT MWF]E\QT2&NS0U"4^0(^V(M&=2;7,(,F M1\6-JNB"PD#',$$E"?8=Z$;TNCIZ?7VO(,S]5,Q]HR/YK[''Z4:&'8JYF62$ M_"B06L.!E)\ [#%WOYDD15W>Q7QKXQM1#R4D7Q/UOM#P6?Z+@+!]Q$KSKVGFE[0BG5 M95W IU-,6K8#ABIT.HM@*GP]H39A(; TNS^0&#DSU!:-) MG$>;*1"C$*-^**,^.3+QUYCI6MAX[I:Z(ZRKN1Q7;J>\42W"#,Q/IY+D>U(B MKS<]O6 #XU9/_-MR/.\_B;'KS!/.SF8&\PN*Z%Y]1/?;:!N#COC9@+VVT,;# MR^Z05 9 .H/S9DO'ZYU"53-U;5&I]%EYGE="A8T*G@":8P1*PT(P0S!#,(M5 M .-]<$OC]?FZD6UQ6*OOE0>CVL(JX@T MZ@N2A+[@G!%'%09P2T>'8%2YW\0 MW+XW3O$^OJU+ 0OZ-+624ZO-4&B(@Y;K0[[!\BG =KM\4"(.RHSP%H^.^!&V M&\35OV.'JR^++ISG"N@H<)\S@,D76F.3Z5&8K&Y6F?0ZZ!1&4PB85V(*_T%P M07"Y3;C\ -OID\,([[-3&ENFV^ZN+09K#>AQ5N!\VO$%B!'Z[C?))"GZ'9O] MKF2C0W1D;,(X#A,D$[;^>;5L;HT,/R$&BS8UQ)F)5^?YAX@!EJ3S%,XOQW3# M1CI?+C7KA)PJEEU+](3"7 X5#@8!<#+)L:A\,*+6+5/KYY?A?'U)C/3_7=UT MP_6TX^DW^?%NWK=FZA<],V$5-XQ%?[V6:FXEW6THE,YG&F#*AM53+NB3B9E. M(G"AB?L'<.KK_+M_#916T"[EM?Q2P5JEM9);+GOZL"$ H$2NWB1Y44\OLOYC M,:X01'Z,S^*S_;A_ZC(8=TDO-W?RH6R4U)G!9@=<)8QP04>Y-13[CH/2;B4- M?*@#0>@'IZ^OKC^QADWLFAZC(-E3YI" .2,G&%IZ3 A[T5.!X]?VGPW<:W,2 M/P;L#D<7&W8 WKWVL%LE'5%K=UT;,DM:^ZX*U,JP57<3-1_,&+ +72?:3%0 MG>GJWKE29]8TV%)^=;*2 U5+^934MGU%4'CH8::X)/X%!STA4")0_HRV(U#& M.?7\:\&978T'NE?3:#/HM>>S<<;?.B($)TIA1^#\$G"^F+4>O[8C<,8\WO&U M[,3Q:FL(]!(SC:Z\Y3J-6C$>(RY-CUH[ MIH?IEHI9K75C1*0; %Y1/(9(TMPIOE#J_?6GWJ,C V)FMGUR).9K3:1.FK&R M 9VA92.KJ$W6J3>L0409.G+,\>0[''-7DIE?> C/'$X:0/'M#['SUEJ](^JM MM1II^.VT&FGX[;3Z-C5\Y^V\M58C#;^=5B.&WTZK49[I]S<6>3=.O!MM=;W/ M+$WKMG[^<,3APNP+944.I)0^JK8,+MUJCB<*CNTR3)DD?=L9IE7=WR>4(J?O MU3M];[G>2BP,!]01:&B@H8&&!AH:/Z3"*1H:\>@(-#30K(&&!LJ,N\K,N-OS MW]1=9VSX+Y1Y]-6^I:3-R03+,9A?$J29F:D*"H[OZCP22?*&ZCPB%S<*XJ @ M#M)PI.%(PY&&(PU'J29(PV^MU8CAM]-JI.$_KM77FQPAS!W0CFWD&$DXXX1A M^ZH],886*KR%/)C(@_FB!_/3ZYRC08(&R<]H^\]V\U][T:7C";TV+CQ,YX+G MZ?ZY6(1@\3EY6NYL36:Q&6&41U?+1$/!25@XB>31J>:(?*AJ$C(/T"!!Y@$: M)&B0H$&";.A/3I7Y8Y,UU^!6O;HI;BG9&VG[-B3LK'21R\&G'N.J4F55%O#NJE\J:=. M?5R?@64P#:,8>))@T %I"),QZBF$R6O"Y#<&0#Z&S>K*(S;E?+YMUH;%D;L< M3ROS;83-77P$O_RZ'6$38?.V4]%O%IO?&UCY&#F9DLM1U6ZJ+"_9>6G0H8;< ML!1"1N?D#N?EE 9N/ 4[BA>QRXK6[H652.61RB.51RJ/5/['5W%%*A\'X=^FRB/*(Y6_L59? ME\I?;YJG&+ANE- 9N3^07Q7Y55$)GCAY2@5/J8WCE)"9&E4757.D;DQQ)>FY M9;5.YE:-OR_Z$W%G3Z$SWM?T**O-<4I294+FR'6C.;7"2JC@+$RY)#DR26/O M."(+T0S1#-'L1FGV1WF3JY!5&[)0P%JFRV&C<:,K]BY'MQY+3_S*I%N71$O4 M@KQ6%!;EB&[,W6^:3^($"H$CN*&ZNPANGY3=F+'-C#W8+I92CK)=>N'U)Y/U MWR?_O,4W3^<6^JQ69#"B-\<6\YD;+LL"Y!L/K+4'2L>^P:$-61G6"ZJU8==S=BL1U::\&.1M;VLW%)R# 02"9I(\2Z.R88AC MB&.(8S&)&KR+:WEB6.^M<$>7U;9E9>>:F6G 6C0<#!U0>))C4%56A#54=1IA M+4;Q@G>1K=C/](0J,9[(RSKI%YO94!M: B0;#\O%T#R.P(; ANRU:P+;ET4* MWD4@>U;7_#67;\I!K5W?5M=3-\-'ME44+DAR!%HR(@0A!/TG'J*42] M'TV];XQ*O$)!SBH6-CEW))J,U59Y522-<4N %&3N?O-)BKG\^;X(@@B":,_# M;4#P>V,8KW!PVR=;::V#YR1UDC.Y9E&3K6YD#?* @^]8ZR,((@@B2_ #$$S M;L*)?]"00D,*#:GKL2L^V7__RAP^'E$3F]J.':GD=[/#3K@99<,)G,.C5)Z 3H*N=PO$DS:+$,,0NQ"[$KKBXS%]DV=J<.62].I%-W1=KG<&F ML"YV0\@RYNXWRR0Q_/*%,6YMS"*4H>3]'XZR.!3[.4.S0;X^#AR'74D&V]D6 M1JYK,'ADF?%WOYDDBUV^B-FMC5H$,V27W4;"_HO4J8Q2*CXH9RUYV2@9K35? M<6RB :FSJ^E#)GD*@0>!!X'GYX#G(H5\SK##5X:%<9^QZF;+'2K!B"6#]B"R M6*(*/CR7)(CW5O#YKZ\"$7^#8D??#'>7#AUKM!,VZ IG=[AB"M[K5V #E80_ MG?PYNLVO"/+_O'.01$T]/'^O[9IC6>K"TW\=?CAN$@->>]^:N;I.1;*W#UJ8 MLO2Q_TL-?.?P0:2CNT_VXV-WS=& V5\#/]D3"].:8/ MX1:>?0WG(V-UYOX.N.?8.WT&2031#DGE.,_+5A LDF>^2#'M/XT@R<90,HEE<)8-LL[A*!M", M0Y*)HV00S>(J&42SN$H&T2RNDD$TBZMD$,WB*AGD-[NP9-Z_,>9]89G+QTTU MW?9U]UG'#%\,PMW][NNJFY#LD3Y*_.]_ARC58)30' M^^/_=$7=_V0/\_7=T MP$>T(-HR<:WR/VGOERL$=\^1/TPC'A/1KU4MD!:\K07['%ZD M>M I])2Z0: MUV0T?)IF_)TI_31'$5^L$U$&6"Q2%/\8ID75#E1W\__^!V>P?T@\N?N!P."Q MZ5?#UUVC3O^]Q&BY*NTX;(>Y(EUXM;TO*\KP,K,NTI9X:\L7D0,I U*&:U:& MFC^]*E<.,BC^=NT.RR$]8\)?6N%Q*RO7U%>Z'7SBT[G#+!+O=5@JA1'O<"*7M/&QX([^_>M/<5(<$-:07)C/+2NS4U03+ M^?N*)WN,9%UG#IKEPT[L&OY4!(]VYKHKK34K@$H!=^:!_X_:ZOK,]KP@6^3P MP8:HF)M1D:O/6JDP+ H*"2L]D13SOA)\B%^?DQ ?NX[X#'[M,LKCT#3$KT^M MX$2NP\R"4S*.O%3S]2GKBX94^?N:)Y_#LR8^R2_+4KYN,E:WUB_WQW1QT0 \ M@\RSJS@5VU.6\AITW=R,^S4 FF#6U+_;0N/U M\:(=LN.*5)MZ0M[2AJOQ&A(-'M',) EDH"&BW1S1T.$#2,61#^7+)VV7)+>6 ML*169FWFY[')""N:I>^>(/M\B\UA2M^0Q+(H-.R:;*2Q@C&;;S+=?*A0T&],L&R2PE!9[0LYB>,V<"]#J;W; M.&Z-192*LP_Y+6IU)HZSFE6]E%P+LO(_/Z4XYSJ>EUBXSMCP44CLZD-BGPW"&+3O9[/OVKR_$4_J$4[. MH!?W\Z-%;I7MR-U"WFD.<[Z%9T*%AKY?"%[R\H?#QD%EOYU-L4P9_FP'< S: MA]@49Y_OZZR:TIC,+DK,0"H-ZO4\S6>-C-H K&+N?N-4DGU/:@!B%;*CKB^% M[F99];VNWM=QE><-'MAR2P\KD:PV+50GS7HP ;CB[WX329Y'M$*TNDE:H81? MI.?(NW$5GMW79T"]DY':\Z&UE6J3/#!B6,E@! 3ZFANV 8P3:(2U@E]O=!M#R7ZHC 7"G-=\Q+E"UV] M>^SD=M 1[)'P!#G2CCCG#H4O++?5D2C.9%'34K.TW9S7<$%AH@Q@(LF0-,I) MN<$$X*_O%90I_%,Q]XU>X[_&'H-5M&*>PUV3L#"QH6VP>K;? -B#*<1)'KN\ MA^;6QO=/L-F^A7H_.V7O9JGWO?[GOP9?L=JHV[EBKVENYM/E+-><3W0*VGO\ MW6\R2=(H!1F!#X'O>L$G.N[" 3?1JXZ]9]J>4.Q"D\0>$:1,9C,N67Q8Z6]S MWV":C8*IOQQLE+$")5D^'=L?;^2Q/."#2Q9/?%OR_&\ M_R3&KC-/.#L#&4PF*%9[];':;T-K##KB9]/TVN(8#R^[0U(9 .D,NUNI)2:+ MS>I*8AKDM$((.M\(&@H+@Q84G>1Y!B58W6SJ^K>%+F+0$0AF<8Y6O ]N-N'V M6G5[N);FGIC93@1C&_H"@!MS]YM)U_4RK)JI=:)3!R )S&E?X#^(5XA7B57QX M]66A@3\$2TX)Y $N=)M2K9"71TW?Z:4W$P"65P("""X(+LAK%=>%WB?' -ZW MKC*6GF_6O9R*E30UM0V,])BJA! CT.&/)QGF8I5FOG><1*>Q)HRH;Y()6_^\ MVC*W-OY_0I@4[3N(,_FNSE\/V0+L1>B2?M=W81JPM[\+/[-SM\_G=CE M#KTUQ6&WB!G;(3643%E=6@*8V*'[]_HF=42Y[R]]$K?&7CW4OLY#_*?TZ3FE>GLVFD#[01TSQ:%6!>(-<(?'BS6<[@?\4&6-CG:HRB:4_Y M0@*^C)Q@:.DQH>E%3_"-7]M_-EROS<_\&-D['#-LV %X]]K#-I5T1*W==6W( M+&GMNRI0*\-6W4W4?# [P"YTG6C+4 %TIJM[YZJ7;=K;I1#*C05&3-FA;& E M6DB%"A_EE_-)CKA\41P$RI?SR^,'BT\'Y8LIY?%K.P)EG'/.OQ:IT;38 M$IAVSE3%D%>7U>4Z@T$F1GGQIT1$J:N(A8B%,6?AET5"O@E:2K]KK*M%WL0V MI4);K C;NNM :.US[DGL= F,P'7].?>HJG_,UJ^?'$7Y8C];OBA+RXU5E -2 M4L.AD.4[3@-2!H9@F"3VGCJL/S$EO_ 06SDH?/6VOUK6HX M](/?6JMW'O!;:_6M:O@M,GRW/K^U5B,-OYU6(PV_G5:CA-#O;RQR99RX,MKJ M>I\"FM9M_?QAA8OQA@U-BBM*M<6XP1?\$FV70P7'(C\$CB>)]Q24O))DRM&AC!CN>,@RO3,>U4,'QR#]#4DGV M/4?"_<0\$>2\1N$9E$2"-!PED: D$J3AB.$HQ(XT_-9:C33\=EI]FQK^H^WP M*TE[$.8.>.EMY/)(...$8?NJ/3&&%BI^A7R3R#?YHF_RT^N5HT&""A_]C+;_ M; ?^M1<^.I[0:^/"PW0N>)[NGXLRI%=KL<]D2PZ6F_,S'B=U?.-/%)R,BA?A M'"I=A,P#5*X#D>\GE#KZ8_B1A,_UV<:D(I4"3J[6ZREVU1,@_'B8 ?^.\"J" M'X(?@A]:&Z%!@AP(/]U"^.3DIC^>C0=FH2;C52>/E6H-+F=W=&M&1$L1F/#$ MDL1U9CME="!SS8CZ"850/@;(V!$A%C&6^'7+SP;EM1TS<$R@,USN"IT(NY MV_L-PED%:5"6ROF.3-!IFEO1%CWH1H3C[WY3Y.6=W+03^RGOJ+CS\V=\D$PM+M?T$D&M"7P;& M H(^ =\GLDA1.!:%8V-4^"Y^/?6S^7MM,8G]LZ,JIH!@8!$M[$G6=LJ./2D; M*WWT8BA9X#V]NTG5\A@QDH*5)17ZHPHP-6D8LL"3%(V.Y$09_3'J*93_?TV8 M_,9HQ\>P.<0W;2Q%J)+9[6R:&V_9$0*U ;$9!4-8_/*Q7H1-9%W>=O[LS6+S M>Z,H'R,G%925=D'3TC*C*[/5<1-Q,SX]A;@9'VY^673F M8X!+5WMS0]D$':SDV.G:3R-R;\VU3YZ[+EKR2#4PQ<-\K5 MC!P;R&.*/*:H;DZV3$A>5%D6(:_"*!L5Y#.V%07A#>+M6O+V<7QBLV+)7<^5->5#DUKR_885& M!!,:5K7BDBQVI^N0\@N S%Q4>H'%DCB#2GVABM&H8C3B6%PB!._B MFM>8UYOC_'1@+JWNM%N=D:W": *YQMS])O@D_04U96YM_"+S#%52_>%8^][8 MP+O(-JL[QD@O"5N,8')CH=-7&+D>66RP=D&2_(*J+[($FZ48U6:%%1:(Q(TMCME(7..LEY; M4.' J3- EY3T%' M4^\;0Q"O4+"?K:V6DS*VP AKE-)38BC(N@ IR-S]YI/4%QS BR"(3#^4[7L; M$/S>@,4K'-2U*:=L:;.J3@NZ61L1_8B#/. @VL2 (!BCGKI*""9@-^'$ M/VA(H2&%7$K78U=\LK/^E3E\%=!N'>LV:"R%5?HX:RUQO#F!2&'DQ M#_WWCI>VXZO6OL)/ @4M4= 2!2UCQ\%KRJ8/;%%7K.'9S5ZJ4&S6Z>,DN\5LD2K9*T M\ 5(G:@T#YMDWY,XB[B#N(-\63'ASD7J\9Q!Q\*OU2VOU_(P9N%L^BV&$;%4 MM/R*"O%P?)+BWI&@%+GT_^NK0,3?H-B/W^3!'Z/?PMT7AXXUVHD>=(RS.PHQ M!>_\*["!@L*?3OXK"TW\=?CAN( /><]^V MN;I.19I@'W0R9>EC_Y<:^,[A@TAC=Y_L1\ONFJ/AL[\&?K+G$X;]"W:4[QY> M[-"9NPY\?_#EU0/$1L;JS/T=<,^QY82'7CO\'HV?7T-75\U4"/KIGX7C1>=# M_G)U"W3_2G]VSSU!H@J'6SR>^D*&O?P[T6G7229[Y(, M>#L222:.DGGK_!PD&40S))D_.T(42>:[),/>4SR23!PE@V@65\G@]QBRS6(I M&4"S5T]T1))!-$.2.5EIHO5,+"6#5IIQE0RB65PE ]X.60"QE RBV84E\R2 MM@^W58,Y>#EM]SL,$1EVH.[C;]$WCWI(LW35A6*<'F)&A]CK:43H\A%63;=] MW3UT&D$]QE?W,=94@J,2J>==\7^>R/QAIQ@,I3GNKT/H^*BI^\<3D4).]-1. MI=0Q>/@OU0K5C7=86_#WY"$J_>LA^@S[)H%C]R3]K\31S["/3CH8ANF.NO%) M&&[_M:>1N,.';ZCV7EJ^L_A%X/(=GD^X1;52:AA1 Y3LLU.H2UBH8(KV-WN:0]75K1-?2B2)0%;%I9C M'A]*Q#K7 %<2SZ]LBOE:OC2G>UC7RJ2L6<\?=[/P2OKYE=54N5#(>*XJE3KT M.N5D%;S,3L"5W/,K&WYW/<]C:TZJ!4V1K]<&19&:*,3I>W:J ?O_M_=E36HS M3;KWYU=#RJ)]=S[*(7="J"^OJ M8FYI]DPAG2YH>=1/JU#E6:=$](0*QZ]DM:^L-A/XS*-^XD5](3O5:"[%_>[2 MY/A21W-@2X+XL6FM+[MD421]7-F-.$>A--^:P=<3](]-%Y/.TGO5G-"KS+AFW<6#7T)Z]@*"6\"UH>C3Z+EW.2KG)YTUZHLAXY MEBC.==#R:/0Y+I?7RM-20QA%JE3(B8V>QL.W'XV>Z+3GGB#J(HEJ\=S ME );'H]^3%;UF)QTFKBR)24\W')5MP1?3QSK$T/'I:5*U? B5>JO^0+3#<.D MZ9&@*IR9S0X7PQ(N5I]VE>YV1(>Z+M/'@EKK-<-85%<;(7Z:6-N1VFFX/FQY M_/Y1-PB%=:[=DNS)CMM166E 4L(0(MCQ]J MCO QUY$W*W-DK'/DA%CD8S62V>.'1BMN[.#5[5P027I;8B5#\8>ZG#MN.7,4 M8MX,UF,A;E5[O;;5GC:'D9S<[?NZ91@&4PNGJJ(PTG6=%\I<-(KA,_D?6Q8W M97HR+#BJL XI!B\$X5COP);'0[(IU]OF_8B4&EQK.C WK;H,$(([[NC2:R[- M6E<824:K-:17'=W'\Y','[?824?;(B#I<*M=(2/O-H2)$71AVJ6([,4(QQV:UL; '>$8J?,"FU2VH9:BS4CF\*PY M;(K ^OJJ"=J> '/&&LF#4@$OF;$:5[4GJACL@%B)$WA:&NE$KEKMCDTQWV76 MMKP.64*'38_-K[;P/+,S+RGFR.8%N:JWRT\&>.P)^^L,ADK.USW)+/:?M@1/ MA:1H)4V/)$N6!V._VRDU)(VEE(K/-/1V18=-CR2K&!'I#:G=:="#2?4 MK) T/9)LW2WV0UZ.!KC2Y)F9+5-XOI@T/5*888.S<-5/)>KM:T\ M;'H\"=VXO(E)O#N6M)UA,".RW,S6D\<>&XQ.=)ZL^KI1$%B6GHR&2MS4A7W; M(]$^2>)**-O<$#?TDB]F^]EY <[8"11:CJ:U9JV'RT+H:W5FU<*?JB/0W1/8 M0M3=@KB8+Z8FN8XMCJH8P:Z3<%$?->WJ\3I?V&I9,QXVQB&%]S?-91XV/1I7 MK1KBRUYCUI:*8MFC\875RID)-^WQVB(_.9[3=CN28K1=CMJ%TB9,GGHT8;V2 MMPTJDNWC_4Z[8LT+@2>.DZ;'LU 51:_CV$'7-.I!J1W%XGHSV+<]DFSDXF.< M:VLTG@V#C3'L6\93)2%>/);L;*HY(:E+IA94!JPZ4W;"*CFP<-1T4V].RNP< M8"LI]#1N:JMV:_JMROB'WA+Y+4<4%IQ4(4L&.UKM=-R+9/*[X?X0TNR_.)7; M134VMM-Z4\BN"X3<-DF.WN9EV!2^Y(UO%4FUY3;R L")4@D@D%B>[ P]^184 M9+K+\]ZM%.^CX[K#:Z>O7ONR\/+3UPGPX3'!F6DS['__/?UZC\7F1Z/^S3)K MH'_PP__[1'[Z0Y'PG^EK\&/\C5XDI^B11EQ*([C/''%C&O'];#)2B\NI!5/^!D.V+# M(59;+#DVE8I3?K^]U-05$%5Z\7_]BV#Q?R@BL_^!Q$GRGE:?GTE@/^+COX_& M_UXQRUWISS/E!-*6=]>6?3R#M 5IR_EA#M(6I"UGKD3WIBUBL+BO[%IZ5(6_ M,U5)>(U_@)4_C 721@;?TS::$T+,1'3W[Y@YHE(HB/^X)#\]HJIY3553"O=$ M*;"N"Y+5$/+ _<9<0UZ?A9G6/2*B14,P;35<3N-F8]+M_SEUS@%&RIYKP]I% M*,21$2R*X-6NK7G"5K5"J!208@?\F0V4[0F>G9V0[>="J^OA?7%E$7V;5/RD M-@TR-O-]"O'W\VA\&3\/0$'Z]*Q-S=B%MA7IVD96*U+))3Q8Y MN?L7+(+O@V<>OIJNV!*]%;(%71PV**E<=O( S^"EAKD,AR[T^A@XP^_5'=N? M!D_#T!"$I6-J3B*5VTLWA[ MI#R%P=94"$UI.O6JH5+73F&X88NA.+%>Q;6\*!.>MNC[-#R(!YF"&9S/4+DS MG/X_2RY?US2*KA_ LZO>>V>4'Q#ZJ!1NH+R2RO/NT468T%,PV-M&QGO++D-H M$><'@#X!NO)@Z@[(;IDRR6W7VLV,[+8RR5$12KJ[C@!JL9^^ M#[3PQW&M#LGAM T6@5;*,\6_PJW%K$^5:3..I,9ZOIGN*LMJK0,I5& .F,@0 MQ!E7X2#<^I.$;]I,&86$'Y,/?D!U3^/*A=3]9I;I=\X-_VI);*]5>\;/JZI9 M88Q5M2GK%KV&"8CD?CB :5##]N MR?![)X!3,#Z$36G.^?X_/9,LZ,8PA7_Z2N9(7,T M0JN'K?5]Z*@/%?P^3,'O0^MY&E?E=\[L_GP%K,T46Z3UPM@^O(P MN0#SNCR?R5'D?1;S]C4+-- SF*XYP,6Q,#")F#*S#<< KDERGPRF;5>:XZ-" MW[],Z-X5OB$P2U^(\8&IV@-L5/:@D7=F^5>0(>P1XP30DLUN<=0=,*ZD9!O4 M*-\JVO4(7HM#@5"#RU DA6I*+I*R?;11YZY.48M@*G59VS^&K;4PX[GN*B=* M_4G-E'+RMK]=YP%LP1+>#,&B2KC+)&\?;=3[E"Y"K?2AUG7SMW\,7(URN3TW MH]; 5,K3ZFA"BJQ5[P+@2E*[!,TBX+KWZR0>Y/:(^P2NHNNM7/ 0K>TZ!TPZ M($R5CT:]ULP)\(;L$!MQ$RWGN2NX1A&_K')2EUI(ZVRN'LX4NLRS$&'@/7A< MAN48!#$72:&C?-+C(L<[)\?_V/CM3I[=MI^JBJEU&R$W,/3F=I48/ZR'SF4H M\HRSC7=2#EVS5XKA083&+-=_SWQYZH::HIKHU)VG2(4C=@N"NFT$OK>,?L5U M9Y%A6=]1K E [ 3D;[0-Y6^6;DGJA\LQ;;%S4B+R<@YF\',9'D?$@-)4KXDJ#:\>5('"BF0X"4)AS/#,"O<52 MW9JCNK:&_3=,+OX/-O=<&W/W&0;70;6YJ#87[:6@3!X$TF^=W0/&&RCJ56>$ MX^)#&5^/B$5SV%O,1J5(YF :CZ8S.0IMVZ)"7%2(>\^8=,5"W/,PR@A:ZRRS MW)%25HU*-:YLM=MJ'F!44G5+G7,F"T$4JKI%5;#DS62D MX.RR)G/U=44RU]"3@C2YY!ET@ BC4('M#89V$'/^.W68\V$%LZ?! 0@*/.<$ M2JAAV*8JGLG@RM-":.6&M7 X[P*4>+M,]G\01-QP@2R"B)MP8]XYBWV>RR!: MO:KF,F5&$"N14Y_-O#AUXT>E1-?/\MZ"GGPP<6[JQH_LY/J9QEO0$^0] MW[GW_'%IS=_U?/DA3@=F?BJ9Z_E@52 +Q@*?1,#SA8G-R_,B(9BZU>GH4Q-LR:@B";N5..WM>%OU,-2%@[ M)$RQ0-DB8MZ_38^^@@D*P,3,#:>6EA*<_(\+W3V9AH'>-B#>6];S^YY5V7-M M,#+0\1#T7?QVS*"0@,^^W0!"C[ -/ 6HE>$H7IP,'R Z%*'G)I0R-2!,3_-/ M<:[GG2(ESNAM71#%G&8W1MFHN\O+!)Z4(.FLN2/Q8 O7%]E&^$O:[9YXQ5P6DZ78G0(0"B^N;+9KY3!PN7P+^C MF]73,%"$?RFO>?Y8"'1%%B\V>^)$"+UV;^;F#85Y2GQ 5#Q]R2V-U.$"BG@? MOJ#ZLLCS9F'VH-X,E#&#D]*ZNFLJ_6JK[CUU(00=*K-SQRB$*K-ON3(;';>_ MHUV$C_57Y,%V:G%>:8G'75/)X1'5:#03?^5 >(RS%]N$2-U.9^W;%L3S%8%H M5_<#2K1N"R%#,&3=AWF+Q:%L+#K6B*&?]5YF81QOUE9+;J7 )'FW4 MB)GT<4;]J!J.B"T?9=2/JN&(%O%11OVP&I[*FE94N_:(R8>.Y\Z-M^ZHJ4EX M08X;]%S0K/S<"<;%M9N+9(),\@T4D\GA%\LWH'PF2NRB(A*TYX%, Q61H"(2 M9!JHB 05D2#30$4DR*%"IG&5(I)'$\2]F<8MECWD;1?T<)?D@S!WCAE.H#BZ M,;406Q9BRT+YU[LE3_A MJR7$"/.:]\ )N_[6G J*1S+:J^&C\@EKHS]G-ZM MMW*+("\3=')) ([(#A#;U=^E<%(W4 18:6:[^FT J^15VZ9Y?807-YU@;4_J MNIE- (S]])4]Y^0S C!$5W6?=%7O?O_"X^DZ8B9"NOXPNIY*N$.Z?A..Z3M7 M,OVV'SB?K,4.UY?F^$C+.>ZH.ESFRHD?"*N;N-SC7%Y:TH :J$8B.K27\.'W MEJ8!2M*ZV9 ^2=TVZ-Y;^O(E=)W ^(VP*DEBQ70%@^O+]5XC9Z_5" \3%:R M.+K/-#WWF:;!MJ]?J'/.S:=ID!1"P33G1'^!BGJK9XEZ8S8T%;;4W _P"&KFQM=;Z\:R#:YK= M'(\)@\Q170B-_*>O-$4A8$S-A<5I,'<4-B-@_.@;!GZ!8/FG;D4V\*8D&%TQ MQ,NV-*3JB7,';P*@$8"EAH@N#6:) .PQ .R=-UM^@4%NV'UJ.\RT(JU;VK2E MVJSEYY.T6W)P/$.Q9URI?HL%VQT/W@,=Q!EL92E.@(%)Q+1U:*S@6][)8=W)S2C (A J)T_ -+ ;;J.WC0VVNS-[7*Y MX?,U6Q!X@61-I68M?CQG.$W9M\O3057'>T6W2[$/O;35P(_PYE%V'=_)>-7VPA)G5@0]J5\ MU^/OX*_G%?!E?[M6\!@OR-6VV+2K2QW"'__I*\,C^'O(4P0HS'T8^/NPO8V_ MPZD\.U)S16/5,4?ZKM.FYN9X.,]#G();'Y[R) R (INX#IMYY!^/O MD*8T4%0O7]^M3'+7M*)EF+."8A(0)C?Q9&CR<2Y01F15U]X.08*X-[(J9!H7 M.W7P:() Q+C(-! Q+B+&1::!B'&10X5, Q'C(M.X^3K+8NAY245EDJ!!"=Q[ M+J=$##X)6]4[9UOSOBS.TU3L6&( NFQ]$2TLGF"OQSPB'RK3]>ZW%K26NW-4#>XBB!T(?! \@4F MPW($PIV'JB-$U+-W@SN_6>5G&8M%YXY51WQ MO6>VF]^AZFUX;\6,-,T[K1ZNU,SN:A>M\V0.A'K\_I8V/L.1/**"0N3'Z9$4 M(C^^:0"\8L;]+$"D1L1*&>3"B= ?U0M1T3/'/2."@,A^^LIG& HQXR'.XQ1) M"G$>WS0<7G9T-3] K%RK#[)$W"Q'.">R;A*)IE<+H.?O/+WSHK@!VZ@6._-I9*Z4:+J]_1*"NV/W704].&\+J?N M')VH:XN).H(I-GR6QXGM8FT *"<20A>:R? ,*FA"%>\IDA2J>+]IT+LZQ\RI MPJBX6UI,](EGALO QB>;@9WO1A $V4]?:3J#XV?<2X P$)6YHS)WA(&I3W^_ M"8/MH=YEV.F@8JZK%:93Z3O#2BF!0?[35S:3HT]1;"$41*7M*/Q]/!3\8.Z= M4_?6B99O;JE!1VKL1KQ6\NAV!45M*=(4@BQ;F3SXTW0J2J[ MFCN26 JW7798Y0J]E=%(\F4) 1!#91CNC"LSDRV0?P<*F.*+S. J^(FJO_CB MJ9D_UQ+ &.&,&$ZH' 9Y](GR+#9-;2^G3,YLX.P87Q)KD:-U2-\J Z3^WW\K M+UHV!SUB$9#RVBS6S&B@ML?VLJ.#ELR/+7NK8*%5&VH'C]5U9&QQEN]D=9F4 M\1];CF9649MQQ2=<+%46$V(]DO$56"F.WRZKU6)]2F]B*:[[5+DFK.D%UP4M MC]Z^$8?U-3WMQGA<6O8JK-.DRWHD4\=OUZS9-%X\M982V;"W>';=)W%9XY8[G(HM;KZ:"G'.J0Q&#.@+%\GL<4M; M].UMM-ULI+@;=?NEG,Y[:QVT/!K[A,)7PISS'96QY@V^UH8MC\:^6%3" M/M^I-DV-S:GY^8SUR1OB(DHJ%:,Z/G@+7T4_.9L/%RT*C5XTE MQ>PM5-DKS)E^]]1L,MUQPUY+6Q./S79L34-@,73^U&P.M_EHP"C!T!2G\^RV M.HT:1$)V:3:LW:/%>RU^9I+O,3Y7E-)\-HA>SN8>H M=F@#-%%_>J4H]?)*45H6VB%1ZW3##BX*E:=%#J^JW2@Z0M##O:"*5386K!K!=LLS->S,ULP=\Z_9E::\CY M3Y@&P'@%W@"B9.U#UKUEZ ?&/'Y&4NZPZG'?5[[IJSY$^\=,76NV?PQ87-R] M*+.J:[G>E^?5_,??PEY\ ?Z YL&?CGZ=O.1+XHV#M[;%@8 1W+[0AO@'ZTN= M3E-H">U!OHF5:^U\NU@#/_4'^4'R*59KE\5>*S^HB>W__?=TC]X/*[V"8@%M MU+#^0M."-(E#!*N9AZFOKFB!9ND;?J#-,'>.@0; @[$L-P+N'Z8$6%T!*ZT7 M8Q21P:!I8L")@C]07[!D5!R;=MPGF<#_XR?Z1*=G,LN!EA_?8RC:;S)#SW,^LI6X.2HSQSSLU*\F;$Y\7P7/',.U/59:,__3Z*" M+U-/4\QL!,3TS\KUD\7BBZ=90"\WV@_//,1%R8N?FRI38-)AH#T'H?A^H!\> M.+[VIL]UGL'@OOW]EUD("DU,&B>&^$S3:&;2.#,\Z!V:F33.#/F9R:&92>/, M(#1+Z\P -./0S%QP9GZS7/V7OO)];FW\P@]-^Z!!= 8__+]/Y*<_14C\,WMT MY)98;;$D\Y"*C1P5!)>:]X/0WL["0,IKDOZ6([GLTOX1"O)?_R)8_)_COR^@ M"4?D$+>O"=1K3?@S6$S==GG-45U;PP)EBWG:'/3+!_^JFK%)QXNQCZ-YYEZ@3Q'M?W[ /-- SMIG;S:5FWUMLP%SI9H8_C M6GZ9FP?6_/=W\Q5]^V5OWP-EV]M;=]Z9=?8&_>TWVLF:<'\C.X.^T,79QI0; M2=69[,1P/W)/ID2>)"MY/V<*+I9I4!P$#A<$!RX=0[LI<*#D;;NTC O5>2B) M[2>;H,W"S)+U#P4'3C6Z(F,Q:U/#[59_2RQ]D8+G_F.[$REAE/VY9=?G8,+"WH+?OI^ +[(#5\M:+ZP@:GE MZ;9999S*> KY R"'+Y\A&1ZEKA">7*68*7UCORD\N:2']C:>- UE08S:@Y64 M[92848.K4.4-Y X!3AG%92B*_DV&HW^_8B*X MW"B0G]_C#HF H M3>K<#1_;*%:HS2"U!/R"!?GI83/5A>_P,$<+,$\#_=PEQ?%)Z\]ID4M>53W8 M^>>=VEOASCCT^\45VF]P9W2VRJ)&,?%*,F;^L#J9*U%A&2'N#,2=\> '-!%W MQKU-##IMGM:90=P9:9T9Q)V1UIE!:);6F4'<&8@[(P69PQNODD'<&8@[ W%G M_%03[I,[XSGEMO+/K]8+Z=O?46H?&^O2Y"I3P->&&]G!J#<4\GU5ZTY\.@^0R!CD<@1$ G(VYXA_BW$<$5Q':;J319 MB21<.JLUU:C4T0\D&+D,37/W>3;BV>M171ON-"9[@2@(O$QJ[#Y'C1@PKE!) M=S!;P5Y9;JQI!WF5*@\(@"$F'(%!**34II?,AA-1SI6#(+7F)W 35 MA4,:NZ6K[QDWB QS#N_R+6:5$.,&.B*/&#=2AX47.M!Y=.;C;3QD*]J4Q*M5 MUM3JPGK9(VONVHCVA!M_4@6:R3A!O*#T<(45H+'8Y'9!NI1=-+;1&>!:2> M46H,^&X_3E[R)0FKGO."6-/U_6]'"*XF MB^]F*CI82_'4!99+V#.H3$*P471M,&$QL)- \X"* %$$,77O0 M+OB,#5[TT],")>FEOP*6"WE-P,^6IH-^P-:^9B6L(*";\10\55-##^@I!N0) MQ@"$/3<\.WF5G["P@$X"M0==TT#X,(.C+#SWPDAJ,: M23/X$O@! &_7"Y+>>T ?P'JPYRV!5Y/M>Q[LXQ0;CN4;K0D4#&:Y!QH7^-'* M<^<:Z)0+13K7-#^3<+=$1K# OMUQ"I^OS3+)1*S -[8&Y(^Q8NP_WAE>?T&8 M9' M#B57X^K;9EZR_=CL/(VM4HYX#=O,;\#V&_UI:T$%: VTR&_XS>[QNZUXGLP: M_;$_>!J5!8-H9;<#ODK86?W35_+S,71CP'0M*&$#SLCV#R@.F+8[2J!88-W:7%,]G+L^L#^_ AYVC?/!Y&TD?8F<4X!LO^>%[V M_[TZ&/S-J?MA*7DQU,/KR<2)T[7L_MRQ,@C7LC\ETDMS5853?X]_ J0>\X^IJ81-%,6D1U$XRY:X MG==HRV.C>R%JJE]-WK4]MK8X$#""QR!T$<0_6%\J](6N)+0'F# $?_>OY\@= MB^C[W$*OXT=2M-=N'50LPX$)TL1!687 82%@/Y" 8X:5' C@+1KMNU"$P$* M@H$V8 W=/QP^J@^;8KWOW^U8BO,9RR??SJ\\P\*(5^^&:]RSHV,IP,GR7W08 MNGO[E?1U1Z&S^;U_LW/#Q?TXY,KX26H]2;.AN1X^1>M!EC?6._T-EX:6B8,M M G(U-KE MW_!D^G NO@M]!GH/L+H#M,F=)3/RW9/!7W@RTR?)(1:XIDC%>.ZT6W.GMW* M)\-D6!P_]F4.:N #KT7#8@!@6> %9S#%LC#WP$ (_&(,J**I!9G$0P%0JNBZ M!SSN #JMP*G^0&_T2E/W6S[HSV9N".D73[J@O8HXX1=ZZ4E0>KAJD-QD/ ^C M3U_!JORF"YJ!!(^_D'7)V(" )9'TLZTP,T_>V1T<)W=1RXQ[G6CKGLRNO)> M57S26-2]9M',#L>+AM2?,^XZ_U+ Y._(%PZC Q7OI 545HUAKM,T1E*V)I8W MD>9-5BZP )K^S)WPYE? 9T\$D\&TK6J%/EB?H4(GG[U$3/!; _P3*-O/V-56 M@GT8?P!=_ 3@)PM8[A\?*[C P.! 2B#*5@,7!-A GA88% R.@?F&X&=L#98. MX'P"DU45?X'-$F5Q9L]!R_>@];):AK^'ED6AH!#9">\+17.&3YCN@,0K?ZQE MI8,H?!"O0E\PGX@"6'&B?B"TR,#(T M,#$S,7@Q,&LP,#$N:G!GG9575-/;ML;_ 0*$%EJ H(";CK1-DR)%@W1!$.E( M%!"D9M,D($T4*5*D14&0(DV*H$CO12(@8 @:.@EL*5),0"#2=[V\@X)#[H6BP\(?/HI[')^0F)21F96->?8\ M)[?X54EI67G%Z\IW]>\;&IN:6UI[^_H_#& _#@Z-XR>^?"5,3DV3%I?^_K:\ MLKKVG;*]\W-W;Y_ZZ^ W%PB@!_U;_R,7URD7'0,#/0/3;RX07>CO!BX&\!]* MC-R7K9AN!_"(*C]@YD6D%[WM@8BI7"?#7 -Q+'SBJB0)RF^T?Y+][\!B_U]D M_P'[+]BY #S@V+TZ2!GYG8:YL=[3O-2'GU1.Z)ST'-Y?L?83E MD[:^7LQRK>%5ZKU:PO5Q$$T0*W2STAS(P%0/U1B89XO:-92AO'ZGYH'W;WI#.[OPHH3UN4*WW* M(6;[8V.5RV.])4L6)P2[7E;AWHQY_AVT*'/?VX+Y"/-B"16G[:2XATP].A-2 MMM[8)9X^Z"^N5+!W1E8TS?_E.7JDLT\LDS.WM_PJ]7Z\\RFB-N[3 M -:C*YUP:@^Q=(<>]I;"GEU7<&V"-QB=4X=K"A(V099!>L=+R)MXZ :K3\7@ M8;$R)>U+U5DA_GB<90U4VBQ71&%X.#CBF_00^X#)[!Z*Y4B=@DQ0O3B<8HUM M=T2IJ[7!C(OO'FCOB^[NVEDU\" M^[6!9.P&#:B*0,0ZY3O9"48^DG97>N;S^H40P+"!?'-MO$Z"RAZ]6,!) WIE MB9$R6[7NYYQO6O17RQ;L9@ZG91L5KN,NJ^VB30*;9!1LEK?&#*W\9,6J:4#L M#;3K<7LH1;8_B-MW?!1O(<<(*_,21C =5KXZ.11N.-!S"2%#B8V99'Y21WS< M^_)#_2JU#[L["E_;6B)03U/[8H"-RE<-X?)A JU#'5XWG(3S6:*&W ML/DB+*S[29O]$FU MT.^.-=@_IYPZ^J W"_.B=/0$CTZ.BU79[8A=R>U"B]VC(;()15_+@C)?3&1& MK-& -&ELT9NPP9T!I5]Y#64DCT[/U6Q8/WIXX'I!G+JN'/EX7'*=8<+/_6Y_ MPNJ0 !W4]&X3MET?6+".J"Y>==^R,=M\+) MCI$LT7'-:5),8&? 7VA17<32F5;*&)PLLO>"@DV-$D9W#;3.MMJ^0I5^:HW0 M4GO\0ES90'-R6#4S+%E0.>TC"_.Y'0=\/[X*8?^\*P")1/")L@?)-QQ!*[4O MDSJD/N1>/7!I*IOV/O!=XIY&(NJOT ";6P;HD;$-:W+39L%=?/#,)D-F@:)% M1X" [L?#[@,.V8?4'^5G\8=G+N?0<3-^QF/-#58VEQ$2BH8OG'9D&=",YT%%SQ-1UFY:XQX14G\*B^"+IR@ J M 56$#KU*'DFH'_>5_[E^*U1@\&2K:6BHS*&.RYJU\IM&W]W0)1C (##1(<*6^O4HP'IT/ZN/?86&H S1YX_P:HW M::$>G,B[3%V5W]HL34*7N'/0R[?]^5''2. -Y,9?E?@9# U(S%M>LI)=<]M( MDOU[SFW)Z .[/C$TJ?UVF7>K1>X!;UNNF[LXYDZOAYKUMO29G>;'4F6,*HX+ MT&CO?.M^D?JH!XLS,Q>](IPJ9L?*$KZ87MHQ$/OC>84F:TQ)A8Z3D R6!W*[ ML^$]R/7ON-.7PM2?EE3 UG472D]UV8)'^)"N<8L:A81R8$0/&4KJ MTC'& W22L(1,35OME=R#JV>3UNM-U">FE9=;EFD GQJKO.L*@NSSW6IJI&JN M:A:6;7NE*2'L4?(*.,?*T$A[MY;CN%%7H.99KQ3!O]WN]?=G6GY#JK8'#?T7 M[QDC]# P7LRW:];=VG9?\&M\ZM9A]5-.YHHB[1DPCZ5R\7NO+,?E0BQC#P;F MR9*FK D8\Y;UY(=)RW&2E:8E#1TUJ\G?S%[D'E]+B?:H3=8*3>ER6^"DWHNT MF&KH8NM1>X09^7/'O.769UV5C#:G6[H5!O?Y-^X'L9U^&]_B)%+^-K^^'BY+ M9R?N)M;H0SA'CGKH)VO&$5_6)Z8P3ID:*$E>@=.7><\U9GN5A]7>\?3SDGNX M?+?XQESJBSKE<-SU#(S$(M_7ALY02=4\CY+Y(>RG\."7\(:)]DA4,9I@3KZ7 M4RF7Z_MTW5BH^]=#<^AHC.(H29]O'PO[C+8@]$;7_^@^0R(O6;VG*#]YZA^B M^O)BS+[R;4>'>V>!2EX&(L _FS<8Q75W.M/[^I$^V:*E8EUE=E#,K-!PQ$LT MLR?Y2A^JDY2W8WZ3/CY#")CK;+\6R.?/0^ M\U-AG:69GX&K$[@^%1Q 7#,G2;%NJ]^/6/"/5],8PPPZ[O^*2"OH\M9!F5#4 MNT<4K'\S_.)!+AHA]TB(2DXC2="A6H3 M6?J=<]Z!!GA40M+K2@KC[)-W0=F/P_\*6^QL;"$/I(25"BDL&;\MN"HE.63F M?A;GVK#$++AS!W5C-6M+:J.] M?D"]%@3E3H1O3LY?#KD?Z%LX ;'F<0;+<=;. \28^>:-()?\,)(YCY4?P?%" M0> ,8MG'?I;(!OJX*IM"X>]=;?>BR/9-[Q6Y>7FYD88S(WW=#-3YFUP<4H0F MV:H#JAKYQ3$]&BPJ:Q86SNFKM=%ZVQ,S&0'9B_N>!A31/5;%^'GQC,6[1/UR M9X4U >G!E)BS^VK;R(W,ZDE]8G3RO4"DD]$]'.0*]'R\S)[GF=@5C3%X[?LM MWYH?;MM;MU(7M5?<*P0\"8P5M7'!5YIW"(;XKWZE$3T^PAO"KS1&V0-',[/R M:EOK5JZ]=":L1D3"-ENC!A9@V>6)3I_$P-V:HF>A6"81TQT:\'#:8+3V\!S: MTQ9OW))F_#7$H'7;8H?QUP/;6UJ@]R$;W3]K/]N23YZ)*[)Z83S@S(KP)D2U M$<)0\X/>-9SJIB3<]2U^T[FA$5IY_UNB@WXH)G'-Z@VF^&7X<'7]2 +R4]R1$:7R!ZG?T?Q(':>O_7:^CE%JVYB;D3YKO4G >@*^)&W?? 3UDB$#[7:;[$S'V$6_+1R6#3UP7.V M]%VUR:QG"FVHY1 )'84QVM0_ %!+ P04 " /@HM8MYWJ6!?Y +) $ M%P &%G>"TR,#(T,#$S,7@Q,&LP,#(N:G!G[+MG4)-?&#T8BG0(O4-$0%2: M])Z BH@(J @H"%$1Z2!("1 (@O0F(""@1*4+B$ J:%7Z3U(20(B31*%\ HA M++__;)F=V9W9W9F=_;)/WOOIO4F>Y]YSGW/.AWLR=[("XKYYW?0ZB(X>!*([ M_8!.%D!700ST]/\]I\%X^IQA.7.&D?$,&S,S$PL'&P<'.QL[.R<7+S.@8>NI-N$.0TSS-T_R- _W/0T9_FR,3,PLK&?CJACAM$ M3\? 0,_(\%_6IV_#3M^#&'G.\$JI&#'QW7G,?,Z77_5EVD<6Z2O5'0)WQTDR M:D_\(EG9!(6$141ES\M=N'A)74-32UM']^HUX^LF-TQO6MVSMK&]_\#.Z:GS M,Q=7-_<7_@&!08C@D*A7T3&Q/PQ.(JVL_UW]M;)+__-W;IQP _P[_JXL. MQ$#WO\3_85T\IW71,S(R,#+_5Q<=?=!_$W@8STBI,/$:W6%^[,MW3O4E"_^5 MM(_5':S2:G=) D_\QMD$9=3QLN3_2OL?E?U?*RSR_U%E_VMA_UM=.! ' ]WI MYC'P@&"@8ZM/"1= ___X/Q]5\5@W2YPRP27Q!.1F+DT)!51"'^./OECAQQR#Q]=0OR5FER,BM A$$FK!;^#BY6EX-Z"@$N>,*$J59.(2<@SA:' MHF0EXOWZ!M7*-T<"S^=$B(-6*86"[=H]H!"FZ ^T&1B(=AFXV;O5W467IW0JN 3YMT*IA44'V/SD8C".2D0OYI6SB9[]6?';3'W=Z'@4!K(M0,"R>$@: MD+@#B.4NT\B%GRZ MG)7L)H 7D;T59IC1I8E;)BBDUM> ,,TW6 M;18KC!/PA'^N%[:2W!V"J#L![05_ 'L##07A$\OTX2![ZA,()@\1<\%+47G9 M:,I?VVO&.._QG^FN^C]:*9I)$98".&3P<8V^6V5X'XIU'\5\ P<^7<9X+9MZ M30_7"(Q?<)ZS:Y?WOP>1+]^1]F%=8$ 6WBF!ZI3DFZG;>=%+.QNS95G7FF?: M-O/F0;/^S1Y?\1MXOQO"SPUW'>^0BQ=ZL0(G(!].]BX((\:'(*:]LHS>7](!&L@NE'VA=,8=18GQ>+4%(1)EZLP!G M+WUOL4=_9K\C^GM-1X@/=U_IFY!M*>XGH,A(P*=[6=A_FF38Z$..-!#,E-S3^1'AXTURJ?XY&GJA%WA#+THU MYS+7YR3(O=5ON-W-,-ZE7 <*1#.T&2"M@!=''K^6F9!&9(LNHDNL1JC0MS"; MB1GM50Q*\8?WGZ$SEZS2&E_:,D>U;\&>6>+D^YK6>TY N&).'^MFLN;[E<:D M7*7TS8AK E^P@UEDO[SI/8Q?%LZ[ MEO#[MZ9.BE">B/]SKB5$@/S(=2VLDSG\_AC,%;9PR@.TU[FT.C=DAIV;CU22 MPXV:Q33)%5:1C;$Q9C$2C"C4B\4UW)QN,2NB3>I"(O4=,P85:)*:>;R1?,=V MZNFJ:2WD3/!LQKN7^V^//[9)4]F/7P>@):A>I.EB-+&2WZ#)[L$/8QG=Q/1/ MK&I\7\U[VAZ_OMY[EB,!*+ZA/+/ =&%2U0!H+C&[/BC\P?%B<$& MMN'!2[UCU=ZL"G'S,GQ+=6T\2 .@Z,@4U:%)#?WX4,(>GC!J>V3["FZEX.WC M]5''=5*_9O7RG70M[SN3_'1;*/86OB/'\#$8EP+M B19$WJF<1I_%)Z&O['G MGXZ[<>/[.3>UMUU)D@(C$ZSK9_UA#"<@3Y0P]>YQ+DT+!^0+D$Y />C87)O" M;"N[L]9_"QK>]*E671)Q5&59%6<8FS'97COM8Y1"Q*_ =9W*M_:22 MNCT8XGK8.I+M\9RMMF/U(92DE_KN@O>1.2@ 1;J%7LCHA@M#[$C,W97/'$QZ M\JTV=34+ A/%EJ[0_946!O&^_7%91PS;Y#LD[ 0FW.),3.]%\WBW.50\] M)C?R%;Y]K0V--GS\\L[-#[B""-.M860HOBI"=#0.]F@T!BM"@S#5 M6FB V.^*F6=N0L>?WM5/3@=]X3*L0IX"6GVSQ@/+$B[C;G6I<#9?/AT_KD0;(].^P^CWJT0K/R]OWAAP*;$S?5_SH__YRVJJ])G4FMQ_ M!5TH]M-U]1%%:D81C(!YET)$PN_9HYNS'>P%UV>*;BREZ<\/5M_5QAEJBS7/ MEJ(ZS-LX/99%L,_$%E"<#TS+/'0%"YCJ!-Z<8)FP%)B*?:O3Y6G:R145\2'T-O.2H^CDKC^:R\U& M-^L#KJW RXU?2S?JNK36W<^@/YF,.S^,/)\2-?Z1CT+#I^S6HTZ)"\R%8+\% M=, ZP>"%7[NAY>X4')R2&%QA^2;_9O*V!6@EB=Y2NVH\%T 3UG<,2+,K)3L> MOH7(>X!O(2)D\._-OPIM4J-/E(J;Q<,WZJ^-"$G%,JZ\3(O*!>V>@!Y7VMXF M:T76>06B4DY I!9/Y?/U>,FZC)9G,_EZ2A/9W43&@6=FC$$0MX:!]:)2= M^I!TOC$H;*52E*!-O8-WB!LW9=K=7]GYP<1JT['RQD#+:?0$M))KHP(D$K7Z ML!# TC+C%@#_XN[;4U!PY4E*,,_[]\2[3,S#)Z!4N@6! W3\7J(BJBLW/Z]T MP23X<9"7C-K"H&J-],4S-P[XZ4@-O7#<5C<< ^O&QL#982ZC/*8EBUNW32JW M:-*8:Z\W9IZZ#.J]I(N0J3>Q$I:X(0*O6^^&Q1_:[H229O$FT3251:3>>( E M1X_&4M4+'\9!%[Z'9;F&1T;/>$KQ$46GAP *2%\9;]$A!]G43CZ)O6O);UJD M.&.FB^O^6!#':P%2ZILBOUMQ>GDZ,_8J"8<"+H"[^(%O]Q",@#4,8];:F116 MO.NCN6IZ4'W@RO +$@UC@UZ\3[TZ]J4.O,"[T"?(_9!5CK2G:_Y)XP_HA>3J MMV>0V^";: H5Z"$N@A\ ;B0LWJ+^$)+2\KB,6PEO_2QFGOE[]V5I;PO+H[J? M)R!&#*\):"PP7^Q[9*J MP !YF6C;:WXA?-(%'YB#1_,\G+\_OW3?;D0F<>3UI8]!21$?#7=ML,[#+@3P M-ODHW"-?""AZ_.G7 99_)>R&,?Z?^%S85T%D7TLZNT#&V8PA\$-;^2,#6C\* MC'5/3<36<38D[OW+LZTE*Z[J.I;[!"GX/-E57]8V?I3:S\Q5 7U#MX.N7N[; MC;]X=!]H7FE(U ]S)OL83^[58QO(!IE-UYT"7&FV\YDBO +2BI%,8+NCC!Z: M7 W)-CH@#'4G+$O7N2+[1<,12U'JGZI19>!\5>(.E 5YEQRTO4^$@=U$F5.V M'9:Z[C?4W9";^7BKV@3)(,5ZU+.5R7F,.QHE"D6N 8FDDIXEH4C+2V%PLV^U MR://$/V0LE-X[G;LH"A9QXU[7O8$2"Q-#H<4)\$79.O']A8,%'W.-_&\4WE3 M_5 )L9AN"OX300=M)9GTH2';X3Q(ZQH 6V#RN )X-KA[!.FQ>U4VY\I:0\>>7]Q&5/>O;DEY>_ M:<]A0PWDLX\CL)[H&'2M7 >G/;ZO1_'F;@=-?BP@L3>4O14:F/ZH6Q-T3^\^ M]^!5I^I1C8PCI0W1F*(C2/@,#1;*NHV!"*'<'39\_*+M7+M?9#W>I'NM9")B M(Y$,"H*0S$X%$IJ@W+TKX &5!/((]JG< Z4;4;;C7Y2L^3^;R!NK4DM;N2:7 M6I;;X?7P'C0D?*E-9/(1.6P5Q1%P N*U]'I<).,;K&9WS5%_W7M;Q7Q^<:FE MF$!\"$@?G4.R 'WX5_?KM&?MQ^1>JSPLFGU7^MU$IFP(["^P(0KO7 /,CRS" M>W)UD@L:=?5MA73$19ZZR?IT"_7A#2&VX2-8$:0;X02T4$O$1M8EAQ...G&< M+9;%;NF76';B_1G+V%A7\@OW/R]I M-$+RT:F\\*/%9S2:HQMD/KD"/;5E?[ MWI^B-T;/.^(7FG6,]26G5VT@@OZ0>08:FQ89;@N\F[5CCFEQ*3$Y_[Y2HR*] M_2;&*S7-5'KM^\#YAE.PS*.XB%HU<1"S%3SK!,2 =47%HFMG=]:/ M;L*15\@RX>*8J2IDX@.9^EP?C9E !15>%6'&@)Y0[([841A5=1;F?.H?1+%= M**&>*G<;RD!QZB4<@N/NHOH1].R\@Z1%(YLDL_J8[ MI(%8L!*3[%^X6WHD66R!F;WL4.RZ9_=P*D7W5=/[#@YIA&1XO M4W"S275JHSOHWRCE;.WQ)YB[,OT"XG"+DC2%210SN+\P6@"-/=.'XU5-ZAKF MR@NB-UG4/BB'<=&4J!Y +4F:\K9E0C^XS(10Q0S$$,P%70EQ-?:&WT<]"YZQ MN$Y'C%@$SH:=MGF_$U"&5=NIC-D9I45DFM%8 [PD3H_9#@_CH.1%I(M_2LG' M,^]X#"5KCPS"9P27Y(_CSP'5!'F\XN_$HM'C2C6ZK,97W'[,@7H(AG+;X7J8 M>)OZQBFA6UB*49],MWB4&1.2X=8Q8:+74Z0H[+ ZF<=.8I>OTE/?D>O;/('D M(D0?/K4;)DD;T.7@K8\G0H3N+SZH60^QJQ6: ]'XCJ+R.\^/VATMT]C$5H; ML2B2Q4Y0E^@3EFWUO##5$6XFZ+W&5R[D7I0HZ"\:! @1A9*1?!\]_M(69IIN MX3+?V/HX*:4]'?5VN,HO\T/IQH@NN"ALD51K,NT/C@V'3.YC^4Y G6Z?.UP3 M?0E@V2='H0%_ ^4OBS#ZR]BN[7:9R]-8YTY 8*3VDD+H8X+38]:IVH J!DIR MU'>"YOQ![0%BKVH2'ADN0X(GT 00WB<@_.+$$G#!+M%+Z1[OR]7.6T8H).,[ M?FG%@=[@+4-)GR,S) 0H)]-39FT %/GS%CXS.?H-VFUR9\]UUW@AZ:O?SKF= M%2=AC3]RVP9>1]=H4S0VN/@/VGAN5J+SXXJP]#"I/6TEZ$3:=J#D(_^%;RKP M)M\9[$WDJ6$]1RD[ 3G6G(!^,;6)GDH&C>3E&AH&?)4@=BH@7G_ZP)',=]HG M^B +**)<\EY5=+YV V!+FNS,]GJDT;^WW]S4FG,_XHJ*""<&W?+MKFZZ;R,) M2XDX)79H^!1.K@.B\AUJAH9CX"/9"T\O&<7 \ M6J<6K,;W!Q2?Y;*_#6;S2_CNUQP,^B,L MF5D01F1!^< 6=O$CC:0_8LVCL2<@KGJ'92#FAJ3PTX 7ES[_IJO9%KCRCE=+ M_)$HZ!12WI5@XFX[C &H)10G'AEMPN;*2J_4MPDG7HM1\1&?^,S(E_TD\/?( MS1RAP#I:>[K??B4X]GF5JWJ-JZPJOT M0N+OI/6Z4U/>;C-^&LU%-+KY O2Z8& M,S]\T@)-7 MOI1H7)HD<"+U,7X4M'&HW+D0)SM90JIH M@'BDZ/?F04(O7P@\OTTW"9U>HBU 1%MTRJDFQZ^A%QSABMDQ7V[EMLP:/^A6 M:9C/J>'GO9EN!'(Y%P&S**OAE?;3C?!HIS(?A2"9@?>$';5.F@CPTN?S%NY- MOGE1KMM!6@Z-F58L1?RX@"8%K'=#1%J83^'';X?8 MHG'W#[G1%+]&WU&"S2C+7I\(O[U(NLJ1%@57#N\][4(-IWAU1\U']>5F#A=F MP;@?3\M%W9R9V'2H5BU]FDQ87*M167G?'*'#G' H1F/M(CM90#A;0DFA#T@C MV2LGH+@VOH9W:>4-BN_K]VN;ZH6\,!/I&#T(#:BJ;A-%7@"RE3M0@J[)1]=. M8>-,,+CI>YQ'%'.XQ'"<'?VP]YSI@X?KVZ<[#=T,/9C9)M9P(X@@^A]8!TL'T9"Z,T4 XH'&S2 M)R#[(ZQT\.CAE^:^I8V>$%B/I0#U\7$^5#%\Q)%Q&JJPC.C8/WZV$Y!LN$&V M"VN"J$*4SJ-?<.1ME$GX#.J!W!7T+/(QF!FVM1*T >N=1K;2W)&+XJ1=N;7X>S+_:-4 MKLT,#Q7[@1>>I=_',Y_8_KRKTOY%F?(;J"2+70..2/#V)3"0K=45!NNYW!*$ M>QMY\4E\0X1L0(9(^TYCR&P6;1F-F>TZ%2[,G9+,@#,IU0;=*WEQ6F-.XE%] M=;[&JT>I[_H3)P--14 7959L[8_" 89K0-K1L_#A?!ZR038E/[KL7U9V?:3; MN;].2JI:O8-#DZ5GQY@ER*.$T5[T/-M6)_1L_7'A'C9I;%,WU^XA(AASA%A5 MV9=A*7S].OBN7Z'@0Q=]?S3ISJFXFR6@VN')6([4*(W$9HE+ZS?-+8ZNWD^; M^%7QW0%RR?ZW$A?+BFT^]1Z@@\<"J&L&C\F^!P#SP!>69? M>\MM9J20E^/ /%+XKN:W2'__OB6N95^/LAX/<%!,J'E-?F@D MAX[4$W"&58*\PV>7ZW[6!9'@*_ 4FA B*TQPM"?\;,S2P7:'2 X;1)7Y!Q?; MU[-$Y@3<<27,'9* 98;.#V\07@>+E;IJX&Q/RP\Z:J2C:,Z+K M.!K6_>+H3=;8D+!+O$3NY:0'1K)AX(8ZT%. []ZT!I;)M2FF02!)MVZZ\,7# MON*;?Q;D:R*1]0$V\J,BMSU"7H- H$=<4QC0'6/^_U>&M8/5S9J9[?/54YX[ MN]O%#ND+#M=J3,[N.3\R@MC5&8,>G\JK-]Z "7]K$A M< Q5KQ (OYBR(3U1\:3>%EIX+HFF?I1Z!@C9[?Z*2 ECOI77?=EDM:O_V97ZZ=I!OPL"$/@]^&;QY&%-> M]$O4,>^SNV+3G\.1$>V21IV1IP&W1_Q,_\5OV?O?9H+$ZW/BL2*F+N>Q^&/Y MA^D#U"&;J8J";Y>U(*I"5AB2CO"O2^9Z'4U,:5_@'C:BDGG.%( MWQH9/J0;,L",IG+G/D5J(X7^W4E%,= Z M;%@QSCT$21'*^KHX]^/:F+F'_F-"NJ;P4V?I,S=DN!'G*L8-17(A,>HHC@W6 M(M=#\Y2,H@]2GIY>Z<+\DM^,Z:Z'DF\CX!U0"9)!Q4R;^)@Z%KQ@+I>GH.OP M+G! FBCV]ER$!4@$FGD*.H$A!^1%DCFE36,!S?Q+2'3N$=$J^];++U>Y8K_+ M-\.2 S3^'1P9AX^%Z '%&%&=:=#S1R6Z M]P_G8O-O=+<9?^-I6V<92N^Q56 *F=6'>?@((I:V.@0A7$@&G_+-<-EQ[_V+ MCV;VI9\V><[\97%.>';/[_E1]AIC1E32TPAPL?^.YJ1)=)9DM M7GJ/-2LJ1E:.1BH_QNZ"^8#+,'HN=1%]I MFM(OEY=^NN!=G$YT@]Z6O8(W?4),^ USV4VB708R")82B*#>)6X,*:L![Y%X M7U)/_@14U_/\?%R_!-R=VL+QU&6*#;0/X3K%*\E?2\7U]+A\[ FXF.\_Z27= M\."I@4,D76,*LUSN*-FR$WL&^'FHM\R+N&I$/K-])^XNT7KR;&,:-^^5F 9 M)5/MC?0PCU7+!3-"6\X7Y-T&DC^<&P-G_($0N@6])&TUC:_6.OQ(&)R^EL3^ M4CAGCB-UR23_4VM0]W*=P#::-5P8:&@_Y&Q(J-+W#3B36531D'_-=T#&HN]% MQ!Q;OQ$Q27*/;B,00M\<\,@_!2[DA^,+C6:_^X&!2R8M7D,L;]T-./6-9I=L) MB)XFB=A49.BR,Y]-\)+K"\.-^G0.D6CQ)/*GJ]GL]2\BN?A M9%[AHCNO2)5<-29%J/%UNEG_(%W@@/Z[?(^U*K;P'Z<*M!M&!X"M2-F1"G6M MH=U-:[\C9J+NNE;RVB-ROF_(7Q?N?,[U@,%K1$A;8!L+:E/:6N8[1[;((8QR MV0,N/8ZB4ZC:W1W/+\/3M5G)3TT2KGR^F?EXBLN5H;$%0.'#3+KK:>>:24MI M 01VSV!1S(R*P8_[PF+.\HV^&6,'E8=_3K5$BFT4Q0=X+^,]WI\OT>;LKWWV M'[A?XV=30Y^E)(#JAC(#P2N6C'.(E1]K&E+8 M$>DLTK?C^6\*W.:*H&L7^&M-,@ LBM-I] 03D).[:&J: MVQ.%A[)3Z1;\U;=[3M&OUUK^@R;JT29+AKQ2]-%WP%?C+;E]TO7>:^IAFI($ MGC#TG3M>?<3 $=$NSLT)DI0&K%>JA#=-2[=HX+& 82/^2PZ;=D^%>$LE0$%W M#2%V"TUC>PN+DN;GB99UWR8*3\V-D\*E,?7[O9VOO.135)*>5-FNG]K/70CR MYC<4+L]B^FR#I,"$ISKQJ5?=Q:>Y/W@KA3(%V^DR_4:CND!0;PP=9>H$Q(&4 M>(%_JZ^C]6I/!VG \*_:3;FXTTL:F='X1/ZK>$:_Q/!#+,DR-L#!Q6)ZUY]3 MZ:_-9(Q"U6\%8O".2>%=@1]H$J]\QUX5+K6[C9^L5.=$AG7P($QNU9/61A,4 MO#UW:?/R=O;$[RD!+/2WZ""7LB1_?EN.1C=,(+IZVP0F]_NI8*\BQ.=-/46H M!$.O#2Z_W$W]\RVS(/>W%S->R;)[/1.K-H18 P4=X1!R:_H#(/7*I,:1.DK% M:]],^[>3#8UDR\BP>Q?QHC-7+@J#?_SA5(Q(Q'EUSIK7F2%JM^I (E6PXQ*D M(J%*%"DVH^[#[/CC@?N!ZD*LO5ZUVPM?S_/7\UE<](VE>R6N2N;LO$M]'\Z% ML,(W=/DD.0K5DVC99+Z5U+@OWI*L>UA^TZ"@(N#-V[FZIE&%/^T37[3*I>6? M/S]%[N9[^Y6@KF34W6]3 ;!8FN!4 'NVJF50T*<%,X6*D%H]*86P@5(BP$.: M$+OH202"\='OR3Y!+HNY%\5=/[!EKOOLQ#4 V&K Z#L MFX[0F]9Q2F,1 MCPTWDD)LE&.HK/@JIOD?. 2J"V<3Z^&WL!YE7I.P*.OII%#Z0:5/?+8/55,- MN,'ZWLH0.;!@JYOO$*\7!\J@>91/ Y2PF /%]>/M:!JDMQ[F"6%81IH! MHW@OS;]X6#Q-#G Q'_^BQ%F<5@;-]*&49%J;+?X;^[)F[%3K*V=P@6%+F0. M&9%LWGGJ&WQRPW'&OY"JFU24KH^KWERX39>O.X% =30QO\K=QQB S<=S*58& MXY,[TA&C4IN[7SF'?_MY$.WAP%6:+*"%%^I,99D'HCHDF:?W%RU&NW4Y&@Y8 M2Z_-/&^IF1O2NS$1[<;V6^J?XZMG98@9C^7YQ"O [(HE_2;N?4PT4U[!#]>- M%Z&R/W*O91^@GN8-I-NXM(^^_9 1\S,".MY( LA=P)B%$13O9L5V;L.X=&84O56(7/,A/K0\VN:-MP*W+VL,CO& M((YT2X8RC;]:7MA4AHS"S^_7;DTI"=:+V&:KQ_]7%1 M923^B4)L\M%7HQY0&.Y738%TJ?_C&!L1QA#1 5)?% ;,.*>1&NMOH&58$Z1: M5Y_M)H%Q'K6Y%,%!TJ%4O0V_1%LP7_&):TJ-W*-;\4=W42C#9<-$F)#1IY8J MA2MW!#[?8'W]RGE(7.D^QW[E+F_X@B@\IDT<@! \#R5Z1KO0//,#/Y?FT=#- M04 ^.'!-Z!)^4?+RYIQB0_4P*/0$%$\5PN^*/2@JB<-(J/VGJ;ZZ9_G^^(2^ M_85E^/Y8BUX1PMX\U7+LT>.Q]^MKV&NW0=1R>7Q]+0'"@Y VG:): M%QCC%_U^\QCT9O+W^M3\7G-ZUC[T,F)N1?QE?MWD;2:7N!:5 @![,^/6+"9/ MPL?\=;E!?H%G-GH$IJ@J$JTF/94K#. X@/-W8+9AOC+?_6W M1QK$?7EQ&]!9D;"_-8E9V&4 O \L)C/3!R>(I@WI\M9.63Q2M\[*96 X"_CFFO'*C[GG>U6_E+)HRWW\,I:48'>! M =(%Y1K3%W"1/;56!EI&F+3O54PYI_ODN5XN8$@'W7> 2B)LE'E&"8RDD91< MZJ_QH<^5KZYL&DN?L7-HCI..9-UP.,-/M]Y'00#WNC-(HQW=^86__L-D$X25 M"B4U1&2M(=7PE9"N^)=3\G]N:\WL=^O/ A MS78?Q@2@[&?\C^%W3EGTV-Y2IQ;;A$DQW4FM\+NL\!^+/4D #9"57V%@HF[8 M^26I<20C$AGY\(+X572MTV/@E,WUV*V8LF)&+&_B#3"+\H[I/W?<\ S_G?\/AHUR4HO+1ZH!:?H@3M_TL[TK3B,A M.%LHV[*.&W4W!*0C]])0[)YM$@"C] &Q%%V1$:WG5P2OFFB18\;?2_8\\N' M+)STQ%6.-(6D'*)?F4C_J$ 1:9)2"-B28[OMBF-73D BP*-4.'O=9TI M\DFEEWQ-/^4/=YG292ABJ'2T-0A5Q[RC_"G\>YL8Z6=E!;>5S4RE.D%4I)"G M?>+"M[P#U^ZW1(6.D&IA$?W;S)@[<)6-$U #)(*J183PNRWID1W??[J??)?= MBR7QP??TA0$?_DC3R'+A6=6P?_07?@4SM8H1&G;,254KF;TYS$DM3F[%#]WO MQ%<^BA2IDD&DFMXT3+%1FY\[ SU-7:AZ6.,=>>%6_0&GF()?DP]+]_,>/U6Z M=1&1_2H)(.CH @#NS&=N&*<:X8_9>^V&A2_NM@S-W.>=5,HW6Q-C;EGK34FY1/;<\S>B$2;>>H M#D!F 4*ZVY%M; _,YFYSB+SC8:?1,]Q=M"/UKMK_/?,#EJ/64H82P/=(91'! MM8N?'"7\+5] 2!_=9!=&6_Y9W/%&Q BB-!JCGS=7_P5I/[R7B][N.2X@-1/0 M45B\[*FFQFO/_-Y'UQ]'P9[\S=?\0PE&MRRL$0/71D(X[B*5CC\J?1JGAKJ0 MG[HY\LZV,+\0UVW=$X+\XNM0N')?Z8GB7]"F[]?5&$8_]^576,_1J'#=,?VK M%;_R-1+^]'61Q"IO:"1/61FQ:*O^4^;M_\6Z-GWC% &91,OYKMZ[B%U[LEQ7 M5<(!!!P;=PV^8*/\Z6J9B7Y:KS1OI\-8EY0A'>SRBGC(-E+S.&=O.7I)EA13 M4.0AQ(=#A%YI'&_)ZX\:#I+Y6S'Q<.#"(RTA&QG&]: [2;9(J!S@T.++'#5[ M/[K%%)H?<'_;^GY6'8?0\&+RMP%Q%P-R0NL*5N241[E;E$N 1,-FK4/-CY \ M#[_'B):I ;'(IO)'Q$@3Z;2.#^ ,J#92'AZ9*QG]96Z+=G&RY2IS7)W!S=&> M?#'2W/2YR;NDW^E+O_MO.+JBH\_ XNGT3!RS*6?'D+<.L[M'A1&Q5C,!_2W& M8:XS3?6MA2<@9\O 379/WWXZ4U_JA'[SL_49+'Z63!NSFXWZG3L!!L\A MGDFXC ;(G^N?[$]Y,-#;7@JV=/30PA_LH$BA!'1R7J>C$'DXJZR*NN3P-<8U MB^@JVQ+_U#C%$V3Y>_X;X][/"+X.2*U0M']\BTDIT&P^C@PF2+RP05M]F]8P M$#W77Q6=PL@KPE;H^^G"OZ\WY!BT*\!DLW5SA;C2!FIQ'C]N#XY4U=Q O)2CFR@J563WD&AU;K[:T/SQNXS M?S]5_%KCN'O#B57L]UWZYHO>;*O1BS)3S$Y\&/!1Q^?/'M-EVF5Q/$>2Q?>EZ_4!)B3_"BS/0,K<'&$ MAZ%NV*"[G;AH]^/SOO(74TSNB \^9R_3UA&?;4':'Y>V"2$YFB9V6KP(_>J) M[RU@NC,LE27-:<01_L]'T\E9GSY6N^D:.S2D@T8C<-TE8W[2DSF4\; M_+/8_=6B[8'_HW;\&_+8&',\4O'XM7>X^#+"^^=6GQ60X #IQJ7&2X:V:CCE M;NR>56G24\@SXN@Y.+.NC=.=M?Q,52/#7NXK"V[1>&=:%JUZ)&4F=F4;:".V MW+CR+L[O3S%O.^)N+#VC;T:?#H]@W)7E)6>55"/=E![0=^:Z>_:C\ MYY]+,P)I[/6FWFG5#(/MY-OFK?Z+ MLPH?'FH6&5%5VY3/&0MG0SU!WAUK<3ZN74S?VT17G)7XNLZ./0U\7$/C1)R M>F8=A4DGH.2=?0/W1=F,_H21587.RV;_>(4[+0P9">>?A#YKFFO3 F^\.A:3;C.9="M'Y 9U8T7Z MRCV$BLTO4G7"\$.5BH\[\N73FW_<%%L[>U$8%[(N+; &X4 ]WDJE1PQ=F=* MB+KECD1]&,D6#4=[K0Q#>_?GF:2/C#?I_ZS@:SZ_RF36V#ETZ8,P;DF*D%+C M%.JJ?8L0-1L*&#>;F;!9*^BVR2%BNE>2N6E4T-TM0HF]-\*1=42T;C)=%D=,?0IR6XPX908,/S M35WORI+72@K*YW027/^P] \P\D0*I^S_S(5L3Q+#7'H<):9H%Y .Z+Y#GU@? MJ[N3_GGF]!*7E.O.GM-Q>9J&N]LI+E\[[A07Z+,+?=+J]M_DN57 MD-;SCK!/0" NU&-+N/!YI8+?D)1I2\MJ)-\E5@D5!\ON*MPNGKD3+-B#1PL" M2Z-FLQ"W4.O(T-2S6HMJZC>&6,ZNJPH0\]_0K=%DCV/V4=P;NE61L3UFS:A7 M=IFK#>F(.QB]8&^\FXQJ30_R^P.A[[*QOP; MD-B_#\/>_YPA(1LUI=^M7SN[95#83WW)ZUE!!7MY_O727P"Z*-4 I8KRO2N4-49I)L+ M.#9@;;'88<%88](AZ>F;!/Y@KF7"OW"KCE.R>U E"=217'K#YK\7#I%!)"4JCO\$*TWU'C 0+#%!O'7^C22!$N_#U5Y;/4-@65J/_G*H[CAF6ZVW* M?T^LE+?.AL?VIMOWJ4^X\T;*I=]7Y2$&/"G63WU#EZ]FY8JJ25]&P/IL(-SZ M\& BB@U!A[TX9CR",UPSD5W M>:;:%TY*10+-O2MBB'GK5>7D!#KGE=?!&XXO\/ %=CQSJBQ975*<7%E<]0*_ MI5.U^R2&M>/R-5BPPH.DX%_:_SXMZ4@6G!7!X[M^V +DK8+ M5)DEP2/F^2#/[SM:Z)\^(D=S\QC_D=_3ZS!&E,=[:6(KNJOUJMG,MGKOS)< M,?M%R3#=G:+\&U*JC#'/K*_--3ODU A+?/:3KYB >:9&Z1YT6Y,T8E,]E?1O M3(H]??GDK9%,.W'(+#W?#(K ?3'5$?[ ;$\;^01AH%XB;7DR.^,WU775T(Z3.97W%@P$? MZ*-O=(C,5Z%.5JV^TMRO5IED+0SD>TE ZAU2YB9"Z_:D_W'X-::1O_<://*L M=<1KI"\^3MI[;"A)1[:B**!$D%>F].WQ:($-1XF6&>F7&JX!:-8'6_%ZQL+Q M3U^-7#7L$3#J>/PG*FE=+P2[_>(CHN0*J21:WZ1\H!(!-IPL:A!E?U (\6QY M?5DK0]_8]CG7VAVGVQ4+-8@^R J$-WPB7!:H)(RR+2&P^%\-I,J>B-8L9; # M4U,*04J%Y^?JMI1?H\YZ[M0L5!%I0^[KV14&[#OL=E\B)7SP>6]WV@8(<I#"N*"8+.7&K]C&R_L&Y8'-P*L/=9^=8BX>7T^>&6 MK>"LEI6C]T6F][+#K=BW'WBR79J2E"P-U^M 82+&SY?%J6ZE2!U [S]K9,:^ M:7<]VV"MZ<='UZ%/O%H@(VGI*5M9(AC7AZ_J=( 9I_;1+M6/:80>2TH\M#O. M"K:[_S;:2;0WZ6&LW.K#KZ#TRZP?P,\^M33W0#"[G;M,5,V)EK!RQ& OA'6S M.;P#Q3:@TR0'4_"]7BE]N6,P>G!EE4,4W\9+FPD12JE+3<0-'\1A[I\V$!NB M)6UD9NSM5)=&KIE4YML_G5>&&MR_2KN)\-/M60NL8L$H]]%HM "&,_0^J20! M5:^HKFVW?CO! +JA]"G^NEEB4-S-K8CG=\3D7F;T^$,E@<655$'W<,G)/8=P M"9O=;E&WZ;U53((I8_V[\/VW2M(BCV"(>QEI29$7&!K_O[X8^+^[)"AR7.EO MR;]U F*J4M27+7GHWK#L69=.F&F_2NFM?V!==*3REI_OC,A=$^9BL,;VU&WF MG]-5'9;B0)054%UJ1S4@#R?'8%<")A66>W7?!,T>9,L'2F1&-BOHV/QS8HSD M;Q"KAAM3'P/2Y^0S$53$*B&92IFC0F,E/Z85:U0M:N!__SY!J#G.1$?:_D[S<> M^AZD:NS"ZV9C-7:"\/7QP?A%WJWN;!PX03W,SUSIE#B5I.J;367N1W&S>S&# MTAP7C4'(,J'.85LXJ6I'.M07SYX8>@(27M"BA+6N7J0D9NJ&?#;NT*]X]44M MHITXTQ+5N\S8)H6XVF=#.Y^P0$C*RNV+V2MG. &QX2@=<@U9[,_3C0(D)O@: M=*32J@?.F/[$7BG] )8]S@J'+%%5@8L??X5$UY%OA#*D8?. M9@E_NA+NG?!60G5NX(^77I^C,B!';B8RHDDE5!\BIUZWW7#E<4H1'E#,7TSS M?!3]4G4D5FJ\6?1P) $$-'=#&&G2P-].1ST@JASQ9%'_P1<@]N:T5PN?X@34 M?Q%&+^_F#)'*[$@;M3[S)O!+PJSA+-8-E6@77OV%JCQ-I<-[Z1E.J8?.DB&O MLT-B<6_DTN/Y4X^*1+RZ4T+HX+;CAI#W6%)!FUI)Q/46]0=]W?<+X?0]VJ@< M_X\N%+52AF_4XJN4E#[ZMCYRRGN"Y:MEQL>3-,%?62$S9?@C/7L/SG/_$BI[ M6HP%QBX[=\><73#57DSZV:J4 /K'"V$!MBBO9J#R0,Q6!ZZD*S',HP--2MP( M7#J+B/Y1FR&/2:K6.Y,D9#VRG9:?^=[+@UB5>(=ZGG0/S52G3(?J%"N?VQ1- MC=,048Q^WQ+X.4@V/GFHW_FL\J4/\N+K#?-O;C/W84E%&GO'6;OJ J261 *K M_K, GYJXJ9M#Q^4_6?^>@!Y&Z(SX.EH1=R/0W/I:Q.7X$-1JYM63FS6V^4^!7_^7ZA!+<8;5 MS@,Z%1">$]!C-)MRPID?D+GK#)#7RAS-U(ZC6NS0G[_Y:H[99'M#LMS+U7'U ML*OX$JI2:O38KYG#D(U FYD:=]& *=.O@V6:RRHRMS^@+POT(6F M!OYR?YG+(U]MVK93:)FSA;7T.,^/7:4J#$JC[T@IKW M1J*9Z_VSB<'XSC(&!G'R#HH-R@)D=V$EB\=W]_IB\>@H[ZH %/L/-?I413+7 MDSOO:"NM@TE[7-^JRB^R])_=4Z?[(]0)CIW]2IM>DAI[8R(7J<^N,5-=^%ES M+>:O%5V^,N46"GLVD,^V-GP"S1F C5NBK\[N'/5N4R(M5;D1%$7UNNI9?WNA M@S*DMFND;^1LWY>]A M(#G0\\OR-1_ N4IM&E1G()FBS FXX 4;24:G6XWQXIBJR($3477534'3IS4POJ\U]:_V\ M2>GRZ]*/#,]>QEF ^F".IQMU$2J''&7V_GZ=52 'PO9O;^Q-W0>0GZ MCLM_UA*NX2SLUSI)+_J6_P,Q39ADVU/%A=0B01N^ +:V9,9<< K)[V?_]7!PIB_O[_(3T?.:OV$O'YM_8,[M,_EQ^#,B.R>W2Q%.;H.N5(H7Q.6OMXGF4CF:G$ MH*:+K\(]4H]'DI(IXSP@TPL"O>]+.-0\[:\H/+8+(K[)0Q4>]Z%*ER/"6N2T MXO86CHY>Y]_FP^EV^8K)\SH%/J<[*Q[58QW;A>6N6XZD20+\RTS[$O)W)[TK MI=$]Z0.>ZHATD:ZZ52495?6* JE ABP=.?'CZ5/Z22M#"LZL P9'IF[K77 M3+13O\VN93V_?& ?Y6A,=IRT M@RJ3N7+(>BDC3BB7+8K,@"O'31K:@$$^'ET+?\3..EZ''*WJV M4DXD,8+!;.NC49141"1 M7A2B H)4"TU:?A:ZTGN+!>E%>H"0($AO"@)*B_1.!"E2@W0$I/>:T)LDE!!( MN]GGCG''N/O<<>_WG>_LL\^]=__Q_)$YUEQKKG?.];[/,^?[Y@X4JWCVR^M! MTG=DB\A79GER+DFYB/!]22K!V_76B#;9@*A67U=;$[/7)W"3(7VZO"2A M$15.2*<*$$S(ADKX8*Y9(IG,3A[C+U;\Z6OW.MOSDSOL+]D5OJJWSLD3%#J2 M*B$[F^0VEMHZN4"/L,3)QB"G'";\])YX^5SFW%Y[_Z'TJ;"@VXM?OP1[^H*6 M3UEHME#%BK7Q2PS#;FX!660DZ)8YBV9D(SQDDIQ=;=R+S=C(^RKNGVCQ5+\'( M;!W2]/XCA*U4DMM;0/+N19KD(W,<^+4QSUZCL&F#(YV7$\Y90T%C3K-.[ M>&7FCH=M,K6U(]T<&6[P&Z7[(L13B/-!?ZD@+T<3"#2,[_+R"/C.-5:T9" M)7"W$>A,D-IX36.,G'8@\]4VN\IZ0:_K)3R:)CQ\SFC$%!6 3NV2NBC5D[OC9T+E<(LE \\8^7_G"B>1T2X8M._++A"5?;^,H<06+# M,F+H.X*2)LSUR#Y8]3GIXE-(P MI'M$<:@1 9FWV2 <0Q(#OL/00H\BBL["YGF1ZMNTN+D/96(*%[]$=[X_MP<@ MS8L=&M"XPW?\:X(B3E0W9H$>)QS?!*0"+@:E!I/8E83/.!/DE1J.)DI0N9:T1;4<+V_A'(1,'2I(/!Z^\OTNZ6$KC4?>6B%XO2R#1 MG9*2A75U#;%/)?_D_;"]<'$J>.2!['W-KL!)7:N]"/B*+0Y,#FJG O*&357_ M20?[_SQ<_WL+_,LD_Z\WB1&7Z01>LP$#^0HVORYU4)2QK"-IZ*O]8\33]^FA MZ3TX3J"] >:W=4>,&?V>"Y3_8@YJ5YW<'V"7[ <7?GG\B%0%USJ!FG*L0.3Z M3+D8\3%K<&^W0:T4\]@2)*_.0H!4\]2AA5A_0I22?WF&N>.]35Q6W*V#DTK* M)^:SA$;SAV.D)WA;90-6LX36%[":-7BY\3V%-U,,XX%R'#H@Z PI/F&GYV]E M@>KK_925@//XFL+-J(8_^(4I^*CYX_4#F76*'.&[*].'T$<-;-8/V_NOHNEK MU6\CITB\P]FNQTGSX%\!J4%?*5:4FOPBTKTA=^^)ZNAA5^[][ZK'/T^S:M;M MM&,.E(2T(!##]GG'O7K=84TA[KJ:HSI8H1K?JEE 9;*F5C["-O?8;5 6:]H1 M]&K6JC9D?TM[VSF*4]8\'I.7<9;9Z=AB"2J!C1]LGXE>F+.N(55F=!0H1Q>. MQ6:D[97"+O1YE=6=4? ?FTU*QF349YA:NQT'Y/NY?^'Y+7 ILB+_O86EJ3-X MA5U?%?8!2OB?+.XYTPY]2\A"7%!A(Z1W53GN;Y7FFM<,3J'E[[.T\NS<]U<. M@U(!6#"^C)"/60Q;D,'YUF QHQT>CEVKU:^7TH^:N4:$VCOQAOS/&L.'VOX* MX_'O 4D$L>!"VRD".-UVW:N;,-8Q5VDDR]Q,E;G5XJS0P(^D;XER)B:&0RO\ M-=B]G5&LU+)]>U&+(&3V$38^!@UFM9H%.YK ^*,/7,O)5,!L_DO(+V/]6W'< M@I#?1ZH/9_X"\--&E(K/P+VA CK@' 0NC'M8->K*=H-D&%=D?P/?P;QE^??0 MSZN2T0;&,Y[W$I[%.\<1>(ANSE3 51(=DO0(Q\Y/%]K6H!/F43Z83X!W,/E5 M6(H[60MDS7TUZQ/-*A^+1A(?D%@("/3B!&BXU1%P:P4W(:?,;:PHL@H1+ MO'JN=316(I[2QC%]-O0=M]T9M8?",NT$2[P0X=UR7Y(K9N\*P1#=K^ >(M5T M0TKIP:V&;4-=8$J=IRJOFH!JJ[OXR@HN/IAN&F6?,(/J!+&2X'F0UUT+5T=) M#X2CE!24#+]J%X)ENM/MS-5ZZT1W/]$_">OINZ/8[;\]NJZ)J$ND3S9*[ M&'\*J"UG8'\]8C\3A5X\X5$RI0+ ;ZF 36GC85/AI;YSHSY(]M;$P?LQ/?'$ MJ#33M1DIS*OG/I_^855E_R%H]+.S:@!\;G^KT>5SL%![>AHKU(U]ZH<8^5%I M-B?+P#_*87+7>F6$-% \7&R^/QKCWFNUD-.TM;Y\V?0^MW?0[6W]U$H!A].E ML_!D4SGXU1HJX.CMH[R.A9\Z(-;GT%A"GV3Z2JL:) H^^N.A%.G2#"AJ2[R0 MA2/@C_3D<1HX?#V_L>RU^$_U8ODR:^VN4\XD1/56RE9[B8"[>Z^GP M1);LW,'VC-D,W3N(T0%IS8]2V F>[>=F9$:9,3\\ITD7Z#?UOO,+=5$!C2^R M5?U*%5&D"UPDVXB=^Z>@CK)U"LG=2>#V!*27A=")!P60KEDU4[4_H)5>DU!R;^L<4T&KQ_ M?:QEU0^W_&E N<*_UY0.#ZE2&B+8=UM,DN#.CB]Y*(R^/X''/<#?>34$*8>] M-2?>Y/%91'-H+$7X=C-_](@2UZ??6I :A?T] \]4="#L7-,B>W*Q!2.Q6(H@ M?*^0)(-=RPQI2#0M^C3CMF5( MJZ25$/#X:G*@T\R-Z?'YKH&]\3B0G^C#^;9,?JD\M\,IKY^QQG?M1- M7>RNW[:60"4TF6(BQQP:%+HB0M_.5022NL^6S)&8/B]2E@UBS3FI@)1H:"OH M"E, +";OT==-7[QL:^1+J[,!27.(8F08>BXU!B?5Z)5$!K4B"(/3H MV2B7ON>=_>[JH''"U9GIGZ^O1L]VQP,=B M:>XC8N"6OO[#NX3+:G>\'JOL^>6 90,D!N9D]:7K6//N(4T_!I_]X>J%60VK M+IC5"'ENLH%E."LP> *)CF%(=LE3#O8) :C:AP%^6"#C/;\TQN@,]:_X]"9 M4NVX<]^^QS.;=IF1S0YLF"?D8QY2 7X%W[P1,YGYQD@1I"\(?^"RN]+Z4N5A MH+FOA?K>/"G^DK<[+V2,K<@:_FH*1*H$)W\.<+U.!2P^#1++'FKA= B0G82H M+-ZE*"(^PQ>5Q;[E-'Z#"J7J%57*Y^$X4%FE:W!!\OBJ[6M3Z0X=E=^9V?S# MHQ1&8H?QQ6RC\WIW 1MW''):1E_W_$,EM%@( 8?C/48#?U(!'(1NG1&=NL#< MJ>8QDQL?! 4FK^_RZ3QLE3FPWYDD/B.](&1CD=TV@MJZ]"3MYN^)2QM#$+M# MR[YU_S_%KDINB^*!9QL4K_9__KW6=Y6Y6@3Y$2I -"40VU0D"-EH9#0O./R( MD0JX +&&ZDH,OC^W>=D\%C6UQMJ8G JX^@@03L\MTP\1PZ_A%M[9CY O$@.\"VEIG=49>R71"^LQO@A]% M39>#"IB< YT^Y_ V_OL&H_]B/L%'<\OU4E=).L/2K,-1G;MMN%7+#U,JNT.F MTC,1L20(H#J"R/85E"H#VR"[_[-#3O'NDW_ S9.1I^#9+:=9\; MJEPHDUDI3S2:ZN&O5V+^.N!"@*/5DO/ELPBUQ7YCU53 6^";/<):H]FRAIZ@ M$PO]&:,7#$NG*?!,Y_CR(PO='4._HLGC$F4N6\QCX-4N[D MFC\E&9O"(ZDRB;3I*YFO$Y>[BOBR0DF>-S>S=*S=/E_&,MO6S"H#,(X6V_3L M3Y#L'3W-%.)17FU"E&7.$@=!+''(:'AS\J1;S+ +S4T&%E[]+YB',WU07>Q$ MS3+S&6<+4 3TB5R83U^IK[:RS<4)M=HD@J7S6_57RDQ04^PUO#YA?*F#$+.L M(:4DA%Z,G(GEFI',J,7JNCLJUAPFUI#6?PFN>^R'9%\[YR^0'T14!4"=B8J4 MWD56I9O8Q6Y^.D)X%GT@D-/Q6'_+YO:0Y%Y%30RQOOU.&KI"0/7&!<$SK8-]:K>&YU< M_;8]B)P]U*/OI0*^PW?JNLU#3+*F0VUU2+:YA/=S@(HE)5Q7@";L\^G6D M!L4^.WN29;#P5#U=K&=N5I7T3)/L7/;/"B>M.-,X:2K@8OLUZ^]*54$]KWGL MCO$<$>ZXA$]]P#+16.>(>@B(58ZHE>+DF?<)JB T%74 MQPV#/IS/UY+1@CGPQ_DQKM2)4^AMYR_+(3?'\UZ<]^_%40&1) ,+T)7-"]R: MW3.%/'0XD-1!X31)K&E"F,M&<-RN,:DX_/;R9M)0T'F(>[28'?\?];!D9W)] MX">:%KSC+$7T@?X>W)D:FOP;LPD<(:8LREI,P"3-N^_4#I>_&:]( )1\0&#@ M4EW?4]NSI'#U\Z4+<-LI.=(W'9Z(@F':_ ';FNDTL/C,[,<"W[Y'SZL;Y*Z! M#/QEE*G?7JE*#1ICNG@&H0VG4>"]N__C,:.D(:OT3743-?]@[E?E3D)OJ\ !4EN/<]G32QR MFA2[X+7"[8.,/+>^-Z=VR&EW#3Q\P _?SFX%Z:>A4YE1I7@_A;/;I(X2B<+/V$*^?V[$Y573DR7D4L>VM?4I%*DON M$(8#TKXX MZ<2>2K5<\3]_ 0*3;!R7%V>D6EO.?6MTK"$J#CR6G^I^XT1Q;EP.4_0*UO6R M4>?:02XO\O?7\8,($5ZB=1+.#KLWP"^NC(%;30H:B0P$M8-GU;4C-=KSLAA9 MNZQ]'^+3).S=>_7&?ZU_[1VT$2M)X9+(EZ[DF$.U9;8WUJH#GAA->[8"W3@;_]W??K MOV6,H9[C+B"6%0M^?/\ 2G'Y=(DK]^;)*4MGD)#5=-FWI Z%SW)_6E*$=^NW/3T@C:1(^%@$)N- M*P81.YVKZ-Z+J^()ME7/6AC65:?HF8>:M(ROWH7X MJ:6M'+(]0Q%%* 5-EV$C0"9O1WJ\>T0-@LTJ-/CXT>O'0:G"H,B*D%'\)\+' MBIQN-/A]JK,;;*6J7206IF@,MS@TO>*18G\-L_6$_OEA7+ZB_R]?;G=D!$5P*#$=[NR M^&?)7&N5HT/^AQXZP8[8RP'Q7@@G+"(.P0>[YQC GB8<+5VNV&YRVL',K1U4 MX!>3>_@Q.K1GY:YOU4H,)A?+R.;E3U*Y*$TTIO$2Q&BBZ[_( 0; ,KO4.Y;S' 7F[W@EF/+*^?V^\39O[-&Z#?EN7"&230LOW MC6A2W+0)_0H;!C*1 MM(Q=2.""W+JG31]F98/NB5A-2E@U\J@OYPOMRX5+ANF&.^\I,J]#TF_ M<]2H !^5 QA@O(VUZ.1%!2GJTR?CE9WX^.B3]H[%VO6P\@+9%MZ1&B"K];V9 ML%OW!/BGSKF!DE_#VW2)CTGFSQP#GO+3C>33U.RQB$ Z$*N$PG# :K:[13KR M!VS&)OT58=0F.*Y1@6\83JL<'Y*CA$8_]-)!<23K(LA MX;OQU@(?@G4;Z^UH]'%6B0<+_XE@1AL--2F^L5MZO1@_&_3"\1^;U&"6LICN\,%L%GIPHQ>GG=; U(_ M7*9I8E-L.9,4_N$85-^#[V\[I-? SJE@R,R,HK]38/#>;Y7HFD,J0,M"5[;X MN2?Z):]SK_-Q8V49^YMRQX>GN\<"P5CWUH2SA,L"CC9\U5R71M96E3:]MNN_ MAQY6$/,E.%:,2@VJZTLTZ];^^#UF*2@_;TMS/K9F_QE,\+]4(*AZ^#"5<&4Y MH!_1.,A7F,_]Q)"UI"K>YXVW+,0^CL/N$ *U[1[YN@L!VUT:N\E'HT=E](3< MTJV5BJBO/=M4@')!K_Z1TAE"VLEE4R[;'XY$#FLCQ/ZHCOO(<$M+8;&N6.=8 M@F*$Z)X$%R; 56_,9UY1T\!=ZF5=M_U;YM6)EB#<>BDHSH5KNN<@8L8XOEYY+JZ7MFK25@ MWA,1%4OT4KRPH-B MTI%EJ=SZG@,B1TVFTCQ[H6Q%\J#WSB&"2@Y;4=XG%J6CX,UC:4[C*R M:AG.GW9H67T]&'_E/=^)&[$9_D!8#9L5A1YGS-_D5(#P[9://#AY9S&F;^.2 MM[(G[%4I6*TN@!E\G\6,^YU3-T-YYUABG7-QPC)8DT'QBA/P,HD'JQOJ SEZ MSM:>$N"6S5M5AKUP^0RW /*MG &V;[WR>!UK-_'N"-3NKKCX0,Y!E59\;NX6IH&:J:N'R)NB]\R G=<721L('.=A;E4 /\%Q.1=8WA,1%V&[>32G]"I5S>QQJ@2U')VIP.J.J(]*-"A M#F?\26>>=>5S.NWRLXV94AT-:C^RJW<-?I-8/N(=)W17G =H!E%'PQK,T]LU M7]^A*/*L1 !5F>H.*[B,R&%-DOU@==P%9/ZWA]8[54N4,PYXYT*,8^XILW/ M<+VIBY..>RRT=&GD5C?.P>ND1CAU*!6+NPNK W\-FZ;G-1XJ/_KMO#'/B$9UT516@U!*J7"G MQNZ.>[9Y;N+/:16#^Z#Q$J_>S4V;<.&;$(TVGU*U.\ OSQ(I57N_9 MNH)%_R/O1$&108&26[$IKX/%DB95)"%2[2_C M)>=3A E'_3!Z@I=$$U/;_*)8WT?RG\B_+1@D##O9AJ2'*!LY4'A&=JP#M/FJ MOL"Y;E22GOMH90,8SKZ;8E"I"3GE3,4N['EK] MFK)U<%*)_+I1E.4>[9R2KF>=DTC3N83DZTSL>S+]))I.6>)6X<$"(Z#7+B8\ M'7:I;KT@9]E6TA%89W@R<<1NFG3GEWN:SLZNOKY)]#=]58[S_RF)!,!N<)0A MB9_P!(/DF=G4+9]SF-#U3A'IA(XHV 9KZ(]E>%]H8L-KDPLH-Z$:6-T8DO9R MH"XS)$)M=.5'RJ^#UOTO:T+VWD0Q2[:F#-%J]W?U%^Y&Y+2(._#=PH&"9 MY@=M#5CL8*2;Q+1XC5I=O$^(3F>NSYLW.X_XF*"E1!;*@(H,EKXC@0/Z%RXY M*PX].YL;E*^2F3W;R^#$C#]Y(Q=?%BF;L9O@L'8W0KX5P)] E*.,GBYV[HIA MNLHQR"NJ:#$XO=.H>6?A=S8O=I;V-6"U+*;%WNH]X$K&LG /R!XYB^H$7U6Z MAH%?)WPW(SA[96]D 1LF;]-(4!;.9TJI1O)CW_J]F ]WM=;/1^@D[\ 94?8( M5LAS%>4G1>#-#S0"[5^QX*1@.ZPF.7$Q/^'5"4[K'7?HN,H;@=C)CPY40"4P MH0GNQPYG12H)YDF^]>N5 M2;PKN;CE!N08(QN#AD=2@%A\$A5PR3Z\.YJD+/E.NM]@K&J-,4$ZA-PY\43GZV88&A+'->S(V^]*BF#NMX M8W97Z[]M%)G#"RVV:CTM;&:?^#O?:/_IP>T-\_J5Q7Q#[X+4W^>-I(94I_-Q MF>.>5R#LW5\ZU7WD")D1BCLC.\SZN.ALPPQ )"?Z/XX2A?#ZPDT1FWT\XQO@ MP+[VI'4YU4?+SK:*5ZR\@KIL,=RK'A:J;*["O3$\*Y[I7!S;P_ ]#M@ MMU[=O9^SW_3@;>I,\255[5_7P)-8E72I'L<)P].!IVF;G)G-?BJ?QDC^7S1=I##RZ+'+>>HP)$3]9F\=%8G00&2\WGAOPX-U+0RMQJ/=)+/-HIGU!+<) M-Y&C=Z>%N>VJ7T9V3A2&% IFE@](ITT?;"#R; H'C/KOQTK/*]Q-=A1VZUMU MG>P_2B]%\6U]4SI^8$& ]5RN3KP;>>-(<&4R'9+>305<4;J_0[F%:VH@8WQJ M1WZF(I[/)8P90U"V[FR$!;0DY2;IK^9QH&++@$O_1DNV]HLSA_HVF4M[TZ'H M[I!?FO01V6,5J1\]2H#5UT]WW3_!&*WUEF# T/4!#PZ/I-T[*N!&C5G*O)VN M0K]M>5@AK]@H>)PB'&%)>IG!![_E?S6 R-(H=)+QKN\._LZ@U'8$/ M)-3@Y,NR%' HO&JHS^B.SD'"G]WG1: 'A\@2=(@B9$(^URQ7/[@( BZJ>)B;?[\=)K_P=+@M!AZ,C364S;U=HUW MT\EI7I:=;L70V81?S0'M.C4CNXD+OV:N:7NC7X73>:L?:9RR?W\,P5"JII?L%'S=+D@QB4H42F;OV^)S% M.9F8M4?IO T%4PT27"Y+;3EGC\YB[)JKF[H&KMUH?/I!!/@DA:0*%7*3Z&.? M%V?/CT(XZ7M1 ;W5$8.?CV^FO+)8*TF667@N1=,K1].%\0L/!*O$]>/+=@# MJ IG(T(JFBQU$YF"[L;.QE$!2"VT&XR9D&XA.I,0^?(R"+5FQ7(H;GIB)(!_ M4XGB'F_2+9N_21RV4)@IQI^H>1S)7.WPX']!!?BH9?$J;VG^!HNT:Y\\O*+7 MJD?(%TT@%JL&[4]B>3"#,V#MH>'D\S6YOH'3X7M$M#_9N5M)E6C)]-C]]K4^ MXH17]9/"]F_ PF>338[ JL5VB9NAM+#T@.EP_EGJ2%,'^0D?*C_@2@1:F:V= MQ=]")>%EOGJL:U6MQCL@]JI8\]L)($N%:QPRDK)CD:W[)VR%XEG??\ P-,JH MQ4Z:7Y=JGH;1=]7"[A+>8>P6LZ'2+?4?&ZR900[, M5V.#OFMC/S&-[F#DO\#93>#]DY-&IL.K!/%T82K@HQM8*YUBS^\/7S)P_3Z( M5+*1(J^S//2WZ?MC 11RHL7)]>@:5W[\MB5N%8\J/GG:_I+GSK7>*1[!5_>R M4")("? 4%8#Y]7.%,=!=@.(/=Y0<[)-'#@6(;68C7F'*A7B?V_\K"'BU>H@)Y>#.J4&$$%:.94 M1-?_NY9_WU&T9BW?L;!BN[3(-96G?^0\L-RC8;$;'+' -R=%LL[OV)Z07V=% MD?>_@/)==>*T*L8PBSGU&26/@6P:?S:0@$F4*RK"PI)]]'=Q!0J;KO@\6I=< M(P+76A,D?R,]Q]#?(YBBL[(AW6&.?;T(W62VT\G"RP@^(3^=OM]]!Y6]XKY\ MBG? H^">T[3H$VNH-5$3TI'PC6 WV#Y!T_P2DD\]JBA75E&XF33==PC>)JW& M)DV?/UQZY1E$_RBK9G\:R?X6R31ZVB7'NE4]67^N/GW7 M7J*Q[LVZ[\>-E_L[L_=@O^.$&(])45G;EOM()T_J[DFB=Q? M&3@J?ZU&TE^H0J&_09]@;B8P0*7&:^XN^OIK)_.OW&*A A(8(I86$IC;BVNX MI:TO+)HX1W%"GM6BU^I<7@9_8.K4X8K%/CI"6E@B(M.FR?--O$;J!(2#P EB MI"D =@/[Y[:HN0U#[2URKH12UK#)-'' /S/A9O_7W6@D UR&X$8%T/7:XB9W M;V*^P=K107+M;^OF$S4^W>4O[/>E H947VZIL! Z2]EH+)6Y4UM"!(@ZG_]3 M>+.6XVSS'$EB_"@TT[W#4*>P3)]35.5+*UD,K$/01&]?Y[F1N!OAG[&\SUT. M9,-)"C]#B>4_\DXVOTT%8+D/0!V(G;(&!+%+U$VX>T^;:E=/XMWO[R@D6GBJK-9!U/TO4,CC,[; MUB"U;R.&KLD9G+G9^[D,NF/'I@Z>SN4?!!,XJ4DRL9Y-B M\^5;27NRJP07B%0$R.X:GW)HDT50N,='=X OZ;?8<#7R?1;_Z.,O-Q*/N@,C M>DCAYWT_F4KPL_UZ:3@[6;!M1'&J\@%2GLT0/PZ+#[(N]^I8?=QEST&=+4]) MM2^\86EIYCH&'Y0^6ZZO&O1&X6T^!X.'IF3,4__$I*2FS"E:L,^^J.7/#[P@I1 6$-V']R'0^@T0<,Q7 M5Z% Z%?AU9(I2++C$#/,VWUH=LP@QO5S0>P[#A5>5M-X+DU,N\;NZ0^]BKN= M.G\)^A@NU):6W#>,_F0]*OM<\S;-[95P_R?N@BK/<>8^>'[]R?B4U$'N"Z&< M^@%M#"BL&DK^WL'K4\^7AO8ZL:N7L,0G8:^D7'QNH7U"C[6P5(3EG2<[)Q9( M,6LO%Z4.R8)9<]UJGJD?3),-AJ.?A M'E)KF6XDB.%0*@KQ@C)C&4[D^K+JS[I#)/K9Q\.6*I[9,?)%98MZEF3NYIA8 M'H]_GLBV*9?CDMET'R/ ?]+S2P^!=FZZ4P&YG*BG8KV'B].I/P-,(XN?!JQ&ZSU[-*_UV7VI0KR_7&*^\FZ9*B3_KP2N1LV W( M7AN_W,01DG4#S([YEKBF_5SLK\@9YWO/ZEA%VR;^G(W,/'M?\=L;^G/7;8.# MOJA"D["F^!)<;0UV>WDQNBDPQ]QQDG(6U:@AK2AWY8:9*^DG73]H0A8=LO3Z M86N7V& 3']$>JH65"*NHQ/$=/@_HZP S5S3YY\TZ^L8Y3-B)=.0,SWKY!Y5-^H6$R4O)JL*?+(NIE5%JI(!0@(1U,!VW^ Y-O1#:(G]2V" MD(+!W6-.N92^0.]M\7#MM\9?]/4\9L,X1N=(T#&#D9ONV98GLP!_MSTM)L+* MCI&2/;F$ &4&8BD*]U/K\+Z4H&N'%HLK 4=5+D$\G@VN)^7ZNT:F Q9U77O< M5G_VCUS9- V'5%UL!7!^E.2N+=C#29^0/G^LG,-KH[F MA?H:_L#1A?I4P&X43%BZ:L=(1;[H]#"FTIX%V8R"]L1X5S!DLW5$36XW]\IEC>LVB/K9J&,S-&(LCU%Z5:?$!/TLS,)7#L MKZD ]WJ8]I%RJ"6Y&G;=T3)E9NO8T&-T9Z+C#LF2XQ=J-S^HX@^8 :HX[A/_ M53&E5:7P5=T!!R+?$I@*C/JO!P)HI$;FH3H0\W MV?&U/"4JFV#!2:RR:O#/W1+\0 5L<"1XH!>C6X0&\51 9WK@.7<4TZ>$4,+3 MZ)I-+"1AZ=!L$=E+"UR.0L!>T3$@"^6R!8) ,K_X!U\G0054&5$!Y=IZQ)QUPT-7\T_&FV!E>1)411MDIF[4.]]M1L88US;"^;O M6R]^B2]7)SZ#*H?Y=L,5I'*F->CWRT3MYHRC3SV&N8.]U:7K'P=G;4$U0E017=I\1S(XW&459! MO6_%Q#I!]!(U8F$(S13%*P 'A/0NWJX2UY5JHG7?P(J6Y_ *>?2P[+M2:?B;]Z.Y4K5.@.;![+O/ZC>Y; "KPP^^L9RJ$I_:RF1S" PK)K;0R5PZIW M-72'^&P3XZX]3;+."G2_\S7!KT>.KC$X,!8FLX/"_H")VE !W"YW;Q;&O@]VK^T2W.BW$]X%3YT?"K6"D*+ M$-9+$(?N5\RGZ19T)=Z"EG1UP5=(/N/P">< NU2$J0UH[Y,3'E7MW\+P ([? M1=U7^1Z4+?7C^-?CO\XE!2NF83VP8(Q)$1SS!G?+\FT .;8'_E'K"5&TNRAC MFU]J7(9N49D*V,L9H]1$I_Z,@#\4HKS&C]N,4? )+U$X1,1A&;G.:K1<8U=F MS@E^RSFKA;"\9 U2L8^2N!X_]">)"GATH5X1.*W],V7J00UY&+B <-_G&#*C M#,+.5G:3-!(]%0?$ZHYH$;7/X?'_'E%9\9K0Z=1 HAZ$<_2F9$6%+OE^G3S9 MP\P46-,2#.ZK&O81ZV7^ZVPLI1YI4$FP1RLK7EAL#[!@&8XKN0>,.C=!+D]N M3G2I"Q'SINQHL,,^!8I#6T0K$_+<3RKW7_$?: _SUH )05^/R7_'"N5_4W+[8=)SO*9*,=XS,CS-N@7FOP463-W@[\HE ME(!^\I^;!/'[Z-;SIQ?8#]]:IIS./Z?1Z&4_A&(GYX=U1%+?=2J@]342GI.* M]X1SF*.(@:30K=Z]AT'KP8@P$)?DP3J$].0W3#,/>,HPJMLZ&%FAZ1Z9E**$ M6.BCR!R>9X>_&0JL!Q']J8#/008($PH>VHQC7MJ+E=8]Y]007[SL>*3H['#< MG.W(T'/_PD.5HX-R6/*PC9W8C4(;+:.UY6U_F,M*:6I7KL[]NN53A#CI <$5 MQV:*54DMVH ]4'#+%'T8WM-W@P6C=N[%9<]'H#AO&FU_!W6L OQ2W6%F"3@]4Y-,";2T$HS8OT#C?$O"[V2>I0[=>)> ML_RN?DJ7,%*OK(W7P<8-WQ[9UOOFENN2C3N)?GC _;?3OIJ3 DF79WZ:I)W M-QQ+H7A?G%HD"/,(QT"95I\/=T7#U;LIBOJHB):'!+]TU]>ZD_H!=WQZ:<)E M')0)M"YGQKQ?7Z-/M6 M7@0^K[[2-6TPQ.?:8X4F'=V-7[3^,S_>X!94*IT/N28VI:*WQQ\L.B#Y1N%. M2+J%)2O9W$)^#&;6%[07,CX\#0W Y"IBR\T1.Q;.&(=$PD#Z@-4P'SF;I'%34F MK 1;1/^TEI0=.*?)'0/?O>:*7>]8G&;,R30]OB.'X%MZ=& ?Z^*N:X'$KN-3 M8S#,L=5D "1HQV*OOV-M1X/+UH4*\'NQ7<<7.$G7_RT:^6W]&.ELOG=LMGXZ MS@^W'ZB8UW7)B7[\.$03<&6M^4&1A:A4=3L5H&Q(.>6XYF02E3FI=]FG/S1A M(GF$HT_:F'[RL >'TJ^V.OV=>SJNV>3\U7)]8**,C9Y>[A)%YDH>YRYCFEAQ MC:JG'X@3>LV!.1WC>D]C%Q\FO%_6B$C(.E/SFPI@F:T%K:?1N)>03&RE&81D MS'J2PV?A["_5=,@@UHL$.0'/6*SWM30V=I-PU1X(XK;KZT&B!<$URE*"R[SQ M9?<]M:\4'=U-JY'^;QX+)2?.)SQ*QN?QPW^D3=_)[3XJFL]L@ 0S:?DZ3'M,X,7U,.WHEF#].T+,6E&Q/+@V#,[J/2)&B3NA#\7LDPYB2NB#*\11 :H M@-E:T@[0'-5^"?1Q+SD9T^Q%84%<=IKY$;%[H6O"$B'F.T]DKWWP^T$TKA*K MBY'-IP)N J/DKMH75=\'KO2:9PF1/U>8ML\DS[7<'O?I([CF)3*ZUA_8,FA5 M7!)./*_ZS$;BYP\]9YURF$62Z'@&6 +4R0Y"5]E3 =D&(!(SB.36S-6&JK8/ M\W%GLG12Z"2WQ 7>?(M7G#%Y=H_N0W/KH,[1_B!)E/D:?*B\A I8$H.'!3%A MO9940N5"7-R@NN@)RHQ]TD#\3L/=,SW@5 &"A\T5<,R V+A'JGMU68.OMN%@ M^T3G;U\XC2$+!!#QF5B)+%\;JWG^A>>-+RB0,L:$F5&U%%VQYT,^8B>Z?_/^ M=,*'2-U* AC-)QWJCFZ^I[$QX!2OCGE4$3WSFU&$U @1" ']Z7BGOB*V$92B M NOY;"(!_0<.QS= @FK5[!-#-(\7$*NM+L@B2C_JV?F\)U!?' M?)K.I_C(Y%!CGYYTN3GPB#U(K8Q&$FUT1_KV'^W^KDXTJ4,LL3T^;AQ[^^#9H72IDL M;@&-\O$59$LEA!;YLQ)]P?+OJH8Q,SC'_"A<< :DM2T]&,;//(QU57I8V-6> M6WTS_>"AS(2^M3<6X@0^+]VB,2-]1QT=38S&SP25?^ALKM9CUO@@M5_*KF_M M*%19^U.5W?!_N7SN$Z%X:78O$L1<@V+>A-U 82OR@]R&9YUY;].ON^"728%(P@'F2G'A /)778/1U4V3%JWYQY,C<]?JXY?K M,^I%FUP??XT-!5OK_P54(0#QUDE:HS!%1PM\,=-$.D[,N*D)7%G,:M&NI*;$ MUWZ^RZN;8PUVAOP>JNKAYKT7!;L[ZC,@IHU]T_VN^E[.M!)K]QM1EP<#:P_H M[AK_)4MJ@L'M:?>5H/Q&5:7&JER'/AHFT=0]QZ;-3?AER%N:KL,YRAH\JAVZ MC[@?M#/]Z;WQR=M[:7AP+.7Z9--S](#*8OO0[)QU)RQ)FZ]_P>!SK49Y:.AO MC:^V[3?-NOFO$2J+MAP,'6) M.9BC'=XF=T: .*H%3Q];Q.:0SE,!CP<0%&6*S/PP^-DWR)L:>7+/?E"%H/E(C/*P@G'A%$,06!)0U,,'<.&V+OCON;\(P\))%$XP62!G>9: MO+1I1.DI%<"P*5)B)%+^E79[>^95=66N]D'&-DU=9L=(70\G!-I0ZAU)*9;' M6UGI[@J+"P)MZ6T*2?Y][DF=_+L%?2*RF6\!F'7H2Q#+5Q;J::GQA/9 M2I-73ZY(":KI-89ZU'!EO+,)4^7P+AK-OJ*EU5/T6'I2W/AO9W^5+_^/[<#_ M03Q+N;ANIQ MXCH%G31KQO!@-!K.%D49IN1<5[.'$LN:[$C MJVE?,GH2.16OH=][)H *X CJ4_67BMA0:!G],G-G#JA B@\ M.O!3?A]F(A9.6!4A?UH1I,>UY/3-^0LC2%$T^:,: )Z6EUHA@4\R08;9)!3M M_1ZT4@'H3S=H2P5E2 N1]+0'&"!WON1E^&<)CF? .65C*>'-"]%P6K^38P+J M #BV 9=:@WC">BCL+Z"[IA8?\!W#EV$>:&T?+F[)3068 M%>B2+Z;]$2E?#FU71^<#ZWE%V5.&P1Z#,U!E;&>XRB":+'O=>]HI]-0D3T$U M[,=9,3%(ZV:M$'"D0M^:I? BZ9[&L)J8[:VB1V%GU+^R5^M;L/_#\O[_&Y8B M_#?%OTSR;^!8AU=+13:]1(-"*.+C)+I"N#.D8:0W[UNUV;/^O8^)E0DMK;9A M?]3$AL62"*78_44,LIULWS:ID)*=>SOW3*03K]':M73?K8I8A:M_G1Y^90YK M.4,9I4C4DA$MTH3H=4PN9!(\?'-,4D(Z#JQ)E$466*5'&7 Z_ H>OM[U] 5' M[)K*V5T^T$_WF=0.7KEVJ6@%5#34%8.DB>HV"K>K8Y/8,NC2[(8NF[@XQNR] M1KF@^+*;)3V=/$\Y%1"*^J937.# KY#:#5.>D"09(QGG[\^:C3SU-;2TJ#FL MN_3VLDMG?O)@A49ID*X&S'$$'\$'%(U9CD M%Z;L4:%?]^J>L,;A=I-*5ZN:_9%5[LC=ZCYS2:3DK>K:V#=KF6VW#N(UESR= MU\'3>WA0(T%FV1+,"@GM/H8I-HQ(OT0/G'UX.+73E5D8SK1:J>8N0S&Z]GN! M7NM4+?@AZ(*3;T!7#28]G?&'E&O:_HW;=1]M'ZM6FZ^PBOW32O_^^^"_=7'] MOTSR3\>![HPVA6V08, O0=/E=AJXRNJN#+V;2;[H1CLJ(!4V,.O5Y0%&V%PE M9S>I8Y/PCH19_SRH&LYZ/;::&,4IP=R%?X0\+$S5AS"-/'M;9Y*;^>N# ML\C>Y/-&\6);I=M3AT1SR=NLW$.VD:\<+2ODC<\A6O4N"/]]TN;M*$RCHK57 MQX,^UQ)!4[E[2L^\TY$9%P4,X..GQ< P5YJO\BJ #RKK4@'GY> DIV %!C$$ M%?!^_1D5D!6 H#"X40&$<2 V8Q-Q,$@C33^?+U(!O%^OA$2OT[C4PU'0>E8A M%1"2CJ+(J).$%>Q)!V-4 -;0CPKH*J+[FE-/ZZWC/7BR7DQ3\05[5$"@MQGW MF)O.FYXR=+(?&8J_M?7:HM 'I12P=YQ'U_[?U9+_EEJA793\V;&"<6Y=7W+N M5(IS>E_^;$:]Q)RI75CZ/I7]?5PI\>_T,:!057 MX?1 C-I71RF60;B3X5,WKZ;\F-_\?YW7**(.NW,HT*X];79=@8+A&Q,G6JU- ML)+%6_2JT*<+(8"8LT/D*H%IMV>6EPH[FHA>=C?"IET!HOM&/F;&G?+_BOFU MW-8KJ*7>6_Q):Y-B4^ :E.6DDID$W7&MPW8$LE926;6;ZI-A@LV(KO^TUM@T MZ]D?-[+^\$<,'_\S@_+412&EN1KH32S4"JL90>#R]%X[!/:A].E97^SOB[N$ MM][(WC#A7M^S+!(6.+[6;H.1V.='YZCAF#(&FJO*6<9ZE1\270R\P65OJ+X^ M%XH )._//V2CH*%["%O8" 8/%K3KX.'84M186(<]<=@O:>S%ZCK(=Q4^IK,U M?\Q],F>ZJ.G]Q(_UFNU 2X>O0>5H!/'8F]I$1K;: M440P(>/[/D*--)KWKV8,^C9TG!\ M_)]?[:A.NY2 N?[3*@@!1\I^<*X0@T'6>+R?-WU/_YVI&%OY0I/\J.OI>G]Q M!.7-^5/ RT5L9$*[A,\FJK1/&8@,+"TU,_5Y/ZPS2>0J=071>;$&.;E.Y=E[ MXF/,M%11PV\%_@B3;B-$C@J&<3_PWY&K-V &XRBL2PYZ,5ZDS\\NW ,29;5@ ML-@[QZ;^_-VK6 :MEP(O0\*2L9[,Z9;4:BUL>G#XP*M A*65,5 TF%]3\JX)2"_W2A^Q=6/#^@:(OM--,V M$]%?2".*P]VXVV\'>Y>5%3YX8$^J%W/&C_.Z*&QU_[H55,?:B 6;L0MBP-4/ MWFTWW,U5CS-@Y;!)(<0L)EK.*@=,'V4.NPP 3A*"O,+U))8[2 M[16VV.?-+3\F*\5=3N*?O_W90,L0)V!/*O"JD"OAAM"7/&"K?74LQ!Z$T$1# M/US2P>YAR>'(8?T;^I4ZA4&NCE(?T_9_-WDPFO:0A7SS^PU/HR#=6 \H_1=7 MOZ##5@V'_6/1JY1U >169/.FVXA'?RO#ZZ\ 456F\A:/&DEHZ#N'.E.:AK^M M\&6(/'FBT ?2Z8ZH7^Z(K*>U/1C%""5[BI,]=WO\6Z? MMZA&V#CIQZA<-2O>! M%C^9@R_M =-) 5OL@IGJ\D@"BK9N:LJ(2!OE:)KD!?5J+-\>.JH"7"MHA%]F!P@236%S&')C#9Z[?-*C7WPE"-U#N..>E M\%8F%GE^FG2]%DA_3?WNB_BSH REEW/S_^*PHN[[9R]"?H0D4?B=!:W-$0T. M%+VH@+DC09PFIC[N/0COR+QICPM&U@0'_F7PJHQ)Z'J+A#%MG=OTD0K(T-"* M>PS=$1_$J'3#$V5%AS_4QLB&_9Z3-HOM8-IA?3['Y&!JT6!$%BJDRAV"D!7] MP_J2_>6L1AA6'SW6%[1 _9"(,BBM5ODO9EP+AR<64CWE98Z<;16BPZZ"E5EW MXCA4ECH3/HF$J(!<)BP-ST4(FC/M8C 2C'>,YVX;^-2LO1[R-NL)_Y!D>:V, MRGGB'\(@0>R'5S7T7Z @5@*QB])/;&1E\B!I]?VO!$NLYUBW5BH#=]5NXG$&/QL0C*&JN)KNXY1/ C-R)1'>Q;SZ8TR=3 M^0M%#M$=PZUF>625W7%GD63II(H^]:67L[EWL*?[]<@@2A_'5\#NZ+QI9_6U M4"$+VX-%^TRMY8\_$NX TZGNT0Q=J#"3X +^#VXR,BRIXV)]7X\N[T#!GUF. MX"%!UCA,8@C1A_0V^^ (!;LP@K90U.:S*4+U/@?@8Q<'K\.?WO>/J^%9@A2D M97\?Q@#^),9"KHWU :,[J CFTODEB:0[LFP;OQ!G'N5:;RJ4=1&04:HHFX8N4 M\+VBP/?)4VCY5L(0+5JY&ED[ M[O/F(FRF&7U#[7C]SWYG7:\USO4=K#:\R+T"V.VNAB$2XUK54!(LLO%*#JC% MGU7UNN8O*C^JOTXO>LP&[9.>"^"'T4)]KM0^C=KX+.L\ MAT".:+W/R O-'C6CAH1U.UD:3B0+O&2I>IA8,G,*D_:![U^._1WH7_T YL*D MMZ#P&O6ECL\Y^6A \='1BES:&VO7:\6\ M;7G70K87+#B9/UDWW/#M2".IIA").PL;45QJ!UL&NUNJ8F1QROC/&,4>7H&) M!U> N$QGQ*[,J=[?$$R4SE20\)G+[^QEJ<=/!<+EQKCCH+/3Q-&"U&;LU:.M M%FK-8A4/HQ6\8XZI2S(W#I:5)!N\&[U=5(\VFF49I9)_=O$,\+,VVZ5]YE""\&C6V,*?N-2XUZY:]A*)D\!7@GNOZQ2\)_3;+074 K!"; MBKLS=\D/NXD/P*!5\2FY')C-B&0N@P;XH_,W?K^^U'WY'#@.O[WVRUHP1&QP M#:I>%3AJQ>091(4W,"/8.;/U7?+Z?T@TF#R^'O:DJ2'Y(:7-5.\Y>T%B6B-& MS\U*PU"%U_,<0F"OP9-BOC_&V(03_GY%*$V-!;W/MT3YVCC8!!2&7\]>HPLC MS3PV_1=43Q.U&9S8)Q$!%L)$M5_^4IB%2RJ24PTY=T%C=29(K'#[=X<";UU.^\571UM"*)=- M5NR['XB(XA+8V\&OCIPAQ;YI1T\$*=V;OO@]6-UX;]PW45(]$J2K7V9??0UO M=:Z[[9TI/>PS9QPZ8,B43&6V,*2F7O\N4/U5]L$AHD4"[P",M#J^'[2>1JQL MN2KO;+QX_.TI+MJJT '2_%N31 $QH8<;P:H7"8X'Q">7!L M<7O2Z;,-H/1^R?Z'>V1,G5T\?3#5M-5,"'4\/%G<9J5YRFUJG[ MK2]G;!NB7BD/LVF254 O#2VIS\4OQYN)LZ>KB0)&M%KEO=CB%12B!@86F+8WK60V']6L$ M+G4X,GDZM,@O3(6W7!VFBCQ$I*(@D76'"[N=N5SC%4IV*" G7L61R='RYG1) M?+H]VGQ0-$_QWGJZG*B_,4*?P PR3>P,O!GV J/<2!#=%^G;72L[=N+JEX&R M5?49J8J(_XYS?KMN1ZID%PQLL*_FQ0NB5V,0_W2=U,PCZ&)8$B.+IA[I.U39 M>U>ZE5I%GM.^Q\=W4B*S.B7BH&D]KZECN\YE'#W6TLF MPHI5*(N)V56\__<?L\F:UKG\D_ZSI5.GK7M010)!>,:/^@Z.]2^:$9?# UX!,6P=;4) P M_3<*.0Y0S^' F_>M'E..<770A>J6EC_WTJ6 7(%8IXW$0J)-5X"(9KSN%4#- M[O)IU3\+/LYX""X2[X\FSC](#HJV->FD;)1- MC^-2K):#UDU[QU/K;+-.- L-K7) #7:Q,&N'_]H]N:)4# .P6X.H:BSY5IV^K;:GS]OB9:/T))[0M"U9L\ M#%UVP-6,FC>O2/ZB$Y"5W[S)'L"R6 MC-<0V++U7K+=N3XAACSLYQ]-B! MN,M;@;]R6>:4O,5&1IMDLV.]?8%IRB/-0\,TM1*GGP'RA]ES/\'WL+*]E=0H MH5X0"&8P>2EM#Z>=ZMVGK2HD*LNF78QP:.#[JG$%>+G<;BR4LG7M9#U[G&+[ M@N6LLI*@@BWM5Q;"1>!SBF&Z6&BD-=ZYC M$L^VG?J[V2L! 6/ @'R36E?IE M-=MN*N8@'Q^&&?TL:.[FQ8H.0 MD,L[]Q% P*HZ;/F<% ;%LO4%A;P?1E5JZ-J9CM=G+=-9Z-E0"R(ZUP02$V19 M^)A668[C_Z.S0J4#L*">3.>EACG.E(J)G*IRYOBP[:0B8Q"F'B9V!5#5)V1D M7 &BJW/A#&_JUI%*S@*S\0I)S4&^2]_8FT2^2C;BKXO]#G'2RMXL9,7]($/&3^8*\ "7-I86@]4/^06X0XPV^OT\QP MPIQT51O=UR8-A1C=29>+M,OSMYYU4&GK?W1*6WH^^S>E=?*;\?,8]<'C00,1 MU&'4%8 .9D-\%6X5N_I!M%W2YPBY$5V ]]=OCYCK4>@=?S2I96)V/Y)**FZ= M)O,O[#:$XI/Z&(6I-./$CT%MH3]OC[Z.EZLB*KBM,IV.P+B"=I9_&OSTPK^S M?L=^[X(S$UX%8$FU\4'%B[M^7C5>U%9+JN+/7B:/K;P_-V852A]UFPJ$+/*C M@CX\[?0K[05%-O-&(SNB!,SLV11<2@5_X;R-!MIG%:>%"QEM5.^GUC'J4=YJ M^06LW:H.(1"C[[I4&^8*$ 9FV+'N;GB_DRO8G"O!L! MR*\5P_4A5,.=$ M]MT.1+!R50Q&?_%[;V;'!\@;(FIEMH=_7=EJKJ^"MZ]< ?1^^/LBG7>'M#Y( MPM\YA=1=E,#\*_")/7":0'8??QVL56R%DHA=Y>[?TN@3#N?]-<;^8OZEF-$_ M[6IVI:.2?DDD)R,L6+TVHNZ4TU< I/I6^_UQ A-SNRA8W(IBYY*SK85_[S0$ MUSP@O+8I4A_5.4KWSG&V\=S+)W%M++J=;\N*#08JGK?"^ZOHT\__<[8B2+ 7 MZJ84*KQFFRY]\[3VR]N7[U7X#"@6/D+[5J]UN&X3O+%J/;GTV">!-.GZS"^& M?4L@H2>K^_)OU[5^EV MYOR^S^L3 Q*OG;+8VT OPB++N&CN:]])DA/U:T".M T0,*@.JR<: \1&1BFQ M8#*Z3G-Y9D_$R ]<.1S2OYL[>+\WTQ80?[/*)4G_6(;<&//N;L>^#AI"[^./ MR[OXY%$I8C%]O"SQ8D9:^$1$1''P5NC),[&ABI]%HL$N;\DI.,!U)"?.+&>) MY_KXL?[QP"G>^U.7_ 0H/A[CU,6*?73). T3LGN'L!C:&\Z*;!R^OZ2A2IOX MB><'Q[D.3AT+C&K5Q0![3MN%L1'AZ'WH:0UQP-21VX@7$K>@MV1>&U)^%&?I MGX@@#U;.C"$4X!6)AK D$LWM@D>ML& =89I8S=BBZ7J/;W/[22OJ]A54G04H M[9Y^_E?9PF=^,;A#BL!Y[RL >;$:-@ZE% 4/0/ _V**/#,(+WRZL\I$:F!@H]H&88C/"+>?K1Y-146PJ MN2M>G4WG;W[?^Q)! X_":5RAOSF9*N[^D4R6 G_F@AX6*_HHSY;TD: M2EL@0S/]-M]0\F+H0[=. /!U'0FNC>5/9/05P!$>=7D+.]>K*X34#*FS8MPB M%HO U,J57"65'J)94^LR,V#QZKE6M]U9BV>3W@,%1-*F! ,3\-[6X7(&;"2'PALN-# MX,U%?$K(((;;A<7F/XQ&$^"[: _#Y/9[%3YC911S M'M#-S;".M\"X0'(B :-V\FL/S\,/]UHJS3(]J?5J_RR0R197.RC%3,W=TG.- M63*_X%HI.W15]^;,\ MN;Y+R'XC&)Q9T*XX&>1*^S!HX3?,TPUIYE_-N,,KFM6=J9'HH"@J-7K[#]K; M:] P[KOU5 S1H1V!"$U<$MX?HS_@_ 4OI86Q+2Y1_MJ':N,].Q#=B(%=:UAY M'7GT,9MQ"-#5-;H4''"F#HLE0BM*,[[DHJI5#.G*F=8PLX$QSCA-;[Y=[RF> MVFI.'_=-ZRO'D//MAWEA27(5SCHX)#[DB\_3?@@301!SI#T+!N+-#-)'-PXV MC7T\S>;S7WXW5V7M#F&3[TGJ]:!( H"G"MIEK!9%4!*]KM&Y=_]I*D>.]S>; M\FB[-MPK\[>DJ4S7D9,#?:34\$CCM@:W,#L@[,=<\^4O*^ZGN%B\6)[/ED.I M5N:%A5#M:JOZW?M0DI:X!&'2&>'J4']0M:B M/K>#AO]P(6R=(A1E_VF(X>$;OE%)2JM/F8 +HX(.::5G6.A IBN!:1'%6N.$ MS07RF#L@BMSLD>^>:\N-_A37NY5BF/&ATL([.'WBX]* M3S$-5X ^OXI5UGUIO(>(;J#9MBEAT4*X.6%SQ):1\=M9F/SH^ ]E8=)C5,P9 MZ/*&)]J5 4],T4]K9EJ?5A/3W$S6\];HZA/_0?'2N\5>7WS9&RA>Y8KL_M>Z MC8E(66!FTU#^SQIFB+E1X[KS+D_OJTYPH72I^I."HDI!C]NIS^U 5P J_R[0 ML8A#$)ZF?A"?B'N)L8ORE&FU:MCF*[/Z[E#)[$;C#>CW53ZK-B]H$@KM,3:O M+6E'_'C+SFM*H?9/ZZZA>7?N-)0!!^:P3+3?@;F:% M*6UEN (\;"!RH^!ABW 6P^Y7:Q^M=*5C!+O(103P>% MN4,[VY0G%Q[T5+0B9%\M(HW^%CPG-&24HLWG-"9H[=,E!2;@,%Q)!_-\%$3A ML_APIO*P?;%L!YK:XTX%6GG4E:G;$J'Q\+2ZP;ZJZ..SE%II;<$W/MX1EZ2. M?R'[-JCJF*,=5HFB75Y0_:1U36)0;LJC!5MYBQ9]%W>K[ XFF 'L!N80+=NE M?\,')^+,9CCC(CA%8 I QO9AN:<&[S8NW'0]L;VF;[X31SC! M9.QQ8)]J8?KK[?+PC3T*,G!T(O7\=O.4DZEQAD))SBT34<:>M\C0\+-E$\8[" 1(?4$]4 M>+D0]N"BL'A2R?VK$XA92=D)-:(W).(,U)^HF[W\.27X4$J>J2)%ZMZH)K_0 M=J(_)KZJVAIIP;G:RY;LJ+ G\VX@R/<:68)_<+#63AZ 5$:+G7U,U73Z/RSE M7KM'0\G/AU&M8@T* 0'%;7UM,+9Q?Q19;65B4_2?3K8TBYAZ.AI=>]TR MB+L4=/]UTK&PV&D:D>CK9(T,8--KS;RM57796>LKJD'J_',47-"J-X6[%C%[ MP$$D<#)'K8W W\-%U^+#LADVWQ.#4&0B/Q/];KL_1[/:'S*Z*?:$E;=YQB+]]L8TGK?*Q,L(BEO"GQEAF M\%UG6T46UAO^;,N)>TND#-=#UCPI7,BG3GE8?KT-#,+W7-ZX F"AJ.J^'"D4 M/+K59DV7K=]4=R1[%I<+&B]U!A_^A)UEW'*0E0K)]N0AAY:=K@9WU"Y!Z#SA M47\S8IU;(2BS:B:?!%W;V5=O>/*B"]7G87V">K^M@[4VOU3G;>61"]QAUF%V MY(_7F#%FIU(F5X .K( O/EY*$U3JL8M.!3__%4?.E_O^_F1[+]$O[V C]Z31L;0Z*-XPS&9_LW@X!HT22-:I6G!, ME]0->(-\..3,\>+F$6!P16Y4T;9%GS=PJ%T4,Q>O=!,-"451A-DO7 %6,TWJX.2@R+^O!7)+D.^S,Y9 M;<[M4%R<,.&:_G7?D]'HZ_'1_7T"3SY"+U6MV+3O+L_0+CT9R/1,$2V[UX/= M.<+%S5W>AO'AXY&KY"4U):;;FBN8ED,>1Z[^6K:^VK'2/8@.%Z MNKY4U_9'M6YQ\Z)0((NHWX:C1'JQ,Z*"J]W*G:;"J5X?3QFCB[S(7@:>,$1,^L^U7@Y< ;Y?C.TM8)[J81)*@US+G2)0 M3B.:A@U+SU&^7(*U:_>[PSGXZ_UMF$DPB7V@>0AJ,Q:FCI8 VENQHZ MH\N)Z6.=76LW7SH4=1]U;0/;;\"K:8^A;/=ML,1%.L%U;2P&0WB$%T'I4JC/ MBM<)*T'*'2[O?$]'3>X(J[RP>\HD(OKU:R'(8Y_C #A=9T#1]^>RTR\]!Q/9 M?E8_2:G4%QL-4*U8?30CN7=K[/A=06?0A,>:ENR$W2GX%&(#/)[@F M6K&U6E3O9,[49T1ZKE)(1!K)I67NK&P+'17"R9R%V<4UUO0HT?+5%?9YP(Q MLL#1*P"+$AM*]U80AT]&%ZGFA"CGT(R2"+(LO[4]U;;W1U/N&UM-PT$&9QH_ M;!)LJC_HFU6O1$R@Q&00\CXQSEP>M$&>)QJZLCF >9TDF)8T$EL?C7"\8,XE ML;'L/)ILWR<&0"2N& ^ UT5V+1X2/44\) @7)5$A+3?EV]@4?LK/@N;[0T>I MM Z-)-R]2 +?VX%PPD#HU00(\_$5@$LHC/^CO1>G1=2'&P(&Q>NON'TA=[.1 MT7?E67">S"38ZC[(@A3:L[07SN(3MG;83VU!JH8U[K"?K@,RF5!OW%O0W$9>VO9"LHB+PH] M.!]BJ-E$ALT&.A/AP>D"?@6PV?=&LNV=HE0U/J"I=L>@N_G\7>R3WGC.''V>'#USH03+U63##O:A^KYPJ'D:E: M&7J8D[B&I(5:K7!&P8#%0D2IP#=Y_IB_Z3& ,Q'KE./R+>X[32KZ*1[?#!6]Y'5%1?Q']_TRA2LJVFI:ZA8W+*H#%=CA^!.W4;RN;/ADWD]'#SSF1@K'!<,P0) ME%54KB!6=^[#L85FGRE9.\@"U&D*F\U\XW";VEQAJ"_7/"0AF':E-2"9.,&Z MR,/Y%I0IGG2M,4+ZD-'GN4\[)SY3[/%* )CK$V*CBSXXL44^RTV(WQ'-TZ_O MCH7B'/#1D/W;@>(P2:Q5Y+'_LHXJ+^^,LY+Z*^EN4=73&_E_EJ\V^!U@-MUVW!5%7 . M"_OY4L$N;F8UJJ,6WC^6"*%K]2\D:. S\B[*3>H;(G4FZKAN/'UCE3B)U^#R8''+5IXF[ALXKPQ"J.B@!"7Y!JXV5166=5FPE'3]*= M7W=S?'HP.W[/C>MFOR1:[D!>:+]9F'1C]0.D%D;,;I?B^$VKJ<,](BWBF"$H MOLK;3C?Q^A%LIC'8; 2EX$M05=ZMN$@&4SK"OW=T+H.Z.$F:&[S7RZW,S1'3NPG5@].!,?>?*,'W,R&G\GG10%!@R+79"JV;D M]-2IM.LW]X<$N;F+4L70LM\:$XU"C=.05Y]=K@!.SA1$Q&^PUOP^7EC;/*5W M!9!QFE]S\H"73"K5%BKQBNQF"I-V!;V&+^P^O_C43JFZ%N]D5#,C83TM[G(Y M47KXIT%+U? H^/W],99#X__;?Q+_'_D?^6\J+)MP;H(ORBHRD"( VMW.&]O; M7/XD23 [18M+HCM-:R(VI^\]1Z%!2[1;,#"2\/RB3,FM>.>2:KSN4ZOLVK+5 MB]KOTY_KCQY@5QXTQI+4A;T+#@T^2(M:*GA$HJ<3#*S8JF;"#V '^B#4[2"\ MN[$5F8Y[E:,4HB<(E%MM4WR6,L =H:U&N^ZJR.+[6A'@.! L_]A3_.6 - M3G(%>(58W5:XY02=,SVIF+L_9./+2/WF17%E(ZXOZ'MQB2/6/H2"#] M16&K"79VI9<@6S_Q(!J-65?8_X./N%$U/2:B%?TFXL[KA<@(%5O%;_<>V17[ M18: [YG 'N*92F%:C?I[_CK[[#MQ&90NX)^/;'),C+^D6HO07"MNP,9A2+8^ M0A.O #VZ>#7]J==.63EJSYK"U!OF)&PFC_W#N+U2^LW-)6DW'MQ\L2_:Y\?H M-XN"!6">M#-BV:*9GME.>MQ@5=Q^!&S2^?K GXWC'>H1 JK82&- 46!HZ5!Z M.;Y".UV?Y<1>Y6I$7=Y3:K:3,C^4SKA,L\&2'1_^I^)^KA9_I>T.J X>N:@R M4\\CI#=[XUX\[Y Z(E;$PVFG0BV@'H(8.0W^.>* W\7%808BZNY4 M/6BJDEXA3V470^$P5#;?*^O\/O@M^A,@_N^F)ZHD]C9PV!_DN"-=,GD(S M7Q,&BRZ^)H14'5HH9C.0CV"-3UQ3YH&IE9GY0!]/YD>,O)R24!J4:%7U%*85 ME2FV!=G=2?K*<=ON9C15'B/)L30+D7\R@V6<+&]@2WOVJ7JZ,]A8VV]-OZQO MGZF*,G-ZD&Q^YG1$[EN; ^A.T%XGG77B5?A1BYW::DB'.S?63KZ9D9BE_)7! MW3!O':\*DDI+Y:!05#2@<%"'+=J=/]V] F"^@OGPWPTQCMN95=$H0^2^HEIS M,]5YD"Q[S6&!F8X#S;>?O\(Y.033TM(R#GT_W.,/[QD9BSJ@]QI5+B2\N\#DWFCG>5[)$ M[)A"/[KLU7/)BY4\2F+B"G\G6<'R33/_GVL[:]*N\2L\DS!#[WQV3Z?=K#O( MAK8?4\>#56+[@A^O18M&%=U!# V,WQ/BJ.+O M5K9%0@\ 7.WD^F'Y1.$?3= MD/L*LXHWBS6YC;K9Q:?C6&%'"=\O/OJOM6$![*ABRJZNA+B16DGK).0 MVI11M3+J<4GGD7;92.HC:Y!'V/C&M\,K@'V;)-H$(]JL/I*/V?@.+B0O=2_C M[Q&+-=7H?_2N#]:HJ0&ED^OZ.T[QW? %F!*;$]D+I#5U0IA[.Y0NAV*D]\L7 M6Z,7NN5HZT[($M3?.YP_Q(L1'C9#%\4_.)== :SC#2O6.7W;1E>_7Q1RR1YP MN<';!BR)WEM6!>JR8O< 1BD2MZ!"CWYD3FY@ZT0U#'.O4V%/:NXEDYV MS!+]!0;#;(8?U'O.2C]]QS>'QA!8<:;F*XX6VI1I?!"ILPH-+4\J>5*.]6"_ M'):-:.+GP?K AI+;'8SQ!EL="[;=5HU9X[+L9.PK9JXC4UR^V^;5P1T.%Q#S M*9A)F5.2CAU+1DPQ!I=J[6PMNUB%ZZ()>4(A;O,K,1L L,S9(EVVKWX0BXO! MW)G:=W61UGYP[NLJ-%7LM&OW86&I.T+[Y@\:BH_G&FM<'&36\BR+>*M>KW8) MS$%.Y7QQMXE59R,]=9DIA\R]H70-0)4&'>6A"N='J!BJ@[T+.<:(UW^281 Q MJ>MX8&:_EC*RX12:U!K^;&;ZD8KYP6]@-_(+%ATR9'O%4Z&:S\,.9/.0@ATMTN$/%7C [EZPKY M?E!]O.TJ)A"S:*@EEYR7%"SX['43PH_>S_W9)=?E.$(V!LPS5N5X)%956+25 M[M??2%O?FFO1/$;]N-WR_8M77,':[!O_AHF@F"M /7GD6@,I[-KO<:#$NTVR4!(R]*WJH!ZU+07J74E\)#3FP=3:Y)-9 MK\PW*S:MC66P;V]6N@WVY*C*O[,+?D\BV6.&?AXX5\/+;2-&^GH1X?&SJ=[7 MXT<_$^WS;O?8X233>GS@SB=O3IH-4C,# _#U>3"MCMF]!_"&GK*M6DW6?+LR MDT%GL9:?Q?<\#?? MU!@^*DVA7\<'9V^4S5^.![+->2P;[AVX/BB/#;AE84LQ4]=4R&1:L+ZDR?56 MBN],FTI5GCLN3(6W4-V7>;5N+NRX!6I&S%]&/VHG]STM'CK+:N44AB+LAXOV M"KW3/Y#+B6KUWY"K_'&I["-N=6.WG5_7,$MGPB4\#1T%\AM:E+G^Q*;Q!O]= ME?5[?0 _%I:-9JM]:F+ZA]9_#]TX<3X4S^V?,TX?,J[Y\^W?UZ/RKM$:% M2>>WJBDFB+S_D+(T?$_"2], M.BU<+=9R441@*K;G/*@LUR_;I+)V"E+8(S967 M;'R9@%/$72Z1?'^[ZYT)+QZ5<6M*,GO^'.70Y_L;LP8SP^YV!]+,2=/>Q1$! M,EY2>'-Z_5M-.DI,0?8W)W*<@9V/=?/;V&/ \6.1W@>)"0K_=(IQX!HCV1I7 MIX@XKF2=,F[J@.MD>K7) N7T[WJF\Z[C *Y+6;-CW6[^3X,)1YP+<%K1UZ>'1^::\= M)KVP7$-:>Z3B.2YY>S(OQD0L[ISW_5Z"R;//*M1Q]-Z\#M78\^Y*M-.%@$_H MRNRJ=L+Y^2/S^2$6TP5KAT_F!Y3E[$GD7&9"_/P.S"0[QM (A]4Z7$XY06_J M^%->E@ZF!?]^U[)IVK/\1L62)M- PR.'>R62";W9=B&3S;J*1-9AFV_SQ4); MIK!4T[I8NS)MVF.[]9QK0!1>F$I4UAX$3@C5E:W.YB MVWVQ!_E5KM-[Q0TF%>Z)=8_,:;=N -#GPSLB"?J(1ET(<^FDBYB+1S45 F^J M&XC:?#IEU]@B+OXZ!B)FQI6Z:3 T)I*6LX4O&N?-_U';LOR35V1!'>&2@##:G[X,7IV4: M.HABQ=QA? Q9:;3T&N'10C/'U:MG*ON09>:'(?NK5>6@?7FL'12ONG8(W%%0 M/H@N'OOJ$S&@F66(I0%*%V=+?:?XG&;[(>?'F*3P;N:7$IC1=%T'ZK.7[>:5<]W>\DL$4@!&PJ:=RR/JP(H'D]A[8);7^7!GD\37->& M=46>9;T8+Y@4WY=6;*BG'Z3^B?E54=../=^@*>4AI_7PT^P_!.ZV"US^K*F? M.; ^?]O\;H9_RL:)R8WU4?)9YTMG&QL!;)/6B"H2CB#MNA2;JZP; 6]L%:\W MTK_8D40TFUAID]QZ%OI:ILFHOW !VW*")'X6L;DWE0\SPJHW=]J.0TVG7TTZKR?Q_3D=_*V9 M_AY 02HP3L&!!"V<]S;SAJ-B%:/KCF1*UQ2!M ^M/T>Q&2 &F=+/Y'1'[_G* MC5VKR<*]P'*O2&&89(JM06&HVBFK/C_'%M:6UBFD3?V?_B5)#DX9Y_DK0*(/ M?J.M\1E^!"G&&< C7J^N5:\K&6#+E534G6Y0T#+&?_RHI^K&CMYUFZV..MFP M>H\VW\VV"=8Y76<[A;[L]';/E"1.E'+/ALKC3>[XX>2?>4!F3/5>:J4]E%,C MVI,-EQ!?NMN!"$) <^_-"H8@33+?&!9'AS;TCM1L;<[V6KN>=TD,!H3FA[$+$3.?*=AQ)%7+(0P0SOZB[>]/QCL%(8SQ\:G77ZNXG*M=Q1#.NG3 M+6\C@N(]=7GEBNL=8%]Z&R(@\CPV&[)6'S[M7[ MV3U3*0&#@OM&*@(V>C=(8[#5O#!:[&QA$0&*R8WP\!X/O#GZ9[!\>:E9OT1T MO$@J44#C4>]=Q@Z%/[[;IM\OIR9V A4FB6QF:%-O_("@'%39GE^Q+57X,9RA M,%U0M&4\0J":QN>WNQG#Y=0*T[>)2INF+,-9EU25!NSU]6:]1)G>NG1)U-I MQOU\JH%7MC;;J;/!\OJ,EZ.YM]KQOECWGEE95G)7II6%X9+6J7O7Y(R6]3,? MPDI/Q::4R[?6N0Q5=\A%?L&TSS5])'H<'HPH7Y8Z.)<.?%U>WGXN:=[GX'0K M7=O&!B1L M)??'N&E V%W)O6LW>0"VZ^@L*W8"%WJ, MUP%\%U/!&119KT_GY-6],OIGQRXT0.J]-U-Y@$]F(Q,"Q5;P M:NB,$-BM06O>L$H'SO;B .]WE1O=SM>;="M_")L_.:\MS>OBWG"6P$5B4:4!LI-UN=%#"UO+5)4BGK;\/W&#H MZLJCDYQ:VZAT0@+C.#TW,O+Q43[5YDW3E0]&'D//13':-)3\GT-_LW]:3*-P M0*AK8C37'N528#=J4.<7,F)W_^QTBTE2>\VZU&-/0V1^:FBW'=9T#J M2:I^L>Q)GY8C(3>72/I5Y+95N&7[78/!@MC+ M2BS=IFZ6OM;)!42COHZ-23()UYCKT8*)!%0_L1.:JO23B&@E_>( XE)R1@VN M+&W[C>:4FB[>E9>,#!M=_6$-",2ZA?H?5UX!:/%'NMB8W8[Y=F>T UN*PY&+ M&J?2%LD;#:5[9,%::]Q_H>D^4JC3>"B:/'5MC!E(N[KLV, F>ZK@&CFK7^_C M;(VP-FOB=&!U$\?D=ZL=25"M_5:1 HL1Z+$2T03?H&H?G2=UF-&V]\[/E*R* M\!$'W5X),F25O[,=?EM:T^3IP#^&](O(C*W))AR#Z-MK;#.53T;3T"*K3"]$ M3Q,Y5WN\J35%C5[SKS>_H>_Q 8>V$',JA*.^@Y=@@P]!*JOU2/IXZV!.TG/< MK 71I)[>N,AF:'+:BP_ZQYZ(#G\.H4- >XL*Z#XB<&Q%M@YK,=!K]/?1BE@3 MUG!N]>&Y3F6!V46X:#J)V^_U'UH]&7\PVOP\.X>]8PMSO2#>EY@BL&* I>9 M?^5CLW-G5M0+W=:GO8/7^-&G8QQW^^:%1?/VUZC^@F, Z$O&>7S+8PQO5BD> MM3%Z!>A]_MBY9%KTQ5[;(T4C+Z-"Z^;@7V%\]^4$H-%+@6/M,DV8NB"ZX6T& MO"KL1>Y-9T\7[N7ZYIUKYWM7 +L_V-8?-SH"98[BYJ8^&E#DPE@Q=,6807> M(2EQ7GT3,S7X*KYC5];#\M.AE=J$"DAVE4""M8F,%R=8E_!('C[[CBVZO/GM M6],/>U13?6:7V!O-(+&X]S12UTCI**JY-RK/I7SF^B3-?2*?LZ8C4/@A=*^A M@RDD2N(MJX[#VU<-]P-JES3O:BG5>I.$)7QZ33'[SY;:*;S6I07E2K)KR=;L M+W9MKA>QZ(BH',/EK-3[4O4P"G[]?!@7X?U+RR1*G4KFNK)^BX]B;SM?Z*X* M9C/J>-BP(D=H7_;4SV,/MWU7,I^*BD9D\]W@S_67:.EE0Q5>;RRH4R$C5LD; M@S:I]?>LP^"*W;Q];K_G2=Y_$^T%H-/;Y-%"2V^LT%_D*JD7^5BOM6?X*P>[ MWI IDM:(L%5,1R%0 G]J"]W(GXVZK58&<*D#?&1[.B)!###9-6?9SKE!)+Y. MC$OCQR2Z(\)$\,?T#=TDF=K*][ C* ME'?37U&1I=+FJ>EG@3LB>>/JKHH#$3W3K_,]S$U^B&-+CI7,ZGW'"N5=.7 M^:]K:IDN,OHFK>(Z+<0;(0O+MN-WK89!IXBC/ 3G O.8^SP=:.?#)Y;M--MF MV?]=B?8OD<9^-/N^V"4@*3@=RT7MZ7IO/ZW=P"T;^O1<:N1YE9#=OYBK3F^I;9I*/,O50P T\%T.39W^: & MOUEL9:5F;8W>-:[_WA3RN2B,-5?;SIPN?I1$GJ5W"_1=-EK ;*&>2ZZR&HEI MP\4ZN?FC>:Q,)9>6'O&+QWK>T;%/&'\<[K7^7N;HY!DSR5%)^#D$GZ$[KN1O M)XKPS3+'!&;E(=*(=([>=) IX]_HG(:>5&?%0I MD'X$"^Q^?]'>I\2(RPP8 MB*Y;V]_0+WNA@C5[8.W"P?XS;GUM R$N+_?7BSC20EV06LM&Y"!,L6!%[:*P M: O1N!A1ZHNF?>TC&&U1%">>L4GMLTY6-G;WGI:E&_3615:K:7-$OG,>8H$ MGI"H\%0,T-0C9AUOW^+507>FNP_\8%&WZGN2?A=TG?=DS\T8&U ,W[\ M1'\YS"N(U8]0LFGHIY6 SHB*[HF1EZ/VH1:I#,M%?])S]^!B0 MR1CIBV4#W:D6EVI)!;1OGV@,\,F0JRACI+8M@:BQ<+!\S1Q82"CBUL3A\1CO M )?R:+X'1J?DB5CZPF@75_3'K^4D'_E"I<9X+X@A,]:=&-H,[X''F#;4",ZT MS<9+A#^P(%_N >_J#OL_%2!.+>9 3 MI\5LCFOETF#!#I@GTX'+T6*^IR[Z6Y.Q^T>!-_O6 XZ;)Q+SF\_FE&@+\+9' MT$:@Q(<370FSF1"Q!W]SL-J"3=2-FT_%PG[A8L<9BXZ>.=^_? Y7O.JLA[1()[FB='-<^ M2W9,W-_W^(?H'K1&^J7.)]?;*3X"UC?O5?W\&1<,$-2BR,8>.S.3("'7 SE] M5I&Y^2BG."5+GA^ADV)"W=#T!)_#YF[BD^Z]7:CP>#8O1;EW>GZLN3O?;R\T(6BIYU9]=0 M!+\#EI5;<0?R6L'4\9YN>5O]LRL'.L,ZP2XWM'!]"EH+=XLV';/=YEBVB$@W M*FM%TJH/Z@/N=]#-;U]21J!-SP/+R[;\+A#JY:IUY:)_31+W]J6J2!]KOXU? MV+>@Z 9&=C" N;5I/-CHU)?)&@+MK1^R+A7G60@*MX2L;&RMB]' MZLV[K Z N2'A"VH#]WP*.SG[FUP+'/VN )&'11E/L;;Y59:.LG_C-.Z@#:E& M>,68)"/N]2]*=6[1^L]U0:YK8_QQ,$QCA-(S]Y=<*A.,E5J@! 0D-";] [2A8@TD0X)("5( M"R @TB74!.DM04KHA]]Y.N]WW/^X=XSSL,9^VGNOO?:QT(;5PEO: MFF*GCME%W)R!IJ";H2G"=,Y">L_S/DECX. '>[_N;=FL),QT(6_C5O>*G$&04JCB?D_K!UR;Q-U2 M1#P_--SHNQJ/P#/]IWW! C?/7_?#-6(AB;["TGHA$SWR[O)^T5*4-(JPKWI/ MO[<4,B0YHNV,6(.^"V;Q*N@_PCGO'&%MJ5WD1S)'?N5-V 0IUN/@3G*?POTH MV]/:V#]?+JXS*WC!/IJ.W="FGI 'R?^63<)7E,C-MT*X.F:..LG-_AB4N]+- MJWD?PQO.Q<[I0YV5/$Q_D,>J4':AW+:5;FU8_+<,KN?L:2:\PX:2;G%R""[7 MG*-<^8GSK@D'=>E[R1MCG+X&D%WQ0YM1-EQXZGA?8<$74T$RF XMK<9)^%QT MH>YV6^$)^]]G46BZ&X!NLB+J:,YG9 M0PR-F+Z:R9 M(=#WFWH MCFG/(@MR3.HN[4)GH,(7U6H:M,PC1[YU$$H0%KELVB>LV=,MG1)81'@;2@E] M_J^G"9T%"Q0>'O'B;_?2\/GV^[,RA?]Y_-ANSA4//AH\ M#"9^T0FAN!'5Q15ZM3:N9\G%?@JMFNF#OEY,N:NW/FFET[-_W;460*50&"S; MSL)^Y,G;S-;VUM[K*U.*$<: =T,KYH2\\J$J1+G\)"OVX1]2,\*H% N^A,EV M1A7>RL;,]%B+*EMFYK^*)TW?.PJ'R!^HVH#T]?4=G!0"O*R(@Y[B1Y-">"^ M,Q>FG%%E2I'.K=_!!EHMZ3I'FEFD82A[E^R!V.C%(>2+CRIS4GLW@/")X(TY MKBB^\,;/)):FSQZ.0+3'J\!OM2"2.NXS3GHK'K=@"F(J"FS<=LYMXV4=A=V/ MI>ZYN._?N?Q+H^^D(;>S^KI0:9;!X_]!R?/_K[1:!<(47M,VZHPT=5KZ<<4V M^K@:4K0IG2&G7;@%[F5AOJ7ZA/?[CU],Q!G&DF!3K%:4[Q&G)*Q'?C0J#V69 MGP31@N>_ $MKXY[KT#??/QU83NY6J3%8V9F-4?C6^2-,1Y9PG;/H" MWE+7,@D_KSSGI0_X2%-VRCJ?D<6C:%?RF#=5?E+>>5!M'7"G*K4C77_?;/5:NQ+-A!1K-RM_Q)*RPA($I)Q7-CG7M;WO"T.;_U\ MDT8WL\1<1#*MQ//%!'AB0#J)]QG9+F4Q8?""UJ],^"JW!)IGXG_J5-];;*[C% 3\_U7@.H#]DNW30[F_",U64V-N;] M) G]H*^Z'E4'&A[#?[/():)YN:7O]@&":36"RLNOIFU$\$L1[1("44 IL!M6 MP="BYYFK)[Q>RU<>.'A;[&ZQN!/SHNJNY)M79&L"C@'./:%QA5(I%N.'U+%G M#&6Y7UUA+KJ4JEW G/(L]L;>WRQ.!X,I0E4/4V6UE'C87(C_/*HE(LS@[;&V M8:8H&YX)^#[UIB(EKIUF(*FF3ZB9]2*1H4"X4"Y5F71?6+F61""'#;3( \$B]XWZR&*ER4#3>D?1Q%CJ&"!/=9#ZN.3(K:$? =:EF0L%-?7T#;;0#_II X-@/F^2 MJ$XHK_+8@'F_LF 98>%<9>D"B#<-!RI]!AENF;9.(\HM7!NLG9T*0%YB"5[D M/2=5.N02X?#T.\SJZ!B0KBA#2T8J5;VJA3"AYG^TV"]Q>1+K%%I*+HLIT6-QJ<*VA@3F7 ME?FN@"=JO(1XXYM@ER)+R.3QE3 N.3>P$AKZ*K*7M>#HJ",YYHW;FI65&O@A MIS$)OIY(>5B;+1_P3K ,@M;M?F<)!55AIA""HS3Y SL^Y\\>G)!:OB3IU2\) M2_RP'.'5M1:F8!)_L'$-<.DDM]E ?8-+!X2^+BWMFZDGL M*1^)C&4\(.W] !\ YY&&O^QEZ06O'U.T4L/R%&*HEE;%2R$IJ\#!!C*O.#BM MK'UG#&D<21MQI\8;2[:K1I4=C#DWH !E^VT&8H=$*>>WLDWHI&)%9>,Q=,9O MSGL' 9]J5GG74(^(%S>J("QNIHKLN.3F2G,+D2(_>T>I8>DD[L07&U&9]SB9 M^.P5&FV>GC\,"IFY4MS,0U4$Y7D4?>[C:/RS': /4_A(-[RAUU)H =&DQ(03*0!O0:@:F,+17'KO4K1-G2XS%]QY2/8MDJ"ARBB6MYM-0J\ MF]CCX#6O,LA+)KQ4:N=B"UJK>,(1MQP@'O=UA5[7=[M[X$C MVQRY3?YECBV4G,IT'$-/V$4]J4._M,.OQA9IFB80_@CJ70Z!E^-[W(B6,5$P M^5*NP#4@Q3/MEE^<'/GKM$P[[2=>5$7GN@0US3'?9[OZPJ9Z;1,0<)7(84(" M[_'&:@NWY=6FSGP#W:V&=(FT21J PMMX?!>^V7P,L:L:2@MU.M?'76SWI;^'*OI>N4ZN-BXDOPB;(VX#%?V!,EH@N-\2L>RRU-E&#;LP[QC=DE,U>:4U/&\5T*AAF^=U55 M=_AH7(@KOK3S8D]VY<@B#PL,"9\ 0W%F=MTER! D_\DE3A1ND_ ML:WQ"@V]7*#T#KO)KW)\P[@PZ[/O0D<&%"^D\H6%L3,^H+NIO[;H'\XR:(/_ M_",64ROXZ14/."(7'%;"W'3^&G"7:.+$]C+*UV!'>H:R@M6S\?&+?6/4$#5^X-M,*;KF^[;(:?6,"NK@\% *-G],+G)G8$2H<&.5^V2T5._2,9T/Q'+9JQ=0% M2[AZ1,@(+%G\0ZC]P2DWYO' 9,J]788]JQG-X[O DAT\B=(W3JW4NN?@S,[P MF3KP"_+M[U#0* ,TYCAO"LF._@/R5BEU'74,+E4#22Q:_+DL<$@Q2L?I_OW6 M5F=$EMGB$#1;4PKTQ?.BE%B0W 3+'O12%%"IF& M1*[S;8-)YM^P\X>!O@+1 MS\: 6BY1_4.BO8^F^4$ 0KD?W@W#F8WM>#F-_KGURHMBUV&UVDGL)YYEV>EO M[[E,C0XF1J!B!?@4SX6M[=TG:4YIYZ6.PN*.4-M)@CWHI,R>Q2V3@;\>,@F> M%<0_Z3-)[]Y:];N?$48=]*5=GAJM(&G 2*C5PRM\;M05K);N?SY1]0946[-7 M VZ? !#%^MU6XGY$7I(1GE>YLH1.GU&'XPJF$]YX>_&O)]CC%NM+K&:?N3*6 M5COG/.BM>_M,X[@3 >:+AGQ?RVX8Q0\UR4D\#05S1E' 9+1R*M1-5 MA8@Q-YY\<%#T;@:1R4I%7P/@0A9+"4"F,A=IS'VC&0^XGM/$Z_#TO6X7<.*< M='1W/:GTX#QY"V\U(%"#WC0L9 P&?]B)J[1JK,O!X9:Q"YGEV_ _2K^M'_%>5>TBD#=:R)]Q1ZC/>E3.43YY(PM M/^>O]X,%5T^+=/*!8DCF8\>5?;M/R=2(($U"9/&%(,ZD$ML1HO-V[/#/M&Y, M!"]OE,@WL>*,(7+ YJ/:QTJ<\'Q;FM. Q@7H.Y0"Z;IEWJC)A(5<[U,]5I;V ML<=$(9[ AJADE?FG\'\AXI>5DAW/>I ">H(O)JN K\J@[R!TEN9N9SYI6L(- MXM\&WM<-""V#;\N0R7ZF#OB"A.)#=[WFL^$ Z\L, M]6PQ7>Z47P:PG"D"+T^T*>^G&5!QR&\+Q?J*L@*J."Q;0JQC$V+2J6F"U+CKH$ U_E[2QI=U)RCGJDY0$H4[4R5A'+K+&W)X"?$WKY\ M1MF.*I-1[(6(@5'\-4 [[,^-0K2#)NO97'(&@CDD<1#.!<#PFL(U0"A4C.4M ME?[3/,#AF>#/DLN2=D%OQS=>7]#;BH]D3"@K M.X"'V/OMVFHD3[1_UO&! M92MQV2M2UX#>VKA0&OAC>*Y/ C55$M"R)]@%9^-1*. /G*\W83&"ES,KZ&P0 M;;_^'SY3RW\?U1DMPW4_2*&D)C^0L:!VPP+1]+W4:IX'FK5&]\<7;_KWJ5=_ M01<]7>_!#PK.C!73/A8DLXO\T[IZ/5V;F:/ X'O/$;D_U6^9J\ MSI[:PIY77;K521LD7/L8']4?[1M*GL_BX8$H>#(.ECK8 MJ+91O?YK1SS0[HWSZT?#PN!_VE^3UQUI/LADL7*?I/ZY= M3/.D3$?9\>_E#E5@/C7:OMO4L]_+"URY:>)GPL1:F._[U?S4:,M3M= AFCHG M_7U0EYD@[0 [NUK9U<05PZ0/8I(JOW86/;_Y;EO>VQK4Q_:J*4ZFS;(&:QZ1 M.F[_WK^<:0+,X?2H*!-;9$MRZ[O^J2BLKX 5&Q9"=O#4/ MRK23TW7DY4X\D0BZ/56.@W05:^/^E-]+QNIG$64V#B![3^\&&\&4I9Z;6DSA&.N 6@N M;7P"],$_@TBC\<.4^P.H[F!3O1^="3LCLM _+RAT$7X>/G+L1+^V #C;J!A+ M/%,"\B[!X$7KF%0U69?)S)CN5] UP-6RZ$Y=%IJL+=H2>C7PM^%Q@G>C],H/ MB\,1WF-//$=VS!7%YC_;S1#GR+>3Q9,V<@X/#.#F([>8O9D7HM-T%IK#O HS M9S:YX*-1%RI5+A:^F85U,%S:O8POKC+2).Y')-$"F8LRO]Z#$U/-'MNIL)!) M#5Y(75:_P Z@(O.K-S?E:K",?I2N\W$A+@8_Y^[X^[0HD66X6OEWXBL'' MA5^3V=9$,0;W#V,09S=SH_]1%I_\Q$$V05GR07X'6R0B#]GX"G5S>1/\#PZ^ MQ5&XAL^_B5NP<2P+F584PR]%!CT5B&J7 (&PPC[8WZQ_=4M9'' MZV_O03;(\,GR1>]NK1[!%R^*^KW=:A..YU)MF!!%V,+YHZX**8Q&A+C;U'_G M.OYYX>_S1G#OSND=331@_0*,6\(:Q%^)#%5OR2M%!1DL7PIC,GK.A$]B/=S' M'V>^FY%Y*OQAB*]HN5ZH--IIVCZ$B9B+YH<$MH1+-_XA2Z<"74X@4Q%S82>(9D&&97H&N1.8+L MPW::CA2J@_=)8PDE^P WL5]6Z;CJZ(7L-@PKFA(B-4G="W[5W13 CTQ9OF?F M."GD&P@J;9U\*!WG)V0TD/&@JT' F&+PH=GAC4!D[R13Y+8DG'5O6=_O1C[$ MI42_;6K&U60&8P7S)>$'7UZ?OZBK@3V!GY*Y07A(I9?_3G7&+S5,C28B!(,M M5?'Z%:5;3#8/)WP7GK- :+H9%R:;TX.BP3\K#Q[S>,^P2!7@16\$0B\U%53" MDA!7"FHE20F'S^FRM=VSMGG,WX$'%/"FEK:G#3,R*CIGA1>G-B;G]/ETLG6Z M**AA]N,O[F(NB9_'&+5/^U;+3YBF[[]?D!Y?\Z+A$Z1>K.=[](MT7)O;+BQ@ M/4LJ:\JU7++ZTM[UC@#CR-YCQN#K"PO&0.F=;0KA3U( M"\\4?L3%N%E(.7X$HUCJ>A_D^&5^5*3"F_Z%K@JK5'N(NC?IFP>GXR(LT=,# M;_8*!:8\)$4IMUHS2Q-;2Z<*JIIIS7I.]C@,&U#('67B;1L6G/U*:'S($RL7 MOS/G." )MDT.Y[M$O;$M7%.!P6&:Y]*I?>_$[:@ M,A=Y]8.-O*5HG^UJ,QOH.P.:)=!Q:Y7I2Z&ZD6=J'CHNOPZE=SBEJ?1W\):A MM_^[A_9"JH/@R[]3R!DQU^,7PI,7"&8;3J;)/H@)YTY$ >X045 !?J!-+8*\ZIHTMY#ION/=35<6 @"%RSO[@GHY.UJ&FJ M^IK&OFN( G>W&WZ9TQY*'0T4+-TZ@(;VY067'Q=O+;+"+)$3AVT5-9#%K<!,#<+F&*#[>X&*]8T-MGI=75';CV]OIT2\HEQU;I$SJU M]:Z6C-7.[)9;^A*)GQQ.G<-"1"^L\,U=!;K8UTR*5'F+/]=?]\=H)OG2-ZHY M^P'Y-68['$T=(I\E\MWR2O16OG]!=)D7I(/[ @%< T#6+@;4,>"C2O\,'3HM MMN":PU'J#!9E6F,J\O557D#=6E'",G4OI8#.&)"M;!!3C@O)7GD4I,-9ZN7O MV;SOWKSDYN8-""O#F8=EC'21$QD/\GZ/.?Z"*]V+*=FR"$Y&5%7OQ4"PCS'C M.XG[]H[B$)V'+,P#HS_;DFB?+V\9W^.NU6AK#?C:4 MHJ.CS7 A+L?I?9T?!.^/A\DHN5!'G=@R7S%L+3(T=J88M+2F+]HY4]A]TI!_ M;I;]Z'-$/U M9A_D3NN8G1>_0U*N 7122E&VU"LS/CG"(B)S)A-5Y#;%DB'6??.&W[L;"KH< M^+P35[B3'Q&SK3C_< M-[*1!LKC*(_._N(6PX%:G#L^RLJM_B# NZ[G;)SB\ M2$PTQO5[,:,T#1@$4D*(-M.AY#T:A."2#46:;-UIX:,A74%=/GA#%E: 0CV! M/!%"#/(L2::B>FHJ98 6[<[3K_TZ=_,/1'++;!_F?W7[C=Z;V-DS"U\=?.C= MY4CQL_1UW2 [MGT)WOD!,R5U#]+H1NUSP^;7S0CIU#DP\ M@A3SR9",!"LZN]^O*(,/*5^YU/^G,@$TR]B$E&X<-TM8_>EGR!@^YV]QL7_G MZ!:GZ)CPEPT:Q#Y2>S5Z)84?C448,+C)L'(65"VYYO'%E9E;CWB!P)GWE?0+G)$Q2= M+3?/DJE#_OHI6IL[W*_'E@T>R@3]L(DVR:A9^'/9M*ZO]TX!V%0XP[@W*.X? MEEYDS2$C'B7TX19T@/A*&DITQ4MXSO$T2*$(^E'+CZ&K8<;#"6[\Z!U?]!J] M/W>F/GEKA8(6RX@W%Z5/)_/%P_$JGX4 >RP+8I1&NPY=8+-VL1KGIC-&FPIS3 MS.XH.3GF40:8V[DN5'_;*OZ'I2O> MFZR"9?U:3A/F-(8:AL*W>:8R>]\-WN M+LOGNTBE"P6\0:_"?>7([K//B'.J2H[%XK+!;_.;7EM911R<"S75F:6QCE-7 MQMPYW6D1VMV7N8ID6THD3*A!OS*"GV;#]-'KSH8)H/2!I'1] A3[:!B/LO[' MPH_/^J5_]YL-\/(K[\21* 6:8*O3AD1,MEN",+.(A#8F:2I6>_9M^OCETX0( M8K$_S]/^^52?AZ)Y59LF=GK3K=W0R.)OMJ!I5INTK&DMC=(F8.'.MBL9%+0=DV*B5*&5 1T-;$EA.2,,9%*-*6SD4^4N>Q+O0O(GYA M^B7OP-M*47+F=^U'_>4&YRJ$UYN<;.T3&E=M?EA:01!:/]^#\T"%Z>Q@K/&1 M"LN/M[T ;0YMTL:KL47F[W5C:V,[OC!:ZRU/J_G^LDT3R[VBY(5>/U)U)^M2 MOC_;.3R?KGY(P059)Y;>VM.N@*]%G0-AY\G 7:*W!@)90'6KLL MN ]#!<-T]B+19)F]X7BTIJJC^,ZX>H/KP&[J)F=*]-LF,3JOZ"EM@N6RG\A MHXJ\&=U9%G8=XU=CU+W0"YMAQPQ0H^4H\+.B3=!"NSV;]X796H?2"E>?H%)D M*/G1-8!U:4XWD"K;G=]26_'BH/&)!HU"\[-OZTW>9GG6,ZA['+HJK5-%N)KJ M,EM]WDF?!6ETH&62B/3M.$:LSH+'>QJ&F$Q:][_V;"[$NBLI/0FC\8JWP )Z M'=$]QDV=#5/N9:TO?Y\>-S_]E<#-OF//.:[%S?XOT30;VK_,E:S(KX&_;S9= M]MNG.K17GK\PZDVYV>*(-PA,+P&LYLN T[9)P&/"&>D?_5V7.DSR3VX^5X7> M\&NDFIH4"[:6GOQB<[?O-LJR)%\17$P$(J@/PU@-XEH*QZ M>6A$5&N:367J;]/![I$LUCPH#L ,3NJA2(YI+H4>%^'\4*$T[6[+HS302FU< M3,Q1+;5VK6C[C-:.T'Y%^7$D)_2] MGK-INHI[@Q:%ER7*(*P(TQ=_Z=0TPR.[)@\24 MCX%W5R9]*CAQ@U K^8$(SZJ[QG\V/&4<]E"/B'\"S<_IH/LF.,U(#)ASN[M5 MX5>4KZ\G4B3Y8!=RE%/Z<1AGW9TFLB35%,=W7SO$^N?W[A3[\5#'CGN]2HQ MMQ7JV!!:7&B\)@)2UN_(<13A2F._I!N=\N2P=*>50I8?4X1ZN-^DG6B/!E247(VU2NT5%.># ME2SQ0C.LUM'E_MY%FU2#8(;Q2/H4JF/?A7_2??]8E.4$6+@Y*R%E://->M#Q M])BE61]-Q#,70SXO%.GO^.*PSYZ 9?+3RI>7^4!U128M7%>[W+(H"]2F5P=2 M[,;Y&,37.HY)36NQN,S32->>BC4Q_[* \&ZN#G"JQ:^KX%#U6%V]YP>Z%?!+ MU8D731/N\)/S%S,RM/O)S*,YZL/SGS"WPOP\[WX5[03![H L7 JO."Q^7;C1 MN+QT.3!?.Q8<[!(KUBQ)5)2U>_YOI@8 +'Y^F19D@*&TUYKVL;;7Z9@$2@66 M+H*\;"7KM0*$#V>%G)/??45Q;$N(-\2)*0\H"#J=+XOVRAT1+IS9K]@4G^2C M&*\>M(S_;6\YIS?YO3EA7MIJ=4>F$29&M\9/++ J2]11>Z-0>PLDL$*LY7^J M]]U%)=L:'8/??.U^4+AH6%3W@^[.DY\JMQ-9N_!^_4M44#6K*?B@L*^UT:&9 M?,Z/!8HW12365@8R_7#:5!?#T2?H/@D'5%[\>1 M5E<30D:M.NH:6ALLI1#)$[MUW0^?J0I].%66XV,@9LC'Q1P;X65Z.N_/N3ZD MOKLI[Z/XM!7/'F 2Q5=!TM'>ZF!2>8N8?#5+>U XO(7C@NZU7RM7/T<@*A0> MM1XAZ?:(!Y>5_\5\:\+5VYP%?;)++:M&7^GYY1'^3M?3 ;,]C/+M6M1HLE\H MU16/"R=;A@UN)@Q>K8FR["0\#[(E'G+D&_AS_N ME,%Q[M]J*3L%B8&(B*^:YQ9IH LFTT[HR]<%SII(<>KZV= M&.))9F:KJ^%@C[/I.SXM$PYBV@^@D8V."SVWB%+#M%F$"6GX8A07>0A@$=K? M:Q) @JQP]&._OR4]WH[VFV5U5 FIAU"]+B8[N!W5>+ /:?>?JT4_0YEP-9@F M(1_KE('272U>+AA\6="U5T 45KO4D'0LS1:^$@(]^!0E[A#&S"Y&3]0'^[/> MWV, 'Z=J++("68C/@L[4&ZWUG<])FFHI_SY^=.#)89>($M/F-TV]R[O1F=)) MC>"*A]UI5\. '[I9!JL9:F<]AEAG\<^)R\T;FQVJ_>;TLHHNPE/W+Q(1;N2Z M!IZJ'%-+-PMMVG/C)4TIM@*=O"\51D. D/9/.LRS"*0QZDAN)\ V 79?RO:> M6\A]'"QJ5VCOPAR;NQ[_2T^]<]8=$RTJ[A9G?,>97#HL_&.C&%OV5P!&R:4V M8IPP\WKZ0BVT0J.<$!S$Y%>LRV>HY^W-ONM+TJW-D\3<;C\H!]@[Y.C/Z2F% M=AXGX*\!<:RDN+G9E)@):(BPEO;WEL(^C[7O<3_2G9L3HP59[.DJ_>U9^.IJ M[?%+O5QQUP#R=IX5:P/S)MQQ&U5VL6)IN9LTH[>%LO-+HN;"V3V^$)B8;_9M M!SO:7]\O2X&B[@>77X0U]11_8MDX=*V;X;\*''TPH3X'C*,DDW1$QO/B6K* ME:O'-S&6%S]U^??8],SJKFAX3'2J 5_8Y5>K?C'[V%\/'HC+O/L!:W7-O@DO MA"4;_'.W/)-\3"V9VPGICP4"3!E/19 MR-W+K[O[ODJ,EM",%VV(^G'@*Z_/#Q&.#DMV<6K??CQ,^U2P^]U//*GXW3K8 M-QL&5XH6EK*,51S]IE=JZ6JO";.-_\.A*-C=1:&I-Q='U76/Y D;KQP9@%6) MXX+HZX4A00X+N[OI/:=6X=JDN\Y^T_"ZF_?\@XC8UC:8CH^,XX:V9T? MA(# ]_4DQ]F?/(@PCSL$W%?F>KIP-72V&O,!KJM+2=8C4\C3U-A.9MV$)RTO MMC6;GV\#1@M^30E8R[9Y%ET>S%D/P2YH68Z#P:+[ MD N=;RYS(MB8GZ!A:7_+#R%WM1Y!43N<\@;AH?"86"2OE>L05OAAC[;E)39(LTOO9_L.UY!A6P[$-2!); G9#"I#YTB.B!^% M-F+3Q$^DKQS"]M\O+'R<2U/Y^AME>*.>*BW@P0$K.,,;D& M:"8[?&P0XWE]6NRRV%\3?/&EYU@43U%(BJ?,JL8*ZB[1BI27-T7Y,?3U"E+E MVYWO@AW2Q1HTS=I+T<#E%E[9VA \!*4GT&WS;/R"[;*@TO7JP:1[R>0;^(2P M>DZS#J-,6FZNL6IC[:MY>X'X]<,E-*\Z6$)/%HFGJJVP69I#@UH5\UYBQJ=5 M&^622NT8E3)ULXD21 !"C&' V9MQH[-=M"44S&A- (U)]O)]2RU&:ESEAQW! MK%H'>Z(B,;D(-$BL@H;VZ'10:J.3^H(#3Z:)'TT)LJTQAT)VT6>@W[.;[UE+ M>_INO\=JA(J_;WK9&R=SBY>]H)QYWE.DT[4M6+=7B0'=*G"]F=B%_I0'.,: .H.65YP51]TC=APQ.T:%P\4K7>)569 M,=OGR?PBUZ[Z:P1.MJ?%R&BD.DE?JU;Y@X"SXMF6Q-&N/S#&W%%2#>.P9 MZO(E_KP5017PB>J&3Q_''RQ1AXPMTN(YB][0JQG!)Q JGFB3>C^WAJ&7-)7 M0O5A5!TC 52JW1:T =8,JR8W]A95@IA8Y6FV:$FJO\*BB"?O7 M792\7/J10?9-QSM2C F0Y5P%"D$%M&U^&349$]%/EMH.W4TPX/&H\@.#OCQ+ M5DUO"^^AW/YOJYK>E_:W2\=U...CR"U&0S<9-!A1Q=2:N=N1O %O*6,KEA%X M__ICSZYA+P^%\FVG&-0U !TR>C-:44%O9*(ESVMIMLY(2EZ.>E-F6(&.TW\6 M875FK2WY69A4_P.97]O[O<5)$PA4.% MQB$YQC/T.Q+T9N *)DN6XS7EJGC^83Z,@]&@IJF/[#J%]J85JGX9$M=)C[84 M95S<0%+A-B=JA!].M,L$BY2<)39JCNUGF5=_/EA)>1;QI/ZMOR\WDOYZD<6#:'@\!%\Z;:+?/QL4]Q_&8O:IPW_92P*Z1F7!>F,;*SJ47[F1ER(;.B(*5GG3L8NH[=R M-#M*YDW)2S_P,KMS:3"+!B#H>U'(\*(H[B3)Q M.8+T6> ?4<;YCG;D*P8?L>>)8K#=F:(+68(15C?8^\4,T/EKGR3:%L:?G$MR M@8Z-]X\>%$C?,L.*RV0??"MY^H3,*UK -Y"$GNC??M(5^X4^7JGO%#&WR]0= M\@27G(-7BH$'J_5FFSR^_>V[6WZLJ4&N0[[_,ZH#&J+PMH=?\"E=HNR#H7B1 MI1YJ#.$0%HM#2>D@[@VF!S\);12N&KW%1]',\T6#^YE:M(T.&?%&P"/BM4$D M=9 &G!#I#$53?V@WPHA2]H$A&&L)0[SP5+KYG2^OS]7K1 K$_X\Y\&M _#6@ M87A18A)\9$W=VUJ6_76>D*\WXRM;VGF)FO-[N6BP9][\K7: BDG!*\-6U4B9 MQ89_'"*50N%JX0'[9E"\-(\>)$&6DU<.@GE>,AHRVV7*R@+93:.VK@&D0?YX M 5N<\7JBY#[I9@ L&O*Y[1KP84BMM=#:9$LV)^.V5T=[J)-.I$P.TJC<)D A& AY%TWY&R_AU6]R:)ZKY@L.6IJYAB.MV($@4LOQR3!BC_1:Y.NE""I M;_K-;"%C3#\3'5)NL]?9YE!07-[7 )A,P+?U'G0OHKJGV00%7:8?@:M7:/OI M'G5_^_K#D Q ?EK\ T86(DIXMKQ8BOMY!\@!<@[U_A:)?3WM45YX1U2D/*=A M-I_/),TD^#/+CX%?VECDYR]ABH%PPGWL4I3,B2!N>,,T +P>XQZDM J-V'/S MJS_GTZ.7*$IF >YG?D\\]1<\04'_BH2^E>N]HAU;F=H5!0J40_4.A?4\&(J_ MM[59WKAU@6I$D>K\L+9PZOL5V=JJC<_4TI>%2/9M+@I%9M"901Q$V%>47I".K^YR7GDZ 0O ]/B]R'&Y+]8CWYH<0^6D3H^8$&+T9> M ^Y XH[BI'1\$Q)RLPT;DD'J&:I-W??9R[FC4H=S*'\6M*-;+PLNE*]NXI7NM>YS5J?^=&\9EV_)<:)S:3XV[0TI9S]:QU/8-#D/:[+D=Q48J[JJ;"X^9!I'CK M[+[*X,#GC?^5HO"Y!NSF2@EK&>+V:@/9W&@RN?E1.6\9L28D?B-KC72E8:=U MBO%?PH!+V).>8(/^LYF>MA'%0.VWN/U8[-1>WU!#8W?=SRA[=+EP+AD9,S#YPG,V% MS=3+$:9S"0."ECO<>JZ>C(E("FOULFJ65G^?@-2L-2-:&R?YM;H*[-XGOWZJ M#DT*/\T&1G/IC"ES/0M2)9"M<#%OVY#AHZ:."ZJAM1J-'76=$S,F'6-@D0?? MH4NT\^A*[3().J)6:2J)U/+;#O-7P^B%[ @?MD= &8R"FV5SX=6Q9?.,K[#( M6O?:ZHD'HC-9KMPK$M$3)271@O=Z@IXY)CI(O*@O/& M]^9ZLTWC'4D\^4PFL.AVKAQ&WO.RCNEX 'Z)F4#==PU@0W)",[HX9<:79F8S%G[?_;4GTR=>Y+ UEH0#2#97.7JM>R8<;<(/$P@*O[-?UXA(A[P U<>NP]4$6EH MMO"LTV5;AT=K9)8PW?D<\F]-HY\OD;(GF7EFF(OQORHC[$'J2+SJO$"TU"G$ M5R*P!!K3*X_8:=Q\OXKUAE#&A1=%=?HVCB;UV/VM^,M5^_4SM1QA C=G2$C M<(A3/L1.SUF-'0E:V_3OMB%'^'XK8MBC5.RJQ&4 VK\\O>(/%FR7M7IMV5V1 MDM.^:SA4KG_-PH;XG#GHY(2)=J[/7C+E07LMA.6]W>E+&HJ"_U M*C4*)*[B(-&2U:RC/=*<_!-!$O9%M4E"B+;=9X9U6?3&[^_1\T/>4K1ER5F( M^9.QQ7&9W-B2['9G8VV"(SZY%#NB9#)>(Y4/]M:?/AS8+U1/WNERFI[0\OSY MH6_M+GN,RL.)2/CAU]IK@#.,!5K>9W(E,BT"UU5P@C"!Y!=^%3C[2DX?3[]_ MOKW:+Z&:)%3=7FB?Y-_O#BNYP24EPG\S5D8XOP0D]U9VH\40!,MA+KIK0O9V MDSE"=B"5 2!M>,AGSSYS#[O_(02(P)/UOL*P^-PK$.A/ZS^N0 16?(8]SU$6 MGEW1QJ1YT'^IN#/"R!*"I^SO,%+FE,/5+D== WH@\:PUB.,YMVHZ6_*-1:ZF MTQRK7*'%C8&]MO=1;^3M*?35'"@H=@CG*OA3O.%DD"2:*_9"P?_-,:5:-Y+O M>Z!NT.HHC!W?)<OCH7Z6X7]5"G\-X7ACR4W!F#77[>JV4[5*PSQP\)D>!E6((%GT5V MM+#0A5OID'/91NJBC51Y3&?(.#]<9.SJX'Y'3ET<>7UWV2+,TTB9'1*!I"(P M859'YX!2R[544#]#J+KX HCU-6.#/.YY=A(1+S<[U_-^0CUNZ"7>I .CQ$CP M.)X>[2MDR,):/CH"+#FT)[LDOIL;?B44WP.B*HIG(',+GMA\;4@V6"A\F=&N MLK(;VA?R*$,-IQ2.Z-#J:6YEEP[A\A>PG/5PB%;S]O,[=C&/?4I#K]Z_]FME MO*FFTQG&T8.AIKM0K&O_3?T!J%'!=GJ46^-D>2Z9-K4>)?R!GW_P):.:N)W2 MD_?_#D=N\$_M@H00J1B)A=T>%(WN_R!U0QA'*I%?LYNY/)H1_M,&W):G;'SO M:(*N7*,6-:?GLOY>.)[S0[?[+!#;-M04V_^TL.I3ATOWW?(Z=D[>-ZFN/48. M4N8K_YZ[\><0]Y=!72J"_]B#8S0 _J9=HC%(/H)EL>VF:5RI3<]70H;9U&I+ MQ('R[QYO/R'O)^?)F8"Y.16R,9NK!76[GPN]C"WFO"?8'.4#T$4_YPV MI74+&-DY_K?Y#F5?2+(XOL/[UX=(>8'Y=OA \_G3H+LS5_?40O(6%O-]G"N8L3]_=[V"*" CTO=6!C@?\&ZJ-R4N\!L"I"E8R"R=!THLL+6.% M=+OKN26MT<9V;>]WYMAN^3GS>2VVDYYWR@^S;?2UEDB^@]+38!8I=!BM=A6BP#=%#[8P@^)>I5-P4,E^BZ6VX) MC?AY-F>4Y=0$W=]#0W,$TH-^DTY!Y^R>Y5-XC4[2U=@"' O^G=B+:;F?$YOI9?X8&MF5;4,^(24U MMG<(N>,?/?*^'U)V_E[%$L*"/\\5R%#DS%A[:X!R'&.*BK_&.&D>:A,=2Q)*(P?1_.UT9 M0QO)XA&ZP6_!)AS4!I-DT1Z'P@H3O:R%-4YY*W;^LWL?@_. ZK#6) &BSN2D' MOO<%D]R 13D6-LMKAL +)"EAF/7$]U7P9F$-KJQ7I>77 ,<&2RUW J*)5!#N M@GW)@'Y ];K^Y5/GWJ7&F.1# ^H+;5QS.*Q'PH53FO;7B?S(5%_[F0\6+>C/ MP)O,HJ/'M#,][T;%4J)8)=T M$J.GH*#9T==772F0_Y_=)/E_V_]M_W]HU->S_PM02P,$% @ #X*+6!\> MU8>V\B-Q#_ M*E-.U[M([!L26#@D0DA"FY"(;)KV3[-K6/?,>N4U": M2LDXAU/)HB4%<&RS;3JN:]J&,>BCKE$I)!(?6I;C6*[MML ^\=M=O^7![36\ MOP]&1SGWVW]Z-1E!P["L!V]D66?!63'1,FT' DF2C"DF$L(M M:SQM0"-6*O4M:[O=FEO/%')I!3,K5BO>LK@0&34C%34&?4W!)R71H+^BBD 8 M$YE1]:%Q'YP;'>103'$ZZ%O5N^"=BV@WZ$=L YG:2*&+)TN!TH?RVV>E\)DFVC/TAIP2Z<^%BGN/%_B29%K)+42BC 59,;[SWP5L13.8TBW,Q(HD[YH%!=\9 ME6SQKI=S9^P/BJK1/$4_*8-PMD3E&FM!8$F$1\/WW!:R%![Q2V?,#Y;=TMS MN> 13HY_O9R<3@)P/=/I6W/T7/H,.$.$1N4C6)K]J\@V+&-SQIG:^3&+T#24 M^/%-Q[6]7M_2W/\ETK]RX.AF>C>>!G!S#I/IV?AVC \%H#!)TLLR )!$PO:N8H32[DH*#V%!98R_6Q?!'SI"O(ZI%+2,LVGNEA#2C2Y:I4N#NLZ%?!I?!G>'! M^ZDPP?,\P[4[7<=K0C5V[&[;[=3&KMOM.K6QUW:Z;FW:<5N=^+F1$I1$*SDF:4;_Z43_BQWANXR+\=;[7 MAPD]7Q[QHIB0M1(5H2@E.>6@X.CC?UAN\MC1: Q.=F)="M7J20/RJ,*2DRV5'75!L_-KF>+N)K\,&OP) M4$L#!!0 ( ^"BU@)@AF-;0@ -$E 7 86=X+3(P,C0P,3,Q>&5X M,S%D,2YH=&WM6F%OVS@2_2N\%+M- -NRG&0W:Z.^V0!V;&I+#-S-O9FB?_J7;O2HR7L0B87\= M?_Z5)2JNIJ*P+-:"6XS.I->.!CT^MWN MV2G6NJ@GJ6+(CH(P# ;]P1'K_SP\_F5X-& WG]G^M_'%@9.^_'HQ_L?-E=_V MYMO'7Z\OV%XW"'X[O B"R_&E?W#4ZX=LK'EAI)6JX'D07'W98WN9M>4P".;S M>6]^V%-Z$HQO@\Q.\Z,@5\J(7F*3O;-3&L&KX,G9Z518SN*,:R/LA[UOXT_= M$TA8:7-Q=AHT?[ULI)+%V6DB9\S812X^[$VYGLBB:U4Y/.R7=H29 1X_D+GO MSF5BLV'8[_\P*GF2R&+2S45JA\>]DY/5D):3;#FF_-&&6N3A@IFXT>;K!I9MG,2U5ANRF?RGPQ?#^64V'8%S%GMVK*B_<=/X*_1FB9OA\Y M:2/_*; TCF?%O>WR7$ZP..DZ\N/UC:9"W><2.4)'E[=9S*2EAV&O? T MB(!3^49:D72SSTP::)%+NQAF,DE$ 8$?WYT,^H>CTX $7TFO&+$C]#/@NKBZ M'5]_NKXX'U]__?)Z>&W4JPW8(]7>%,&57HS^AP/_!EM>=]@EGTG04X_]QJU1 M18?%0EN9+IC-N!V^H!9K$1N>- C* J>WPZX;V:2I>[!W%O9^?!?^U!\]?KUF M&9\)IL5,BCGXT6;2L/.BJ'C.;D6IM 5ELD]*3\&IW;\SE;)S/>$XZG41]]B^ MS00C[ ?]T:V82&-!B-8-A*.##DN59B222A-CQ04(@PDHG;"_<>RA%PC&#B,N M'NT.6H,GT?K(C[I% (6)A#&$&D2F_$P[9Y9H&8PF4 MP98YQ0KM00*QU$B<$$,J-= D$9K-,QEGS%3TLIH_%UK4B] !IM* X E(GVJU M,*6(G8*T;@G55()CSC M8=&B#<,.6?/P^=8D?RV %T&_PJ<#4T(QWE%S@T;M,! &'"I\P4K 2%9G[P"Q#==L;I$W.3L317<],8?!6'C-.@UQM:=EIV,XTRC[3=(=,=/6FZ\=HY MB6_"GT>F-DY-PN2X*DTE/CH$KAG7PF$-[&24"\=. @:.Q*8*6 I<^ M)Z"M7)D*\RB@!#U'I-Q6.23"0]X- MC_?%@9L:'B?^D_\H*?D5WMBT/J-P:OF MPGILO5&Z=I&*39J6+CM&9 @YM^% M)'7XD[,V/WC*VI?"H%+ N1UC;6$4G#?FE7G&#)!:)(!OO9&G255I+(" H8J# MPA!2HG#K4()?!7";!'S)"X/5/+D"O5,3!#V4"&;H8E0N$]>8F"HR,I%<2P&F MD9[-'2T5M%)EB&&=?QM'QRYHT4Y (30(;E+)X2EQE7/B&AS+*;%B:LSPO-]. M5W@7"1($'6"^2'8A_&N'B+9TB*UCJ//0,;:/OJW] SZ%FI!XAJ,BY$0SW,!E M*/UB<,)UTM@%GB*Y+V2)NS=M2U[J3.BLXQUL3;25OAV;W=<'*BN-)@S6HEP3 MQTHG3@&7R">B0 K)X21X(DKR/A)!D>(= 5XJ2Q#*#KE"_*0K7,UX7KD((IQ$ MFB*1HN$L4"H]3HC+1+$%(_B/FW.DLSPF(IJ-S\21JNS3&GQ_NX[/U7X)*C/2 M[Q=9+&H*&.?,PB,!?4:T^.X8+WDZCCTNC_&EHKG.;^[)1B,^(WJ)K54<5YI0 M;%'CAE6GREA,I;:T:5M^1Z>"K7RWLV%*"G= 7#V0KA5'@29H8AT[B,21U4.CYI&%JCJ[T1>%_\/Y#O_-42[$.MUU7?\PE6?:W"3 MQM,ZJZBA(&Y;>Q5 9*]G9)5'F7ZI&D>VMTJ;)9&[ 2PY1:MGA?@W%!4II IZ MGDCHYQ;9AT^ $0PQ#OY2S=$XLOB]DE#?.6U5Q*X_./A#%'?GZ(0HJTK8C"I3 MJG%C*0!R3<++*FLN^!VQJL]JCE==/G:M<],5/VV0Q4_E,$,$5?%+??.@Z7L6TS-5"X.D\4SY(^9HCP' OPOZ] M5[D-_ ^O==W-O'5E83TQ@KL(W8U5GO/2B&'SIKTU623S-Z!TTTXG!I:U-MZ^ MO+*J&?"7^&YDS0?:3N%E:*1U;[_'W)WLASU_*4M?0NA&SWK_T!_=)LN#$^\B M[]77N9&R5DWK18]_:"-6;]V@U_HFH;4V69&N,QH4F\_=N>;E,$*8WG7G@.R[ MWTYX1?S&C2B/T'!55JR=N?F^I'ZUR;:G.SKJA?_;)SSN]TZ._J G#*PF]WT1 M5WT%\K@$5?K\_)(>]PJ*GJ,AS%E87],_5^/O>M K:.RSU$K3MB> 74W)P7"# MO:T _^7M 7^H_K. KK-)'3AACQ*ZNV1B[_KNW]N>)3#!PR_)_C_M\L;<\B?B M;ZOIC48G0F6U*_(O,BE2=G4OXHJ2&OOJ^]$_[?#JFN[?^-M+U/^/X#]X@'_@ MRO"F9MB1_J!=QF3+VCOB\=U$JZI(J$]0>MB0>>LG..L/ZFH,'?@HEX7HUI_[ M:SV#_YG/6M.P-K3\35&)[JWKZS:>HC$8\IF226WGDY/>8)5Y_%C?E63^MTKN MQT]G_P)02P,$% @ #X*+6.Z\IBR," O"4 !< !A9W@M,C R-# Q M,S%X97@S,60R+FAT;>U:?W/;N!']*J@R=[%G)%$_[,25',\XMC-U>TD\/J6= M_@F2H(@Q1? 4++ZZ?L6("5*MAMY:F=T[64FL@0N@,7;W;>[D$[_U.ECXSZ.C(;OYS Z^32X.G?3EUXO) M/V^N_+8WWS[^'EV&LLY,W:9B0^M&==3F7>L*D;#7F''F!G@ M\9;,?63^."Q[',IYU,)'9TW#TY60]I.4U78\H?;:1%QJV<"UJ[ ML6J4":Y'H;+I>'N#QV86];Q$Y;:3\)G,EJ.W$SD3AGT1"W:K9CQ_V_8C^&N$ MELG;L9,V\E\"2^-X&[J_'V#$BGO;X9F<8CO2W@_(/(:SC#I.Q&,TJN )-Q19 M"'?D4&4Q'E[=IS*4E@W[W<%I$ ++8H\TIQ6?5'XN#53/I%V.4AEC#05NA&YHR^M\?^#?? _SBZG9R_>GZXGQR_?7+"R/^M$K7 M;78K*>) +EUV*;!\FT5"6YDLF4VY';V6X?LGQ9:=W] M\'_0&CR)UD=N7 )@LR6[R]4B$T@5;0^:]FC%"JKF"CD&.G&9,YXO M69E;70J<#0G$)2# R-D,G[0$+ F/,*29FH$VK/)R#P1R$0EC"#.(S/B=<,BN MUC08BZ$,MLPH.F@/$HBD1M:#&/*@@2:QT&R1PG.9*>EE/7\AM*@6H0/,I $[ M$Y ^3VIA"A$Y!6G= JJI&,><8UK,PF43ACVRYO#YUB1_S8$70;_&IPU30AR/ M=>.YS.'C,!12%=Y'64G.#1LTP$ 8<*FS)2L (5F?O *5QLJ\%;)F:VMX4.QR M8)LDR@P"L*D"\&X[X_2)N$E9DJF%J0V^CD/&:=#K#2W;#;N96ID'VNZ1Z8Z> M--UDXYS$-_WW8U,9IR)A9-"F)D]@, M04N!2Y]CT%:F3(EY%,Y:91[T0BL4E1@V[ 8QP)&\T!>W2,EY*@?SQ$IMV4& MB?Z0=_K'!^+03>T?Q_Z3_R@I\>7>V+0^HW!J^("W">FR\T;)QD8)-JI9N.D9 MD"#FWXN4+TI"M4Q$-!N?B4-5VJ_'0<>UP>XDM%*FU61.X&L.0,K9X5XC]0 M5*CH:@'/8PG]W"('\ DP@B'&P5^J.6I'%K^5$NH[IRWSR/4'A[^+XNX!GW#!!PNX*X/*5&W/;3*?JVPNB.!R/JUN/G05KV)69&HI\'21*A^D?,,1 M8+@78?_NJUP';M^E[GAUZJ[5K2L+JXDAW$7H3J2RC!=&C.HWS:W)(JF_\Z1K MU?Y] M?W0;KPY.O(N\5UWEALI:-:L6/?ZIB5BU=8U>XVN QMID1;K.J%&L/W<6FA>C M$&%ZUUD LN]^M> 5\1O7HCQ$PU5:L7'F^LN.ZM7&NYYN..P.C_ZG3_BNWWWW M>[5A8#6Y[XNXZBN0QR6HTN?GE_2X5U#T' UAQOK5-?US-?ZN![V"QCY+K35M M>@+8U10<##=H[03XR8\'?%O]9P%=99,J?$OV M_VF8'ZKI'Y#_<,A_%;E$;?MW-)[L1J,OH2*[S2Y2*1+V:565?O6M:9M-J.$H M==6E7BB-:I6^]?M51%I8KO^PV>MK>G#C[SIAEP<6.MS"/W!%>UUA[$DWT2QZ MTE6E'O+H;JI5FUC!0 ;A0 !< !A9W@M,C R-# Q,S%X97@S,F0Q M+FAT;=58^W/:.!#^5_;HM$UF\(M'2PW-# 4RY:X-F>!,KS_*MHQU%9)/%B'< M7W\K/XC)]95>DTXR"01IM;O?IWWAT6^6-1,I$1&-X6WP_AW$,MJLJ= 0*4HT MKFZ93B&0648$O*=*,<[AC6+QB@)XKMVWO4['=BWK9(2Z)M4A*7SH.9[G=-Q. M#]R7?O^5W^O"^7LXN@PFQX7T=#$)/I[/2K/GEV_>S2?0LASG0W?B.--@6F[T M;->#0!&1,\VD(-QQ9F]NUI5HYP863ZC7O.5S*G-JQCELG M([."KY3$)Z,UU02BE*BMR^#4&J"$9IK3DY%3OY>RH8QW)Z.874&N=YR^ M;JV)6C%A:9GY73?30SSIX/8MF6MKRV*=^I[K/AUF)(Z96%F<)MKOVX/!S9)B MJW2_)DMHOJ*<:'9%C>Z&UHA3HOQ0ZG1XV\#G3F;UN40*;25DS?C.?QZP--XN5_ ]IXHESX>%=,[^H:@:X6EZK2W"V0J5&U^')7Z_@AX>&-G2 M DXH>8R;L^N4A4Q#MV-[(R=$GK('\LI(UW:N6(Y><*9W?LKBF H4>/9DT'&[ MPY%C!._)KPASAZH[T#69703ST_ED',P79Y@'%\O+\5D P>+^N+NSC]X +NVE M/;%A.9L4?GK=OMN&\1+&T\5Y,)O^(L?!_'F=\I]OH:A]?^6^@,4I!&]GL!Q? MO!F?S9;6XL]WLX\PG@1FI^.ZG?L#\=ZR .N4PEB( M#>%P03.I-)98.)5JC378^@,2J0J1A.41BNRP8@ 5,5;BWPD>4COH>FTHBK%, M8*Q61+1A+B*[#02F6#VV1%$TJE U*:P>&74F83KN<"+76/UWQ2=O>(QG'3-\MQHQ%\C&6.#@)0JBHXTC92P;FS, MVS E5PS;D@T?B,XE>GRN:,YBTYV,D4G*:(*FT+0I?K!($A9191 :O977[<)8 MN /<,KRW(=NH?$-0B9;0B.R*[C*R$2&)969Z65.\%C(A5)E9$A4207-K<;&SWL$G(;?(WHKZ/S'"#KI-]T4="W?X?UX#A%E%9[+A'"G'*^ F)O9QHNC?&Z:HF3!RP\8-ZT?D M&#"*O?Y1?+SG]B:J]A%5$>R]ZO:&)@Q^+87N#8.=G\#@7& FK\L,Q!*@"1,8 M@:S,G)I:PA1RFV$N&!;;9IO@4(;'$!5F/VYD2&O>KDJ"P/'.K*/"N)@7BNQ! MJ0TO+T%FM,SZ_%;NV ]5 7^P>Q<#F"8AI_7!4*J8*BN2G),LIW[]3],;T+3-KJMK/ MRKY70M?Q'K@I4EC"*Z9PZM-R72GMXT#E/6VR5IFO&6P,C0W]$G4F7&YK)NO/ MUE:1S ]Q8O]D;9&V;PZBI3.EX5J4A+GD&TT/<->CX.G>6-8)] GS-5.ZWM %E'PH,Y_\58>%8KO&N >*;:C<\6P MT6;8:?\#Z?B18GKD*:.I#^-,,0Y>]?7G%A2G&![J.GX//OS(5--L+>E^8@A) M]&FEY$;$9KJ1RJ\;1./YT.%&U2%QR!]RG".MZK-[,.GT&QWWX+'4[0=>&5E1 MJ^RE),%QQB=7DL75Y0X&=J>W+_KEFENTR?)!6O%D[N1?4$L#!!0 ( ^" MBUCIQ)I=?@4 +H7 7 86=X+3(P,C0P,3,Q>&5X,S)D,BYH=&WM6&ES MVS80_2M;>Y+8,^(E68Y,*9Y1)'FB-K$\$MTV'T$2%-% M"EM5?WP4/'3GK MU'8F,_;(.H %=O?M@0?V?K&LD4B)B&@,;X)W;R&6T7)!A89(4:)Q=,5T"H', M,B+@'56*<0ZO%8OG%,!S[;;M-9NV:UGG/=QK4"V2PH<3Q_.EWS[S MVR_AZAT<70>#XT)Z.!D$[Z]&I=JKZ]=OQP,XL!SGC]; <8;!L)PXL5T/ D5$ MSC23@G#'&5T>P$&J=>8[SFJULE0ZS6GKPX61,V9 ML+3,_):;Z2ZN='#Z(YE;:\5BG?J>ZS[K9B2.F9A;G";:;]N=SG9(L7FZ&9.E M:[ZBG&AV0\W>.[M&G!+EAU*GW8\5?&YE5J]+I-!60A:,K_T7 5O0'"[I"J9R M0<2+1CF"GSE5+'G1+:1S]@_%K=$]36^U13B;X^;&UF[IOU^Y'NXI6='"G5#R M&"='MRD+F896TV[VG!!QRA[)*B-=Z[EA.5K!F5[[*8MC*E#@^6&GZ;:Z/<<( M/I!=$=8.57> :S":!N.+\: ?C">76 ?3V77_,H!@\G#8W=E&KP/7]LP>V# ; M#0H[O5;;;4!_!OWAY"H8#7^0X6#^O6;YY5M>U+:?N:GK_N5H M9DW^?#MZ#_U!8&::KON F?O7,M_O.XQKLE1$Z\/!R,Y MH]%283-"4(B(872+?5;@$8%+%RS/S8[X,I(Q'A"04D71D%TEI5M;'>,&3)GI MUG@PV6@CPMY -8*AJ[^SB,*5HCF+S5%E- Y21A.X8 +/,H803)($A52C4!6N M ;\;U!N0+56^)+A*2]C)ZPKL,J_1/Q++S)QDN^*UD$D@M+[PFZB0")I;DUM. MU]"/M)DQ"=3 >5(L,W(AS8N9Q1H^"+E"[.;4O\?\VCMK6J=UQC%A /*M8N1S M"5=,8(';SP^]4[?[?]X#=+/*S63).4*.:<--1FRR1-&_ETQ1PR]R@\86]2-R M#!A8KWT4'V^PW>;4)I\J@+VSUDG7Q/W'0NAN$6S> X)C@76\*.L/&X F3& & MLK)N:F@)4XAMALEO4&R8:8*4#)>A5YCX.)$AK'FC:@AU0>"&<<$6BG)!J24O M@R S6M9\7@-?U;O]6/WO.\_N@GYI$G):+PREBJFR(LDYR7+JUU]VK3'A2LMS MP= I@S,"65E3!I\LM:P'2J96C.PER&[&E#)F9(><'4#A+O*WXM R3%/5=E;Z MO=)U'6\<-TT*&WB%%'(^+1?5IJ>NW3EYMHM:I;Y&<(VU_Y)/72T M,@&^8S"K?*T4>[;I)ZB/Q7#H%G]? >-^ZG*O")W<^>3,+2KM[D'\LF?:W.4R MI!M"/ZYW98_=^O-](7M4D^\I&$\P?]WDS[+*QI=4'_::%V M"BI>LZ('T/H]=X1=HI9N^'=(H@]S)9T.;A\<9F5.K9*8DP"TR,#(T M,#$S,7AE>#DW9#$N:'1M[5UK<]LVUOXK6'>Z369TM=,DE5//I';RKF< ($%*LAW?XK3*M(Y%D;B>RW.><\"\^EN__Z98 M\"(1*?O'V;M_LE0E52X*RQ(MN(6K2VD7[$R5)2_8.Z&US#+VFY;I7# V'@U^ M'HSW]P>C?O_H%;1U[!]2Q80]&X['P_W1_C,V>CD9C> _]O$=>_+[V?%3NOOD MP_'9OS^^<=U^_/VW?YX>L[W^/9IN+!Y]FR8*67$(+7IWM$KO (_!4^/7N7" MJTM71JU2>,V-7F?AU+^=Z+HN^ M5>7D8%3:0WAR"%]W[KGH+V5J%Y/Q:/3C8#UX\;ZYI.5\T M%Y6;W$2+C%MY+K#U2_J.^H ;RW#;3!6V/^.YS%:3G\YD+@Q[+Y;LD\IY\5// M78&_C=!R]M,AW6WD_XO)>!_:='U,_-3PR]#LN31R*C-I5Y.%3%-1P U__^'E M_NC@\-40;X25*#>L1I()KB=391>'W879--_;3P/';L6%[?-,SJ%Q7.+.O*:M M3I:"=F&JLM0]:%'.9DKGDZHLA4ZX$8?+A;2B;TJ>B$FI17^I>0E-L;OZ\VHX MO6Q<>T=O+A:P_I;]\F(PIIMQM>]FTZ]8K5@*.NM\_?6[IOCL)G25/"=@E86^ MO4#O';W6B:D MK;1@:L:.A;9<%NQ8Y:4H#$=K\FBFLLUB/$$IV1\='F=\.>7)%^9F3%?'AT_O M6+>O+?D/*L^9+$1_X19K/#AX<2N)>3.;B03]!SL!U#%A'Q*KID*S_1X#W'%P MQP)QAT/?*B%V(9BI0%.-2 %&E4XEEMPP4<\5U)GA?7"75"E[70(D8^,#G//X M^?)<@"^C%3@Z>KVGZ90IS.OC[#^/G MHT/VL=( PL0=2TM[(+*]>OC[1%I8\02W_=50;EKC^*YOY6C_4QDK9ZLK%OH, M5+!CR9DT+!4&V@#=M8HM1%;"!9 MQA-T40:DG4-HI:H,E=M"RY)GV8I!4)*3 M4L]D <$87&0!)*.[BQQVCW%V K!YR<$3)@JV49/W<[8C>)CF>O N\%R1,FD- M,]"96(! @)6ABS!2L#GP@*4A=!X>OS@T#!QQ'^Q.'VP.H@F,%UFYD)DRJERL MR"2)"Y%49*"2R"D/[@?,@G')TG&#BX'R([ MW*3/X%$TV#N8R)N+9,&+N6"O$XM[./[EX%G+Y<4W-#[O4Y4)-G[.^^.G&W:> M/9$# 1ZUX#ETVC@P/R3SE-PC*KW(RTRMA-@D/XUCK:9&II)K'+ 6_ZTDSGVZ M6GL '2XL-'CR_U9<@W$!!/"9ZRDOA.E_N,C$BJ;Y61!H8 >C_2?\*8,1P;;( MQ+6!+E<62589_"1Q%.U%T@(]^DZX[TVXW]90[1,M-7J"=X*;2HL@Z43N(5#+ M_76'__ *P<*@MRAJ]J&X*HI>+8,,:JIX*$$]!%\74IT?8,ZC84+R+D8!QAYL=HX> UZ MDK(EP$AHDD01,"( R)E6.2A"LJB?&K#/5H%GA5'#?!S>M-A3 T-!5FVE"VJ: M9T9%X]'UTC;M/1+<\^>2X'KCUXWT$S">G*P;V#3TLCS%,1 SY^,9C>Z5S+G0 MFO@)N RX*H=&-78 )F^K9&IQ+E5E&MG<)(XD.4_V<22Z&>Q5_1?*ML9PS;[6 MC7R/32O+EA2X0?]59DE1F\9S:*\>E9PQM-C8AAL/,CB8!F)5X0?K-9V!A]/X MB!-T5*4GT_A)?SL:>6P$?E?S L2B=I*A 4<']:B% _1"W\2@ M-,4!D&YO6L9ZTR%&S&$PADS#4FC_L*#'SV&#X;?0B[LICBK=S3O?=M>681M' M=V6.ZA2#U$\@FU7I"/O9?5'S?['-0C/B@O]3I^[BW*\O9QO--T,5!ZV9(>N$ M#[1)\EX4%[EX5H-?506?@DDLP7F7%G[QX!7P\5/X7>93L PB;"Q:CUKG^U-N M"$TTF]USN)12."VEG6N."*?'!-?%!DW?9BMX450PRX1'+.1(#5[Q7Z[ MX:]C1&P?UM[,5CCB2^?1$@&6/(_B$M 5PPJQJ6BFR!N;!UH.RX<@+H 5EV<+GS8WSX+Z M7&^MG+XY1.5FL=UX!I!'BNI",'SD&A4V5"($OUN5WU^5T-OKR M^FKJEMK]7.C0%#+$<["$1=I/5*;TY(<1_3F,-J+]A4\X=A.0HTW[Y2_%U6+^ M4JM8K%L,5O(Y"!)(])<^.?T)SY9\9?SVOW@^>/;BQ\.I EW4O@9KM%9>MBM; M>SQE:QMYB)@])'N6 Q*@"IA0KUF#&307@5QJ7=QD]!SUI,YE*AQKTV[.1^T1 M#XL/U#0C0'P,>Y%#OV=2YL_JES&)[-Q&XT0CR+/)01#B:D!\SE=$"E1EC:+! MR1I/&6#XX& ^NEUQ@4#028@$/Z<%PJJIL$LA"@+[;7?>((;6"(*/KB%>@U"3 MA80 )4#4Q%=IK7,-!OUES/(AHV(B--FP30@EB&^"CM**T/:VT"<3QCB$CX/) M%+3$HA(R1T^X/HC(H52>2HA!69O+QBYV)[9)%I.*8J@&*,3:,$.1F'-5[).,=VU07AC(?/1R/>>W[5D_!T6^'5O MM,&C$)OQS>@>L.$"A"0 @82,IPN/V,KR ^ MG\SDA4@WK5KDH-TXPWI9#?^G80[N-EI6+-VW:?SEK93A'/-R8!/]N%S=K2I; M9%JAB$KS8WU)L(V6W0]V_+0[I/;WZYM_T]%&958%VN2L5;_A+^T=G3HE@AWY M(BP[YUDEKJU8"\KDXOD1-*AU\-9NRRD^II^<26CQP=" H^=[OL>6TJ/+,S(O MP3.X^F;/'145)O\C/J,V.)T&G/5'CT@>H#8@U_( M4+A?@U1R(8DJ#OU>KSJ MM?]G4R] 9O>J7IZXV,(+4E*Z25VU>BX4F],A,$K"%1U$N6W2H:-HV/Z;5L)#1[4S$=V@B#AZ=B2A8(21F&H*PV:6*\'&# MC?D4%!BIU35XK*:P(!2H@6)@BD,JG$J+^(\P)-TBB6\2#6ER0*(CXW MQO>A;I5M5XCO%TQ_JX3@-$H(DK91*5B;(E#(=SM6(,JN;:MS;3U+[!+!HBF2 M @TV6FWR%6E5%QW9A1:"2@]FTB"9OQ)<4W5'(M)P$US*) Y&N;B[)JQXB ]A MT?AJE0AK2% Y!-Z5TOM-"TSK'V7ML>W#-'"D-INDF1FF5B3L7X MO+(+I:G& H\!^SR$V53&Y^JN1+LH98"%^ML9?CHD(+#BL%Y<'P9O32[ALMR9*44B9[)IOYMX<(0(&@[*+%)J]APV7;I-J:F36<]0$MX2!$Y8(HR5!V'RI<3T]/ M40PC-]+L_H#])@HQW":XLQ8+FH?5CK'OWT[6#7VMFG:9@,]HB% M$'AP()0Z@6].!82SNBO)7&MDW*D%M#>=)&JD*]N-_4[2;R;I:7"X;[T[X>=* MI@$1I:J:6E<"OKEP5U=90TI>G4FI4[XXI7\K_<67SX9;6ZEM7XT3;7]45MSF M-]?EP=O3J=/?*KSK Z ^>D>BRA4U;_E%T+.-*&!'BM_]R-=J[!ZWDEQ>'/C' M@+U.02BEL7I7#WCKA*$#Q$M\$0_WR[K%Y),Q:0ZL5?B$ [?6?1?YQ0+ $G@P M3; *#5E>9A++>ZT)Y^6BRKY>;2LRF4OK"_^VYIYK>^5*6F!I"D$%881D>VL M.<0NO4U6%<$?A/O(I,!TKQP4V"PCQ!=7PQ.E ^&ZFLV,L.35T= 9GN'\ZX"@ MC6LJ$;GIUE=8"=?#/#H@G)R09N2N0Z9^\U$@Y9K#9"MB@MD,) _""!-"Y]>P M9:T5=8XC!61OZ!-5(/J&G6!T\UJ4WW6=:T7R[4FXSP2HXO/&]6&J2R;9FA%R_;28H<_N^&D10%*H.T!E ML5Q3CQ="PX*Y2&BN()":<9"4.T=$WXG!N8D9;VJ?)C_,Z _;?(>F F8HO'& MT[54V1MTM#%F3D.16D&D"&,S;-]9A-@<9'I=K&(([TAH/M>B9OT=^J[?1!H@ M^DQISZFX]W$@X #(FKHWH@0RI%VJZ(F*@+RW,2">D'>$,H!;X2MF#18KNN8! MA"I$D,@%2G_HOP@OX!$;FY\B-1/*+.&!7B#BFT-<[BP5M(]!7!$R,FY^H2"@ MTRH%?G."4..NF-]H\Q%1XFVO751U975;I)-D M)+@0RRM_="9;16(< )L_H4RQ=BUCU@71&"HI(I#!UIHP#M]_BPN )[%Z-["! M36@=O>3"S[\UTAW??./,2F,H"P7;*WJPLSFE*")J(J^*\#*0>A_PD&(M.]M3 M 8WA:UXK2'DUB3P$BCY2,TA4$S."?$,FG25U+ #W1_H,I330S,V)A7)#\&\J M$4CTR*P7JHDH'5=:&BV=$.SA2\XL)DTHCPIZ!$@(C"Z:6:Q&QSRD6JMJZ#%? MU>=O9CDT0HU3L3B^&T5F$0'?H5NH/AQ:;KI:+QJB+HCXR GR9=S4'O8Q7>VUM M,6$G_!PF_8\!^Q>W-+/CA10S]J;NZX-[$\U.E6Z9NMD8WM9*X)RIM[8.5(#C MK[:_C$7BT3=0 C1S36['^J*9\'J^W:[=;-=$; "OE=H,3 5N5^KP8'!7SEQB M\C65H78D\!KG8)W(6VTH&Z3SG!'#NAOA9; MR0OI#ZR#5*V]*XS.,P%*$GK#=WS.)5@4?RK)F.LVME_4%^?6B M6Z+GX0:KD$ Y=-K'4_885YA*NS=U.B6!6V=5$;UXE)0+6EZ%0D$GB%U5J.UD M=UE*3@NB=/V2B+K.:VT-L$@-O'PN*XAL\ ,!XWJ,?[VW.MT'P4=TBZLQOE;A ML.L =<-S9TC*@/=#^6A19AAIM DSNM)BLT9-3:V_I\M+,=J37_?/_LQ7J].=>X]O,"8WBGN:*QV8?!EXWSV\^!@_X$'VA*<;:_P M67LW>L32?<7T?AF,#AYX>C[99AA+*QAJ4&(PEOM[UY+"7Y]]&,6^V0=XQ^1S-> !-,GHA M)0OIG0>=R] ,V2>)_S@4Q>,G IK\:V[,@XYTM^0/ON2?12$!?O^!'-9'+0P> M K*!>6J.$WCFJ;,AX=B.2^Q]%UG&7:;^\6?J;Y^6QY+LJ[+R0_>/^M&_$GCT M/U!+ 0(4 Q0 ( ^"BUA!FKC3J!H & 4 0 0 " 0 M !A9W@M,C R-# Q,S$N>'-D4$L! A0#% @ #X*+6,YS\ASI%0 "TR,#(T,#$S,5]C86PN>&UL4$L! A0# M% @ #X*+6.O"(:8>/@ #; # !0 ( !\3 &%G>"TR M,#(T,#$S,5]D968N>&UL4$L! A0#% @ #X*+6#BESVCWF0 >O(( !0 M ( !06\ &%G>"TR,#(T,#$S,5]L86(N>&UL4$L! A0#% M @ #X*+6$F6P-8Y:P H(' !0 ( !:@D! &%G>"TR,#(T M,#$S,5]P&UL4$L! A0#% @ #X*+6+5(EZ5PV0, B/LH !0 M ( !U70! &%G>"TR,#(T,#$S,7@Q,&LN:'1M4$L! A0#% @ M#X*+6,[^M$:-#0 (PX !< ( !=TX% &%G>"TR,#(T,#$S M,7@Q,&LP,#$N:G!G4$L! A0#% @ #X*+6+>=ZE@7^0 "R0! !< M ( !.5P% &%G>"TR,#(T,#$S,7@Q,&LP,#(N:G!G4$L! A0#% M @ #X*+6!\>"TR,#(T M,#$S,7AE>#(S9#$N:'1M4$L! A0#% @ #X*+6 F"&8UM" T24 !< M ( !5%H& &%G>"TR,#(T,#$S,7AE>#,Q9#$N:'1M4$L! A0# M% @ #X*+6.Z\IBR," O"4 !< ( !]F(& &%G>"TR M,#(T,#$S,7AE>#,Q9#(N:'1M4$L! A0#% @ #X*+6!\CC>UC!0 ;A0 M !< ( !MVL& &%G>"TR,#(T,#$S,7AE>#,R9#$N:'1M4$L! M A0#% @ #X*+6.G$FEU^!0 NA< !< ( !3W$& &%G M>"TR,#(T,#$S,7AE>#,R9#(N:'1M4$L! A0#% @ #X*+6#"TR,#(T,#$S,7AE>#DW9#$N:'1M 64$L%!@ . X L , '^*!@ $! end XML 109 agx-20240131x10k_htm.xml IDEA: XBRL DOCUMENT 0000100591 agx:FraudulentlyInducedPaymentMember 2023-02-01 2024-01-31 0000100591 us-gaap:TreasuryStockCommonMember 2022-02-01 2023-01-31 0000100591 us-gaap:TreasuryStockCommonMember 2021-02-01 2022-01-31 0000100591 us-gaap:SubsequentEventMember 2024-04-11 2024-04-11 0000100591 srt:DirectorMember 2023-02-01 2024-01-31 0000100591 us-gaap:TreasuryStockCommonMember 2023-02-01 2024-01-31 0000100591 us-gaap:CommonStockMember 2022-02-01 2023-01-31 0000100591 us-gaap:CommonStockMember 2021-02-01 2022-01-31 0000100591 us-gaap:CommonStockMember 2023-02-01 2024-01-31 0000100591 us-gaap:TreasuryStockCommonMember 2024-01-31 0000100591 us-gaap:RetainedEarningsMember 2024-01-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2024-01-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-01-31 0000100591 us-gaap:TreasuryStockCommonMember 2023-01-31 0000100591 us-gaap:RetainedEarningsMember 2023-01-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2023-01-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-31 0000100591 us-gaap:TreasuryStockCommonMember 2022-01-31 0000100591 us-gaap:RetainedEarningsMember 2022-01-31 0000100591 us-gaap:NoncontrollingInterestMember 2022-01-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2022-01-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-31 0000100591 us-gaap:TreasuryStockCommonMember 2021-01-31 0000100591 us-gaap:RetainedEarningsMember 2021-01-31 0000100591 us-gaap:NoncontrollingInterestMember 2021-01-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2021-01-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-31 0000100591 us-gaap:CommonStockMember 2024-01-31 0000100591 us-gaap:CommonStockMember 2023-01-31 0000100591 us-gaap:CommonStockMember 2022-01-31 0000100591 us-gaap:CommonStockMember 2021-01-31 0000100591 us-gaap:SubsequentEventMember 2024-04-11 0000100591 srt:DirectorMember 2024-01-31 0000100591 agx:IncentiveStockOptionsMember agx:StockPlanMember 2023-02-01 2024-01-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2024-01-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2023-01-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2022-02-01 2023-01-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2021-02-01 2022-01-31 0000100591 us-gaap:EmployeeStockOptionMember 2023-02-01 2024-01-31 0000100591 2024-02-01 2024-01-31 0000100591 us-gaap:IntersegmentEliminationMember 2023-02-01 2024-01-31 0000100591 country:US 2023-02-01 2024-01-31 0000100591 country:IE 2023-02-01 2024-01-31 0000100591 country:GB 2023-02-01 2024-01-31 0000100591 us-gaap:IntersegmentEliminationMember 2022-02-01 2023-01-31 0000100591 country:US 2022-02-01 2023-01-31 0000100591 country:IE 2022-02-01 2023-01-31 0000100591 country:GB 2022-02-01 2023-01-31 0000100591 us-gaap:IntersegmentEliminationMember 2021-02-01 2022-01-31 0000100591 country:US 2021-02-01 2022-01-31 0000100591 country:IE 2021-02-01 2022-01-31 0000100591 country:GB 2021-02-01 2022-01-31 0000100591 agx:CountryOtherMember 2021-02-01 2022-01-31 0000100591 country:US 2024-01-31 0000100591 country:IE 2024-01-31 0000100591 country:GB 2024-01-31 0000100591 country:US 2023-01-31 0000100591 country:IE 2023-01-31 0000100591 country:GB 2023-01-31 0000100591 us-gaap:VehiclesMember 2024-01-31 0000100591 us-gaap:LandAndLandImprovementsMember 2024-01-31 0000100591 us-gaap:BuildingAndBuildingImprovementsMember 2024-01-31 0000100591 agx:FurnitureMachineryAndEquipmentMember 2024-01-31 0000100591 us-gaap:VehiclesMember 2023-01-31 0000100591 us-gaap:LandAndLandImprovementsMember 2023-01-31 0000100591 us-gaap:BuildingAndBuildingImprovementsMember 2023-01-31 0000100591 agx:FurnitureMachineryAndEquipmentMember 2023-01-31 0000100591 us-gaap:NoncontrollingInterestMember 2021-02-01 2022-01-31 0000100591 agx:LeeTelecomIncMember 2021-02-01 2022-01-31 0000100591 agx:GemmaPowerSystemsMember 2021-09-01 2021-09-30 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-02-01 2024-01-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-02-01 2023-01-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-02-01 2022-01-31 0000100591 us-gaap:NoncontrollingInterestMember 2022-02-01 2023-01-31 0000100591 agx:LettersOfCreditExpireOnMay312024Member us-gaap:RevolvingCreditFacilityMember 2023-03-06 0000100591 us-gaap:LetterOfCreditMember 2024-01-31 0000100591 us-gaap:LetterOfCreditMember 2023-01-31 0000100591 us-gaap:OtherNonoperatingIncomeExpenseMember 2023-02-01 2024-01-31 0000100591 us-gaap:OtherNonoperatingIncomeExpenseMember 2022-02-01 2023-01-31 0000100591 us-gaap:OtherNonoperatingIncomeExpenseMember 2021-02-01 2022-01-31 0000100591 agx:GemmaPowerSystemsMember us-gaap:FinancialGuaranteeMember 2024-01-31 0000100591 agx:TelecommunicationsInfrastructureServicesMember 2024-01-31 0000100591 agx:PowerIndustryServicesMember 2024-01-31 0000100591 agx:IndustrialFabricationAndFieldServicesMember 2024-01-31 0000100591 agx:TelecommunicationsInfrastructureServicesMember 2023-01-31 0000100591 agx:PowerIndustryServicesMember 2023-01-31 0000100591 agx:IndustrialFabricationAndFieldServicesMember 2023-01-31 0000100591 agx:TelecommunicationsInfrastructureServicesMember 2022-01-31 0000100591 agx:PowerIndustryServicesMember 2022-01-31 0000100591 agx:IndustrialFabricationAndFieldServicesMember 2022-01-31 0000100591 us-gaap:TradeNamesMember 2024-01-31 0000100591 us-gaap:CustomerRelationshipsMember 2024-01-31 0000100591 us-gaap:TradeNamesMember 2023-01-31 0000100591 us-gaap:CustomerRelationshipsMember 2023-01-31 0000100591 us-gaap:SubsequentEventMember 2024-04-10 0000100591 us-gaap:RetainedEarningsMember 2023-02-01 2024-01-31 0000100591 us-gaap:RetainedEarningsMember 2022-02-01 2023-01-31 0000100591 us-gaap:RetainedEarningsMember 2021-02-01 2022-01-31 0000100591 us-gaap:CorporateNonSegmentMember 2023-02-01 2024-01-31 0000100591 us-gaap:CorporateNonSegmentMember 2022-02-01 2023-01-31 0000100591 us-gaap:CorporateNonSegmentMember 2021-02-01 2022-01-31 0000100591 srt:MinimumMember 2024-01-31 0000100591 srt:MaximumMember 2024-01-31 0000100591 us-gaap:RevolvingCreditFacilityMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2023-03-06 2023-03-06 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2023-02-01 2024-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2023-02-01 2024-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2022-02-01 2023-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2021-02-01 2022-01-31 0000100591 agx:MajorCustomerTwoMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:MajorCustomerThreeMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:MajorCustomerTwoMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:MajorCustomerTwoMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:MajorCustomerThreeMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:MajorCustomerOneMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:MajorCustomerOneMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:IndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:MajorCustomerTwoMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerTwoMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerThreeMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerOneMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerOneMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:IndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2021-02-01 2022-01-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2021-02-01 2022-01-31 0000100591 agx:IndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2021-02-01 2022-01-31 0000100591 2024-01-01 2024-01-31 0000100591 2023-10-01 2023-10-31 0000100591 2023-09-19 2023-09-19 0000100591 2023-09-18 2023-09-18 0000100591 2023-07-01 2023-07-31 0000100591 2023-04-01 2023-04-30 0000100591 us-gaap:EmployeeStockOptionMember 2024-01-31 0000100591 agx:Plan2020Member 2023-06-20 0000100591 agx:Plan2020Member 2020-06-23 0000100591 2021-01-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MoneyMarketFundsMember 2024-01-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MoneyMarketFundsMember 2023-01-31 0000100591 us-gaap:NoncontrollingInterestMember 2021-02-01 2022-01-31 0000100591 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USTreasurySecuritiesMember 2024-01-31 0000100591 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:DomesticCorporateDebtSecuritiesMember 2024-01-31 0000100591 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2024-01-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2024-01-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2023-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2024-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2024-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialFabricationAndFieldServicesMember 2024-01-31 0000100591 us-gaap:CorporateNonSegmentMember 2024-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2023-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2023-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialFabricationAndFieldServicesMember 2023-01-31 0000100591 us-gaap:CorporateNonSegmentMember 2023-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2022-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2022-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialFabricationAndFieldServicesMember 2022-01-31 0000100591 us-gaap:CorporateNonSegmentMember 2022-01-31 0000100591 2022-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialFabricationAndFieldServicesMember 2023-02-01 2024-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2022-02-01 2023-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialFabricationAndFieldServicesMember 2022-02-01 2023-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2021-02-01 2022-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialFabricationAndFieldServicesMember 2021-02-01 2022-01-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2023-02-01 2024-01-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2022-02-01 2023-01-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2021-02-01 2022-01-31 0000100591 2023-11-01 2024-01-31 0000100591 2023-07-31 0000100591 2024-04-05 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2024-01-31 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2023-01-31 0000100591 us-gaap:CostOfSalesMember 2023-02-01 2024-01-31 0000100591 us-gaap:CostOfSalesMember 2022-02-01 2023-01-31 0000100591 us-gaap:CostOfSalesMember 2021-02-01 2022-01-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2023-02-01 2024-01-31 0000100591 srt:ExecutiveOfficerMember agx:PerformanceBasedRestrictedStockUnitsMember agx:StockPlanMember 2023-02-01 2024-01-31 0000100591 2023-09-19 0000100591 agx:TimeBasedRestrictedStockUnitsMember 2024-01-31 0000100591 agx:RenewablePerformanceBasedRestrictedStockUnitsMember 2024-01-31 0000100591 agx:PerformanceBasedRestrictedStockUnitsMember 2024-01-31 0000100591 agx:EarningsPerSharePerformanceBasedRestrictedStockUnitsMember 2024-01-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2024-01-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2021-02-01 2022-01-31 0000100591 us-gaap:RevolvingCreditFacilityMember 2023-03-06 2023-03-06 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2023-02-01 2024-01-31 0000100591 agx:GemmaPowerSystemsMember 2022-02-01 2023-01-31 0000100591 agx:KilrootProjectMember agx:AtlanticProjectsCompanyLimitedMember 2023-02-01 2024-01-31 0000100591 agx:KilrootProjectMember agx:AtlanticProjectsCompanyLimitedMember 2023-08-01 2024-01-31 0000100591 2021-02-01 2022-01-31 0000100591 srt:MinimumMember 2023-02-01 2024-01-31 0000100591 srt:MaximumMember 2023-02-01 2024-01-31 0000100591 us-gaap:DomesticCorporateDebtSecuritiesMember 2024-01-31 0000100591 us-gaap:USTreasuryNotesSecuritiesMember 2024-01-31 0000100591 2023-02-01 2024-01-31 0000100591 2022-02-01 2023-01-31 0000100591 2024-01-31 0000100591 2023-01-31 iso4217:USD agx:customer shares pure iso4217:USD shares agx:item http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrent http://fasb.org/us-gaap/2023#LiabilitiesNoncurrent 0 0 15828289 0000100591 2024 FY false false ARGAN INC No P9M 0.3333 P3Y P3Y P5Y P4Y 12464000 http://www.arganinc.com/20240131#OperatingLeaseRightOfUseAssetAndOtherAssets http://www.arganinc.com/20240131#OperatingLeaseRightOfUseAssetAndOtherAssets P2Y http://fasb.org/us-gaap/2023#Investments P15Y 10-K true 2024-01-31 --01-31 false 001-31756 DE 13-1947195 One Church Street, Suite 201 Rockville MD 20850 301 315-0027 Common Stock, $0.15 par value AGX NYSE No Yes Yes Accelerated Filer false false true false false 296708995 13240121 false false false false 248 Arlington, Virginia GRANT THORNTON LLP 573333000 455040000 509370000 492499000 368679000 409638000 80834000 86361000 99732000 44376000 44692000 47321000 7901000 36458000 41669000 44510000 12475000 4331000 2552000 48933000 46000000 47062000 16575000 11296000 11356000 32358000 34704000 35706000 1606000 -2538000 32358000 33098000 38244000 -920000 -425000 -1370000 199000 31637000 32673000 36874000 2.42 2.35 2.43 2.39 2.33 2.40 13365000 14083000 15715000 13548000 14176000 15913000 1.10 1.00 1.00 197032000 173947000 215373000 151511000 47326000 50132000 48189000 24778000 39259000 38334000 547179000 438702000 11021000 10430000 28033000 28033000 2217000 2609000 2259000 3689000 7520000 6024000 598229000 489487000 39485000 56375000 81721000 49867000 181054000 96261000 302260000 202503000 5030000 6087000 307290000 208590000 0.10 0.10 500000 500000 0 0 0.15 0.15 30000000 30000000 15828289 13242520 13441590 2374000 2374000 164183000 162208000 225507000 207832000 2585769 2386699 97528000 88641000 -3597000 -2876000 290939000 280897000 598229000 489487000 15702969 2356000 153315000 166110000 -33000 -1081000 1741000 322408000 38244000 -2538000 35706000 -1370000 -1370000 3459000 3459000 82471 12000 1416000 1428000 527752 20372000 20372000 15664000 15664000 15257688 2368000 158190000 188690000 -20405000 -2451000 -797000 325595000 33098000 1606000 34704000 -425000 -425000 3958000 3958000 39616 6000 60000 66000 1855714 68236000 68236000 13956000 13956000 677000 677000 132000 132000 13441590 2374000 162208000 207832000 -88641000 -2876000 280897000 32358000 32358000 -920000 -920000 199000 199000 4455000 4455000 104090 -2480000 3577000 1097000 303160 12464000 12464000 14683000 14683000 13242520 2374000 164183000 225507000 -97528000 -3597000 290939000 32358000 34704000 35706000 4455000 3958000 3459000 3899000 1735000 -29000 2013000 2983000 3367000 1906000 2554000 3391000 1333000 -3232000 -208000 392000 732000 870000 -130000 1113000 -466000 92000 2381000 7901000 -198000 -7000 71000 -2764000 23246000 480000 23411000 19874000 -21741000 1004000 3346000 241000 14830000 9084000 -5742000 84793000 -31629000 -44154000 116858000 -30061000 28415000 115000000 249750000 90000000 159750000 190000000 90000000 104492000 2756000 3372000 1422000 5109000 5016000 600000 -67607000 -63122000 -7038000 12464000 68236000 20372000 14683000 13956000 15664000 677000 1097000 66000 1428000 -26050000 -82803000 -34608000 -116000 -539000 -2968000 23085000 -176525000 -16199000 173947000 350472000 366671000 197032000 173947000 350472000 3312000 2444000 3678000 3525000 14297000 6665000 13897000 1910000 2552000 3290000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 1 – DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Description of the Business</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Argan, Inc. (“Argan”) conducts operations through its wholly owned subsidiaries, Gemma Power Systems, LLC and affiliates (“GPS”); The Roberts Company, Inc. (“TRC”); Atlantic Projects Company Limited and affiliates (“APC”) and Southern Maryland Cable, Inc. (“SMC”). Argan and these consolidated subsidiaries are hereinafter collectively referred to as the “Company.”</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Through GPS and APC, the Company provides a full range of engineering, procurement, construction, commissioning, maintenance, project development and technical consulting services to the power generation market. The customers include primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial construction services reportable segment provides field services that support new plant construction and additions, maintenance turnarounds, shutdowns and emergency mobilizations for industrial operations primarily located in the Southeast region of the U.S. and that may include the fabrication, delivery and installation of steel components such as piping systems and pressure vessels. Through SMC, which conducts business as SMC Infrastructure Solutions, the telecommunications infrastructure services segment provides project management, construction, installation and maintenance services to commercial, local government and federal government customers primarily in the Mid-Atlantic region of the U.S.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Basis of Presentation and Significant Accounting Policies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s fiscal year ends on January 31 of each year. The consolidated financial statements include the accounts of Argan, its wholly owned subsidiaries, a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023 (see Note 15). All significant intercompany balances and transactions have been eliminated in consolidation. In Note 17, the Company has provided certain financial information relating to the operating results and assets of its reportable segments based on the manner in which management disaggregates the Company’s financial reporting for purposes of making internal operating decisions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Use of Estimates</i> – The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, revenues, expenses, and certain financial statement disclosures.  Management believes that the estimates, judgments and assumptions upon which it relies are reasonable based upon information available to it at the time that these estimates, judgments and assumptions are made. Estimates are used for, but are not limited to, the Company’s accounting for revenues, the valuation of assets with long and indefinite lives including goodwill, the valuation of restricted stock units and options to purchase shares of the Company’s common stock, the evaluation of uncertain income tax return positions, the valuation of deferred taxes, and the determination of the allowance for doubtful accounts. Actual results could differ from these estimates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Revenue Recognition</i> – The Company’s accounting for revenues on contracts with customers is based on a single comprehensive five-step model that requires reporting entities to:</p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">1.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Identify the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">2.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Identify the performance obligations of the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">3.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Determine the transaction price of the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">4.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Allocate the transaction price to the performance obligations, and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">5.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Recognize revenue.</span></td></tr></table><div style="margin-top:8pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company focuses on the transfer of the contractor’s control of the goods and/or services to the customer. When a performance obligation is satisfied over time, the related revenues are recognized over time. The Company’s revenues are </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">recognized primarily under various types of long-term construction contracts, including those for which revenues are based on either a fixed-price or a time-and-materials basis, and primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Revenues from fixed-price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. If, at any time, the estimate of contract profitability indicates an anticipated loss on a contract, the Company will recognize the total loss in the reporting period in which it is identified and the loss amount becomes estimable. Revenues from time-and-materials contracts are recognized when the related services are provided to the customer. For its time-and-materials contracts, the Company is generally able to elect the right-to-invoice practical expedient. This practical expedient permits the Company to recognize revenue equal to the value of the performance completed to date, provided that the Company has a right to invoice the customer.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Predominantly all of the Company’s fixed-price contracts are considered to have a single performance obligation. Although multiple promises to transfer individual goods or services may exist, they are not typically distinct within the context of such contracts because contract promises included therein are interrelated or the contracts require the Company to perform critical integration so that the customer receives a completed project. Warranties provided under the Company’s contracts with customers are assurance-type primarily and are recorded as the corresponding contract work is performed. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The transaction price for a customer contract represents the value of the contract awarded to the Company that is used to determine the amount of revenues recognized as of the balance sheet date. It may reflect amounts of variable consideration which could be either increases or decreases to the transaction price. These adjustments can be made from time-to-time during the period of contract performance as circumstances evolve related to such items as changes in the scope and price of contracts, claims, incentives and liquidated damages.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Variable Consideration</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Amounts for unapproved change orders for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The effects of any revision to a transaction price can be determined at any time and they could be material. The Company also includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. Once a final amount has been determined, the transaction price may be revised again to reflect the final resolution. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Variations related to the Company’s contracts typically represent modifications to the existing contracts and performance obligations and do not represent new performance obligations. Actual costs related to any changes in the scope of the corresponding contract are expensed as they are incurred. Changes to total estimated contract costs and losses, if any, are reflected in operating results for the period in which they are determined.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s long-term contracts typically have schedule dates and other performance objectives that if not achieved could subject the Company to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by the achievement of a specified level of output or efficiency. Each applicable contract defines the conditions under which a project owner may be entitled to any liquidated damages. At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted from the transaction price as the Company believes that it has included activities in its contract plan, and the associated forecasted contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. The Company considers potential liquidated damages, the costs of other related items and potential mitigating factors in determining the adequacy of its regularly updated estimates of the amounts of gross profit expected to be earned on active projects. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In other cases, the Company may have the grounds to assert liquidated damages against subcontractors, suppliers, project owners or other parties related to a project. Such circumstances may arise when the Company’s activities and progress are adversely affected by delayed or damaged materials, challenges with equipment performance or other events out of the Company’s control where the Company has rights to recourse, typically in the form of liquidated damages. In general, the </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Company does not adjust the corresponding contract accounting until it is probable that the favorable cost relief will be realized. Such adjustments have been and could be material.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company records adjustments to revenues and profits on contracts, including those associated with contract variations and estimated cost changes, using a cumulative catch-up method. Under this method, the impact of an adjustment to the amount of revenues recognized to date is recorded in the period that the adjustment is identified. Estimated variable consideration amounts are determined by the Company based primarily on the single most likely amount in the range of possible consideration amounts. Revenues and profits in future periods of contract performance are recognized using the adjusted amounts of transaction price and estimated contract costs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Contract Assets and Liabilities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. Those rights are generally dependent upon advance billing terms, milestone billings based on the completion of certain phases of work or when services are performed. On most of our large contracts, milestone billings that occur early in the corresponding contract terms typically are made in advance of certain significant and related costs being incurred. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The balances of the Company’s accounts receivable represent amounts billed to customers that have yet to be collected and represent an unconditional right to cash from its customers. Contract assets include amounts that represent the rights to receive payment for goods or services that have been transferred to the customer, with the rights conditional upon something other than the passage of time. Contract liabilities include amounts that reflect obligations to provide goods or services for which payment has been received. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. Retention amounts and the length of retention periods may vary. Retainage amounts related to active contracts are considered current regardless of the term of the applicable contract; such amounts are generally collected by the completion of the applicable contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Remaining Unsatisfied Performance Obligations</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Substantially all of the Company’s customer contracts include the right for customers to terminate contracts for convenience. The value of future work that the Company is contractually obligated to perform pursuant to active customer contracts should not be included in remaining unsatisfied performance obligations (“RUPO”) when the corresponding contracts include termination for convenience clauses without substantial penalties accruing to the customers upon such terminations. Management assesses whether the nature of the work being performed under contract is largely service-based and repetitive and should be considered a succession of one-month contracts for the duration of the identified term of the contract. These types of arrangements do not qualify as RUPO. Predominantly, the Company’s customers contract with the Company to construct assets, to fabricate materials or to perform emergency maintenance or outage services where management believes substantial penalties or costs would be incurred upon a termination for convenience, including the costs of terminating subcontracts, canceling purchase orders and returning or otherwise disposing of delivered materials and equipment. The value of RUPO on customer contracts represents amounts based on contracts or orders received from customers that the Company believes are firm and where the parties are acting in accordance with their respective obligations. The cancellation or termination of contracts for the convenience of customers has not had a material adverse effect on the consolidated financial statements. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Cash Equivalents</i> – The Company considers all liquid investments with original maturities of three months or less at the time of purchase to be cash equivalents.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Available-For-Sale Securities</i> – At each balance sheet date, available-for-sale (“AFS”) securities are stated at fair value with unrealized gains and losses, net of income taxes, presented as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, and realized gains and losses are included in other income, net, in the Company’s consolidated statements of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of AFS securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the AFS securities is reevaluated at each balance sheet date.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company evaluates whether a decline in the fair value of AFS securities below amortized cost basis is credit-related or due to other factors. If the Company intends to sell the AFS security or it is more likely than not that the Company would be required to sell the AFS security before recovery, impairment is recognized in earnings with a corresponding adjustment to the security’s amortized cost basis. If a portion of the unrealized loss is credit-related, the impairment is recorded as an allowance on the balance sheet with a corresponding adjustment to earnings. Credit recovery is recorded as an adjustment to the allowance and earnings in the period in which credit conditions improve. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Property, Plant and Equipment</i> – Property, plant and equipment are stated at cost less accumulated depreciation. Such assets acquired in a business combination are initially included in the Company’s consolidated balance sheet at fair values. The Company capitalizes power plant project development costs incurred by consolidated variable interest entities. Depreciation amounts are determined using the straight-line method over the estimated useful lives of the assets, other than land, which are generally from <span style="-sec-ix-hidden:Hidden_h256NwplpUqchDqh5LG_Cw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">five</span></span> to thirty-nine years. Building and leasehold improvements are amortized on a straight-line basis over the shorter of the estimated useful life of the related asset or the lease term, as applicable. The costs of maintenance and repairs are expensed as incurred and major improvements are capitalized. When an asset is sold or retired, the cost and related accumulated depreciation amounts are removed from the accounts and the resulting gain or loss is included in earnings.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Goodwill</i> – On November 1 of each year, the Company reviews the carrying value of goodwill amounts for impairment. The Company also evaluates amounts of goodwill for impairment at any time when events or changes in circumstances indicate that goodwill value may be impaired.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company identifies a potential impairment loss by comparing the fair value of a reporting unit with the reporting unit’s carrying amount, including goodwill. In the quantitative approach, the fair value of the reporting unit is estimated using various market-based and income-based valuation techniques as applicable in the particular circumstances. If the fair value of the reporting unit exceeds the related carrying amount, goodwill of the reporting unit is not deemed to be impaired. If the carrying amount of the reporting unit exceeds its fair value, a goodwill impairment loss is recorded in an amount equal to the excess of the unit’s carrying value over its fair value, not to exceed the amount of goodwill allocated to the reporting unit. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">An alternative method allows the Company to first assess qualitative factors to decide whether it is necessary to perform the quantitative goodwill impairment test. It is not required to calculate the fair value of a reporting unit unless management concludes, based on a qualitative assessment, that it is more likely than not that its fair value may be less than the corresponding carrying amount. The professional guidance for this evaluation identifies the types of factors which the Company should consider in conducting the qualitative assessment including macroeconomic, industry, market and entity-specific factors. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Long-Lived Assets</i> – Long-lived assets (other than goodwill), consisting primarily of intangible assets with definite lives, right-of-use assets, and property, plant and equipment, are subject to review for impairment whenever events or changes in circumstances indicate that a carrying amount should be assessed. In such circumstances, the Company would compare the carrying value of the long-lived asset to the undiscounted future cash flows expected to result from the use of the asset. In the event that the Company would determine that the carrying value of the asset is not recoverable, a loss would be recognized based on the amount by which the carrying value exceeds the fair value of the asset. Fair value would be determined by using quoted market prices or valuation techniques such as the present value of expected future cash flows, appraisals, or other pricing models as appropriate. The Company’s intangible assets with definite lives are amortized over their estimated useful lives using the straight-line method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Leases</i> – The Company determines whether a contract is a lease at the inception of the contract based on whether the contract provides the Company the right to control the use of a physically distinct asset or substantially all of the capacity of an asset. Operating lease right-of-use assets and associated lease liabilities are recorded in the balance sheet at the lease commencement date based on the present value of future minimum lease payments to be made over the expected lease term. As the implicit rate is not determinable in most of the Company’s leases, management uses the Company’s incremental borrowing rate at the commencement date in determining the present value of future payments. The expected lease term includes any option to extend or to terminate the lease when it is reasonably certain the Company will exercise such option. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company classifies as short-term leases any lease with an initial noncancellable term of twelve months or less that does not include an option to purchase the underlying asset that the Company is reasonably certain to exercise. Right-of-use assets and lease liabilities related to short-term leases are excluded from the consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Under certain leases, the Company is obligated to pay property taxes, insurance, and maintenance costs. For leases that contain both lease and non-lease components, fixed and variable payments are allocated to each component relative to observable or estimated standalone prices.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Income Taxes</i> – Deferred taxes are recognized using enacted tax rates for the effects of temporary differences between the book and tax bases of assets and liabilities. If management believes that it is more likely than not that some portion or all of a deferred tax asset will not be realized, the carrying value will be reduced by a valuation allowance.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company accounts for uncertain tax positions in accordance with current accounting guidance which prescribes a recognition threshold and measurement attribute for financial statement disclosure of tax positions taken, or expected to be taken, on the income tax returns of the Company. Management evaluates and the Company records the effect of any uncertain tax position based on the amount that management deems is more likely than not (i.e., greater than a 50% probability) to be sustained upon examination and ultimate settlement with the tax authorities in the applicable tax jurisdiction.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Interest incurred related to overdue income taxes is included in income tax expense; franchise taxes and income tax penalties are included in selling, general and administrative expenses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Share-Based Payments</i> – The Company measures and recognizes compensation expense for all stock-based awards granted to employees and directors based upon estimates of fair value determined at the grant date of the award. Forfeitures are recognized when they occur. Share-based compensation expense is included in selling, general and administrative expenses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company estimates the weighted average fair value of stock options on the date of award using a Black-Scholes option pricing model. The Company believes that its past stock option exercise activity is sufficient to provide it with a reasonable basis upon which to estimate the expected life of newly awarded stock options. Risk-free interest rates are determined by blending the rates for <span style="-sec-ix-hidden:Hidden_yCgy9P5m9UKLm_NfPAX-hg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span>-to-five-year U.S. Treasury notes. The dividend yield is based on the Company’s current annual regular dividend amount. The calculations of the expected volatility factors are based on the monthly closing prices of the Company’s common stock for the five-year periods preceding the dates of the corresponding awards. The compensation expense for each stock option is recognized on a straight-line basis over the corresponding vesting period which is typically three years. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The fair value amounts for total stock return performance-based restricted stock units (“PRSUs”) are determined by using the per share market price of the common stock on the dates of award and by assigning equal probabilities to the thirteen possible payout outcomes at the end of each three-year term, and by computing the weighted average of the outcome amounts. For each award, the estimated fair value amount was calculated to be 88.5% of the aggregate market value of the target number (which is 50% of the maximum number) of shares on the award date. The fair value amounts of PRSUs are recorded to stock compensation expense using the straight-line method over the requisite service period, which is generally three years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">For earnings per share performance-based stock units (“ERSUs”) and renewable energy performance-based restricted stock units (“RRSUs”), the fair value of each award equals the aggregate market price for the number of shares that, as of the award date, are probable of vesting based on the performance conditions. For these stock-based awards with </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">performance conditions, compensation expense is recognized using the graded attribution method over the requisite service period when it is probable that the performance conditions will be satisfied.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">For time-based restricted stock units (“TRSUs”), the fair value of each award equals the aggregate market price for the number of shares covered by each award on the date of award. TRSUs awarded by the Company are generally subject to a service-based vesting condition, which is generally three years. For these stock-based awards subject to service-based vesting conditions, the fair value amounts are recorded in stock compensation expense over the three-year contractual lapsing periods for the corresponding restrictions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">For each exercise of a stock option or each vesting of a restricted stock unit, the Company determines whether the difference between the deduction for income tax reporting purposes created at that time and the related compensation expense previously recorded for financial reporting purposes results in either an excess income tax benefit or an income tax deficiency which is recognized, accordingly, as income tax benefit or expense in the corresponding consolidated statement of earnings. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Fair Value of Financial Instruments</i> – ASC Topic 820<i style="font-style:italic;">, Fair Value Measurement</i>, establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and to minimize the use of unobservable inputs when measuring fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy prioritizes the inputs into three levels that may be used to measure fair value:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 0pt 36pt;">Level 1 – Inputs are unadjusted quoted prices in active markets for identical assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 0pt 36pt;">Level 2 – Inputs are quoted prices for similar assets or liabilities in active markets; or quoted prices for identical or similar assets or liabilities in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 8pt 36pt;">Level 3 – Inputs are unobservable inputs based on a company’s own assumptions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">The carrying values presented in the consolidated balance sheets for the Company’s cash, certificates of deposit (“CD’s”), accounts receivable and contract assets, and the Company’s current liabilities are reasonable estimates of their fair values due to the short-term nature of these instruments. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Foreign Currency Translation</i> – The accompanying consolidated financial statements are presented in the currency of the United States (“U.S. Dollars”). The effects of translating the financial statements of APC from its functional currency (Euros) into the Company’s reporting currency (U.S. Dollars) are recognized as translation adjustments in accumulated other comprehensive loss. There are no applicable income taxes. The translation of assets and liabilities to U.S. Dollars is made at the exchange rate in effect at the consolidated balance sheet date, while equity accounts are translated at historical rates. The translation of the statement of earnings amounts is made monthly based generally on the average currency exchange rate for the month. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Foreign currency transactions are remeasured at current exchange rates, with adjustments recorded as foreign currency gains or losses. Net foreign currency gains and losses are included in other income, net, in the consolidated statements of earnings. For the years ended January 31, 2024 (“Fiscal 2024”), 2023 (“Fiscal 2023”) and 2022 (“Fiscal 2022”), such amounts were not material. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Treasury Stock</i> – Treasury Stock is recorded using the cost method. Incremental direct costs to purchase treasury stock, including excise tax, are included in the cost of the shares acquired. The Company uses the average cost method to account for treasury stock. For shares of treasury stock provided for settlements or sold at a price higher than its cost, the gain is recorded to additional paid-in capital. For shares of treasury stock provided for settlements or sold at a price lower than its cost, the loss is recorded to additional paid-in capital to the extent there are previous net gains included in the account. Any losses in excess of that amount are recorded to retained earnings.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Net Income Per Share</i> – Basic net income per share is computed by dividing net income by the weighted average number of shares of common stock outstanding during the period. Diluted net income per share is computed similarly, however, the denominator is adjusted for the number of common stock equivalents that would have a dilutive effect using the treasury stock method. If a common stock equivalent is considered antidilutive, it is not included. Potentially dilutive common stock equivalents include stock options and restricted stock units.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">RECENTLY ISSUED ACCOUNTING PRONOUNCEMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, <i style="font-style:italic;">Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method</i>, which provides an election to account for tax equity investments using the proportional amortization method if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. Early adoption is permitted. The Company adopted this guidance using the modified retrospective approach on the first day of Fiscal 2024. As the Company’s investments in solar tax credit structures entered into prior to Fiscal 2024 do not qualify for the proportional amortization method permitted under this guidance, the Company’s financial statements were not impacted at the time of adoption. During Fiscal 2024, the Company made an equity investment in a solar tax credit structure that is eligible for the proportional amortization method (see Note 12). </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In November 2023, the FASB issued ASU 2023-07, <i style="font-style:italic;">Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures</i> introducing key amendments to enhance disclosures in public entities’ reportable segments. Notable changes include the mandatory disclosure of significant segment expenses regularly provided to the chief operating decision maker (“CODM”), disclosure of other segment items, and requirements for consistency in reporting measures used by the CODM. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption ASU 2023-07 may have on its financial position, results of operations, cash flows, or disclosures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In December 2023, the FASB issued ASU 2023-09, <i style="font-style:italic;">Income Taxes (Topic 740): Improvements to Income Tax Disclosures</i>, which introduces more detailed requirements for annual disclosures for income taxes. The ASU requires public business entities to present specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 also requires all entities to disclose the amount of income taxes paid, net of refunds received, disaggregated by federal, state, and foreign jurisdiction. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-09 may have on its financial position, results of operations, cash flows, or disclosures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">There are no other recently issued accounting pronouncements that have not yet been adopted that the Company considers material to its consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Description of the Business</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Argan, Inc. (“Argan”) conducts operations through its wholly owned subsidiaries, Gemma Power Systems, LLC and affiliates (“GPS”); The Roberts Company, Inc. (“TRC”); Atlantic Projects Company Limited and affiliates (“APC”) and Southern Maryland Cable, Inc. (“SMC”). Argan and these consolidated subsidiaries are hereinafter collectively referred to as the “Company.”</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Through GPS and APC, the Company provides a full range of engineering, procurement, construction, commissioning, maintenance, project development and technical consulting services to the power generation market. The customers include primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial construction services reportable segment provides field services that support new plant construction and additions, maintenance turnarounds, shutdowns and emergency mobilizations for industrial operations primarily located in the Southeast region of the U.S. and that may include the fabrication, delivery and installation of steel components such as piping systems and pressure vessels. Through SMC, which conducts business as SMC Infrastructure Solutions, the telecommunications infrastructure services segment provides project management, construction, installation and maintenance services to commercial, local government and federal government customers primarily in the Mid-Atlantic region of the U.S.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Basis of Presentation and Significant Accounting Policies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s fiscal year ends on January 31 of each year. The consolidated financial statements include the accounts of Argan, its wholly owned subsidiaries, a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023 (see Note 15). All significant intercompany balances and transactions have been eliminated in consolidation. In Note 17, the Company has provided certain financial information relating to the operating results and assets of its reportable segments based on the manner in which management disaggregates the Company’s financial reporting for purposes of making internal operating decisions.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Use of Estimates</i> – The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, revenues, expenses, and certain financial statement disclosures.  Management believes that the estimates, judgments and assumptions upon which it relies are reasonable based upon information available to it at the time that these estimates, judgments and assumptions are made. Estimates are used for, but are not limited to, the Company’s accounting for revenues, the valuation of assets with long and indefinite lives including goodwill, the valuation of restricted stock units and options to purchase shares of the Company’s common stock, the evaluation of uncertain income tax return positions, the valuation of deferred taxes, and the determination of the allowance for doubtful accounts. Actual results could differ from these estimates.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Revenue Recognition</i> – The Company’s accounting for revenues on contracts with customers is based on a single comprehensive five-step model that requires reporting entities to:</p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">1.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Identify the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">2.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Identify the performance obligations of the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">3.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Determine the transaction price of the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">4.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Allocate the transaction price to the performance obligations, and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">5.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Recognize revenue.</span></td></tr></table><div style="margin-top:8pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company focuses on the transfer of the contractor’s control of the goods and/or services to the customer. When a performance obligation is satisfied over time, the related revenues are recognized over time. The Company’s revenues are </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">recognized primarily under various types of long-term construction contracts, including those for which revenues are based on either a fixed-price or a time-and-materials basis, and primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Revenues from fixed-price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. If, at any time, the estimate of contract profitability indicates an anticipated loss on a contract, the Company will recognize the total loss in the reporting period in which it is identified and the loss amount becomes estimable. Revenues from time-and-materials contracts are recognized when the related services are provided to the customer. For its time-and-materials contracts, the Company is generally able to elect the right-to-invoice practical expedient. This practical expedient permits the Company to recognize revenue equal to the value of the performance completed to date, provided that the Company has a right to invoice the customer.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Predominantly all of the Company’s fixed-price contracts are considered to have a single performance obligation. Although multiple promises to transfer individual goods or services may exist, they are not typically distinct within the context of such contracts because contract promises included therein are interrelated or the contracts require the Company to perform critical integration so that the customer receives a completed project. Warranties provided under the Company’s contracts with customers are assurance-type primarily and are recorded as the corresponding contract work is performed. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The transaction price for a customer contract represents the value of the contract awarded to the Company that is used to determine the amount of revenues recognized as of the balance sheet date. It may reflect amounts of variable consideration which could be either increases or decreases to the transaction price. These adjustments can be made from time-to-time during the period of contract performance as circumstances evolve related to such items as changes in the scope and price of contracts, claims, incentives and liquidated damages.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Variable Consideration</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Amounts for unapproved change orders for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The effects of any revision to a transaction price can be determined at any time and they could be material. The Company also includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. Once a final amount has been determined, the transaction price may be revised again to reflect the final resolution. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Variations related to the Company’s contracts typically represent modifications to the existing contracts and performance obligations and do not represent new performance obligations. Actual costs related to any changes in the scope of the corresponding contract are expensed as they are incurred. Changes to total estimated contract costs and losses, if any, are reflected in operating results for the period in which they are determined.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s long-term contracts typically have schedule dates and other performance objectives that if not achieved could subject the Company to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by the achievement of a specified level of output or efficiency. Each applicable contract defines the conditions under which a project owner may be entitled to any liquidated damages. At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted from the transaction price as the Company believes that it has included activities in its contract plan, and the associated forecasted contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. The Company considers potential liquidated damages, the costs of other related items and potential mitigating factors in determining the adequacy of its regularly updated estimates of the amounts of gross profit expected to be earned on active projects. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In other cases, the Company may have the grounds to assert liquidated damages against subcontractors, suppliers, project owners or other parties related to a project. Such circumstances may arise when the Company’s activities and progress are adversely affected by delayed or damaged materials, challenges with equipment performance or other events out of the Company’s control where the Company has rights to recourse, typically in the form of liquidated damages. In general, the </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Company does not adjust the corresponding contract accounting until it is probable that the favorable cost relief will be realized. Such adjustments have been and could be material.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company records adjustments to revenues and profits on contracts, including those associated with contract variations and estimated cost changes, using a cumulative catch-up method. Under this method, the impact of an adjustment to the amount of revenues recognized to date is recorded in the period that the adjustment is identified. Estimated variable consideration amounts are determined by the Company based primarily on the single most likely amount in the range of possible consideration amounts. Revenues and profits in future periods of contract performance are recognized using the adjusted amounts of transaction price and estimated contract costs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Contract Assets and Liabilities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. Those rights are generally dependent upon advance billing terms, milestone billings based on the completion of certain phases of work or when services are performed. On most of our large contracts, milestone billings that occur early in the corresponding contract terms typically are made in advance of certain significant and related costs being incurred. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The balances of the Company’s accounts receivable represent amounts billed to customers that have yet to be collected and represent an unconditional right to cash from its customers. Contract assets include amounts that represent the rights to receive payment for goods or services that have been transferred to the customer, with the rights conditional upon something other than the passage of time. Contract liabilities include amounts that reflect obligations to provide goods or services for which payment has been received. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. Retention amounts and the length of retention periods may vary. Retainage amounts related to active contracts are considered current regardless of the term of the applicable contract; such amounts are generally collected by the completion of the applicable contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Remaining Unsatisfied Performance Obligations</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Substantially all of the Company’s customer contracts include the right for customers to terminate contracts for convenience. The value of future work that the Company is contractually obligated to perform pursuant to active customer contracts should not be included in remaining unsatisfied performance obligations (“RUPO”) when the corresponding contracts include termination for convenience clauses without substantial penalties accruing to the customers upon such terminations. Management assesses whether the nature of the work being performed under contract is largely service-based and repetitive and should be considered a succession of one-month contracts for the duration of the identified term of the contract. These types of arrangements do not qualify as RUPO. Predominantly, the Company’s customers contract with the Company to construct assets, to fabricate materials or to perform emergency maintenance or outage services where management believes substantial penalties or costs would be incurred upon a termination for convenience, including the costs of terminating subcontracts, canceling purchase orders and returning or otherwise disposing of delivered materials and equipment. The value of RUPO on customer contracts represents amounts based on contracts or orders received from customers that the Company believes are firm and where the parties are acting in accordance with their respective obligations. The cancellation or termination of contracts for the convenience of customers has not had a material adverse effect on the consolidated financial statements. </p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Cash Equivalents</i> – The Company considers all liquid investments with original maturities of three months or less at the time of purchase to be cash equivalents.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Available-For-Sale Securities</i> – At each balance sheet date, available-for-sale (“AFS”) securities are stated at fair value with unrealized gains and losses, net of income taxes, presented as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, and realized gains and losses are included in other income, net, in the Company’s consolidated statements of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of AFS securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the AFS securities is reevaluated at each balance sheet date.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company evaluates whether a decline in the fair value of AFS securities below amortized cost basis is credit-related or due to other factors. If the Company intends to sell the AFS security or it is more likely than not that the Company would be required to sell the AFS security before recovery, impairment is recognized in earnings with a corresponding adjustment to the security’s amortized cost basis. If a portion of the unrealized loss is credit-related, the impairment is recorded as an allowance on the balance sheet with a corresponding adjustment to earnings. Credit recovery is recorded as an adjustment to the allowance and earnings in the period in which credit conditions improve. </p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Property, Plant and Equipment</i> – Property, plant and equipment are stated at cost less accumulated depreciation. Such assets acquired in a business combination are initially included in the Company’s consolidated balance sheet at fair values. The Company capitalizes power plant project development costs incurred by consolidated variable interest entities. Depreciation amounts are determined using the straight-line method over the estimated useful lives of the assets, other than land, which are generally from <span style="-sec-ix-hidden:Hidden_h256NwplpUqchDqh5LG_Cw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">five</span></span> to thirty-nine years. Building and leasehold improvements are amortized on a straight-line basis over the shorter of the estimated useful life of the related asset or the lease term, as applicable. The costs of maintenance and repairs are expensed as incurred and major improvements are capitalized. When an asset is sold or retired, the cost and related accumulated depreciation amounts are removed from the accounts and the resulting gain or loss is included in earnings.</p> P39Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Goodwill</i> – On November 1 of each year, the Company reviews the carrying value of goodwill amounts for impairment. The Company also evaluates amounts of goodwill for impairment at any time when events or changes in circumstances indicate that goodwill value may be impaired.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company identifies a potential impairment loss by comparing the fair value of a reporting unit with the reporting unit’s carrying amount, including goodwill. In the quantitative approach, the fair value of the reporting unit is estimated using various market-based and income-based valuation techniques as applicable in the particular circumstances. If the fair value of the reporting unit exceeds the related carrying amount, goodwill of the reporting unit is not deemed to be impaired. If the carrying amount of the reporting unit exceeds its fair value, a goodwill impairment loss is recorded in an amount equal to the excess of the unit’s carrying value over its fair value, not to exceed the amount of goodwill allocated to the reporting unit. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">An alternative method allows the Company to first assess qualitative factors to decide whether it is necessary to perform the quantitative goodwill impairment test. It is not required to calculate the fair value of a reporting unit unless management concludes, based on a qualitative assessment, that it is more likely than not that its fair value may be less than the corresponding carrying amount. The professional guidance for this evaluation identifies the types of factors which the Company should consider in conducting the qualitative assessment including macroeconomic, industry, market and entity-specific factors. </p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Long-Lived Assets</i> – Long-lived assets (other than goodwill), consisting primarily of intangible assets with definite lives, right-of-use assets, and property, plant and equipment, are subject to review for impairment whenever events or changes in circumstances indicate that a carrying amount should be assessed. In such circumstances, the Company would compare the carrying value of the long-lived asset to the undiscounted future cash flows expected to result from the use of the asset. In the event that the Company would determine that the carrying value of the asset is not recoverable, a loss would be recognized based on the amount by which the carrying value exceeds the fair value of the asset. Fair value would be determined by using quoted market prices or valuation techniques such as the present value of expected future cash flows, appraisals, or other pricing models as appropriate. The Company’s intangible assets with definite lives are amortized over their estimated useful lives using the straight-line method.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Leases</i> – The Company determines whether a contract is a lease at the inception of the contract based on whether the contract provides the Company the right to control the use of a physically distinct asset or substantially all of the capacity of an asset. Operating lease right-of-use assets and associated lease liabilities are recorded in the balance sheet at the lease commencement date based on the present value of future minimum lease payments to be made over the expected lease term. As the implicit rate is not determinable in most of the Company’s leases, management uses the Company’s incremental borrowing rate at the commencement date in determining the present value of future payments. The expected lease term includes any option to extend or to terminate the lease when it is reasonably certain the Company will exercise such option. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company classifies as short-term leases any lease with an initial noncancellable term of twelve months or less that does not include an option to purchase the underlying asset that the Company is reasonably certain to exercise. Right-of-use assets and lease liabilities related to short-term leases are excluded from the consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Under certain leases, the Company is obligated to pay property taxes, insurance, and maintenance costs. For leases that contain both lease and non-lease components, fixed and variable payments are allocated to each component relative to observable or estimated standalone prices.</p> true true <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Income Taxes</i> – Deferred taxes are recognized using enacted tax rates for the effects of temporary differences between the book and tax bases of assets and liabilities. If management believes that it is more likely than not that some portion or all of a deferred tax asset will not be realized, the carrying value will be reduced by a valuation allowance.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company accounts for uncertain tax positions in accordance with current accounting guidance which prescribes a recognition threshold and measurement attribute for financial statement disclosure of tax positions taken, or expected to be taken, on the income tax returns of the Company. Management evaluates and the Company records the effect of any uncertain tax position based on the amount that management deems is more likely than not (i.e., greater than a 50% probability) to be sustained upon examination and ultimate settlement with the tax authorities in the applicable tax jurisdiction.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Interest incurred related to overdue income taxes is included in income tax expense; franchise taxes and income tax penalties are included in selling, general and administrative expenses.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Share-Based Payments</i> – The Company measures and recognizes compensation expense for all stock-based awards granted to employees and directors based upon estimates of fair value determined at the grant date of the award. Forfeitures are recognized when they occur. Share-based compensation expense is included in selling, general and administrative expenses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company estimates the weighted average fair value of stock options on the date of award using a Black-Scholes option pricing model. The Company believes that its past stock option exercise activity is sufficient to provide it with a reasonable basis upon which to estimate the expected life of newly awarded stock options. Risk-free interest rates are determined by blending the rates for <span style="-sec-ix-hidden:Hidden_yCgy9P5m9UKLm_NfPAX-hg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span>-to-five-year U.S. Treasury notes. The dividend yield is based on the Company’s current annual regular dividend amount. The calculations of the expected volatility factors are based on the monthly closing prices of the Company’s common stock for the five-year periods preceding the dates of the corresponding awards. The compensation expense for each stock option is recognized on a straight-line basis over the corresponding vesting period which is typically three years. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The fair value amounts for total stock return performance-based restricted stock units (“PRSUs”) are determined by using the per share market price of the common stock on the dates of award and by assigning equal probabilities to the thirteen possible payout outcomes at the end of each three-year term, and by computing the weighted average of the outcome amounts. For each award, the estimated fair value amount was calculated to be 88.5% of the aggregate market value of the target number (which is 50% of the maximum number) of shares on the award date. The fair value amounts of PRSUs are recorded to stock compensation expense using the straight-line method over the requisite service period, which is generally three years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">For earnings per share performance-based stock units (“ERSUs”) and renewable energy performance-based restricted stock units (“RRSUs”), the fair value of each award equals the aggregate market price for the number of shares that, as of the award date, are probable of vesting based on the performance conditions. For these stock-based awards with </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">performance conditions, compensation expense is recognized using the graded attribution method over the requisite service period when it is probable that the performance conditions will be satisfied.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">For time-based restricted stock units (“TRSUs”), the fair value of each award equals the aggregate market price for the number of shares covered by each award on the date of award. TRSUs awarded by the Company are generally subject to a service-based vesting condition, which is generally three years. For these stock-based awards subject to service-based vesting conditions, the fair value amounts are recorded in stock compensation expense over the three-year contractual lapsing periods for the corresponding restrictions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">For each exercise of a stock option or each vesting of a restricted stock unit, the Company determines whether the difference between the deduction for income tax reporting purposes created at that time and the related compensation expense previously recorded for financial reporting purposes results in either an excess income tax benefit or an income tax deficiency which is recognized, accordingly, as income tax benefit or expense in the corresponding consolidated statement of earnings. </p> P5Y P5Y P3Y 0.885 0.50 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Fair Value of Financial Instruments</i> – ASC Topic 820<i style="font-style:italic;">, Fair Value Measurement</i>, establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and to minimize the use of unobservable inputs when measuring fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy prioritizes the inputs into three levels that may be used to measure fair value:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 0pt 36pt;">Level 1 – Inputs are unadjusted quoted prices in active markets for identical assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 0pt 36pt;">Level 2 – Inputs are quoted prices for similar assets or liabilities in active markets; or quoted prices for identical or similar assets or liabilities in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 8pt 36pt;">Level 3 – Inputs are unobservable inputs based on a company’s own assumptions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">The carrying values presented in the consolidated balance sheets for the Company’s cash, certificates of deposit (“CD’s”), accounts receivable and contract assets, and the Company’s current liabilities are reasonable estimates of their fair values due to the short-term nature of these instruments. </p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Foreign Currency Translation</i> – The accompanying consolidated financial statements are presented in the currency of the United States (“U.S. Dollars”). The effects of translating the financial statements of APC from its functional currency (Euros) into the Company’s reporting currency (U.S. Dollars) are recognized as translation adjustments in accumulated other comprehensive loss. There are no applicable income taxes. The translation of assets and liabilities to U.S. Dollars is made at the exchange rate in effect at the consolidated balance sheet date, while equity accounts are translated at historical rates. The translation of the statement of earnings amounts is made monthly based generally on the average currency exchange rate for the month. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Foreign currency transactions are remeasured at current exchange rates, with adjustments recorded as foreign currency gains or losses. Net foreign currency gains and losses are included in other income, net, in the consolidated statements of earnings. For the years ended January 31, 2024 (“Fiscal 2024”), 2023 (“Fiscal 2023”) and 2022 (“Fiscal 2022”), such amounts were not material. </p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Treasury Stock</i> – Treasury Stock is recorded using the cost method. Incremental direct costs to purchase treasury stock, including excise tax, are included in the cost of the shares acquired. The Company uses the average cost method to account for treasury stock. For shares of treasury stock provided for settlements or sold at a price higher than its cost, the gain is recorded to additional paid-in capital. For shares of treasury stock provided for settlements or sold at a price lower than its cost, the loss is recorded to additional paid-in capital to the extent there are previous net gains included in the account. Any losses in excess of that amount are recorded to retained earnings.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Net Income Per Share</i> – Basic net income per share is computed by dividing net income by the weighted average number of shares of common stock outstanding during the period. Diluted net income per share is computed similarly, however, the denominator is adjusted for the number of common stock equivalents that would have a dilutive effect using the treasury stock method. If a common stock equivalent is considered antidilutive, it is not included. Potentially dilutive common stock equivalents include stock options and restricted stock units.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">RECENTLY ISSUED ACCOUNTING PRONOUNCEMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, <i style="font-style:italic;">Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method</i>, which provides an election to account for tax equity investments using the proportional amortization method if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. Early adoption is permitted. The Company adopted this guidance using the modified retrospective approach on the first day of Fiscal 2024. As the Company’s investments in solar tax credit structures entered into prior to Fiscal 2024 do not qualify for the proportional amortization method permitted under this guidance, the Company’s financial statements were not impacted at the time of adoption. During Fiscal 2024, the Company made an equity investment in a solar tax credit structure that is eligible for the proportional amortization method (see Note 12). </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In November 2023, the FASB issued ASU 2023-07, <i style="font-style:italic;">Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures</i> introducing key amendments to enhance disclosures in public entities’ reportable segments. Notable changes include the mandatory disclosure of significant segment expenses regularly provided to the chief operating decision maker (“CODM”), disclosure of other segment items, and requirements for consistency in reporting measures used by the CODM. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption ASU 2023-07 may have on its financial position, results of operations, cash flows, or disclosures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In December 2023, the FASB issued ASU 2023-09, <i style="font-style:italic;">Income Taxes (Topic 740): Improvements to Income Tax Disclosures</i>, which introduces more detailed requirements for annual disclosures for income taxes. The ASU requires public business entities to present specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 also requires all entities to disclose the amount of income taxes paid, net of refunds received, disaggregated by federal, state, and foreign jurisdiction. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-09 may have on its financial position, results of operations, cash flows, or disclosures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">There are no other recently issued accounting pronouncements that have not yet been adopted that the Company considers material to its consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 2 – </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">REVENUES FROM CONTRACTS WITH CUSTOMERS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Disaggregation of Revenues</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following table presents consolidated revenues for Fiscal 2024, Fiscal 2023 and Fiscal 2022, disaggregated by the geographic area where the corresponding projects were located: </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 334,244</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 328,850</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 456,211</p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Republic of Ireland</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 198,701</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,242</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 35,044</p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United Kingdom</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 40,388</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 57,948</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,521</p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 594</p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Consolidated Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 573,333</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 455,040</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 509,370</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">Revenues for projects located in Ireland and the U.K. are attributed to the power industry services segment. The major portions of the Company’s consolidated revenues are recognized pursuant to fixed-price contracts with most of the remaining portions earned pursuant to time-and-material contracts. Consolidated revenues are disaggregated by reportable segment in Note 17 to the consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Contract Loss</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">For a project being performed by APC to construct a gas-fired power facility in Northern Ireland, an estimated loss at completion of the project of approximately $10.0 million was recognized in the latter half of Fiscal 2024. Accordingly, APC recorded a loss during Fiscal 2024 in the amount of approximately $13.6 million, which includes an unfavorable adjustment of estimated gross profit recorded in the prior fiscal year. This project is expected to be completed by APC during the first half of the fiscal year ending January 31, 2025 (“Fiscal 2025”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Contract Assets and Liabilities</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts. During the fiscal year ended January 31, 2024, there were no material unusual or one-time adjustments to contract liabilities. The amounts of revenues recognized during Fiscal 2024 and Fiscal 2023 that were included in the balances of contract liabilities as of January 31, 2023 and 2022, were approximately $95.5 million and $131.0 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. The amounts retained by project owners and other customers under construction contracts at January 31, 2024, and 2023 were $21.2 million and $49.1 million, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Variable Consideration</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Amounts for unapproved change orders for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The Company also includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. At January 31, 2024 and 2023, the aggregate amounts of such contract variations that were included in the transaction prices and that were still pending customer approval were $8.4 million and $11.6 million, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Remaining Unsatisfied Performance Obligations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">At January 31, 2024, the Company had RUPO of $0.7 billion. The largest portion of RUPO at any date usually relates to engineering, procurement and construction (“EPC”) services and other construction contracts with typical performance durations of one to three years. However, the length of certain significant construction projects may exceed three years. The Company estimates that approximately 69% of the RUPO amount at January 31, 2024 will be included in the amount of consolidated revenues that will be recognized during Fiscal 2025. Most of the remaining amount of the RUPO amount at January 31, 2024 is expected to be recognized in revenues during the fiscal years ending January 31, 2026 (“Fiscal 2026”) and 2027 (“Fiscal 2027”). </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 0pt 0pt;">It is important to note that estimates may be changed in the future and that cancellations, deferrals or scope adjustments may occur related to work included in the amount of RUPO at January 31, 2024. Accordingly, RUPO may be adjusted to reflect project delays and cancellations, revisions to project scope and cost and foreign currency exchange fluctuations, or to revise estimates, as effects become known. Such adjustments to RUPO may materially reduce future revenues below Company estimates.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 334,244</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 328,850</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 456,211</p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Republic of Ireland</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 198,701</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,242</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 35,044</p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United Kingdom</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 40,388</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 57,948</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,521</p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 594</p></td></tr><tr><td style="vertical-align:bottom;width:47.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Consolidated Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 573,333</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 455,040</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 509,370</p></td></tr></table> 334244000 328850000 456211000 198701000 68242000 35044000 40388000 57948000 17521000 594000 573333000 455040000 509370000 10000000.0 13600000 95500000 131000000.0 21200000 49100000 8400000 11600000 700000000 P3Y 0.69 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 3 – CASH, CASH EQUIVALENTS AND INVESTMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">At January 31, 2024 and 2023, certain amounts of cash equivalents were invested in a money market fund with net assets invested in high-quality money market instruments, including U.S. Treasury obligations; obligations of U.S. government agencies, authorities, instrumentalities or sponsored enterprises; and repurchase agreements secured by such obligations. Dividend income related to money market investments is recorded when earned. The balances of accrued dividends at January 31, 2024 and 2023 were $0.7 million and $0.3 million, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Investments</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s investments consisted of the following as of January 31, 2024 and 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Short-term investments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 109,489</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 151,511</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Available-for-sale securities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 105,884</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:72.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total investments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 215,373</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 151,511</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><i style="font-style:italic;">Short-Term Investments</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Short-term investments as of January 31, 2024 and 2023 consisted solely of certificates of deposit (“CDs”) with initial maturities of one year or less purchased from Bank of America, N.A. (the “Bank”). The Company has the intent and ability to hold the CDs until they mature, and they are carried at cost plus accrued interest. Interest income is recorded when earned and is included in other income. At January 31, 2024 and 2023, the weighted average annual interest rates of the outstanding CDs were 5.4% and 2.5%, respectively. The balances of accrued interest on the CDs at January 31, 2024 and 2023 were $4.5 million and $1.8 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><i style="font-style:italic;">Available-For-Sale Securities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">AFS securities as of January 31, 2024 consisted of U.S. Treasury notes and a U.S. corporate debt security with original maturities of <span style="-sec-ix-hidden:Hidden_GXHUS1l2NkarSHGUXrD6rg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">two</span></span> or three years. The Company did not have any AFS securities investments as of January 31, 2023. The Company’s AFS securities consisted of the following amounts of amortized cost, allowance for credit losses, gross unrealized gains and losses and estimated fair value by contractual maturity as of January 31, 2024:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:89.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:64.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gains</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">U.S. Treasury notes:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in one to two years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,634</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 305</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 102</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,837</p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in two to three years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45,583</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 263</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 128</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45,718</p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">U.S. corporate debt security:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in two to three years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,406</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,329</p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,623</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 307</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,884</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">As of January 31, 2024, interest receivable in the amount of $1.3 million is <span style="-sec-ix-hidden:Hidden_l-rP2WFGbUmMbYnTxvq7lg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">included</span></span> in the balance of AFS securities. During Fiscal 2024, the change in net unrealized holding gains, net of tax, for the Company’s AFS securities reported in other comprehensive income was approximately $0.2 million. During Fiscal 2024, there were no sales of the Company’s AFS securities, and therefore, there were no amounts of gains or losses reclassified out of other comprehensive income into net income. For AFS securities with unrealized losses, the Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of January 31, 2024, which includes an assessment of whether it is more likely than not the Company will be required to sell or intends to sell the investment before recovery of its amortized cost basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Earnings on Invested Funds</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">Earnings on invested funds for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $14.1 million, $3.4 million and $3.0 million, respectively, and are included in other income, net, in the consolidated statements of earnings.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Concentration Risk</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company has a substantial portion of its cash on deposit in the U.S. with the Bank or invested in CDs purchased from the Bank. In addition, the Company has cash invested in a money market fund at a separate institution. The Company also maintains certain Euro-based bank accounts in Ireland and certain pound sterling-based bank accounts in the U.K. in support of the operations of APC. As of January 31, 2024, approximately 12% of the Company’s cash and cash equivalents were held by local financial institutions in Ireland and the U.K. Management does not believe that the combined amount </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">of the CDs and the cash deposited with the Bank, cash invested in the money market fund, and cash balances maintained at financial institutions in Ireland and the U.K., in excess of government-insured levels, represent material risks.</p> 700000 300000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Short-term investments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 109,489</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 151,511</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Available-for-sale securities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 105,884</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:72.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total investments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 215,373</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 151,511</span></p></td></tr></table> 109489000 151511000 105884000 215373000 151511000 P1Y 0.054 0.025 4500000 1800000 P3Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:89.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:64.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gains</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">U.S. Treasury notes:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in one to two years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,634</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 305</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 102</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,837</p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in two to three years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45,583</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 263</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 128</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45,718</p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">U.S. corporate debt security:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in two to three years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,406</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,329</p></td></tr><tr><td style="vertical-align:bottom;width:32.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,623</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 307</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,884</p></td></tr></table> 50634000 305000 102000 50837000 45583000 263000 128000 45718000 9406000 77000 9329000 105623000 568000 307000 105884000 1300000 200000 0 0 14100000 3400000 3000000.0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 4 – FAIR VALUE MEASUREMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following table presents the Company’s financial instruments as of January 31, 2024 and 2023 that are measured and recorded at fair value on a recurring basis:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:89.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:33.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:33.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cash equivalents:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Money market fund</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 126,646</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Available-for-sale securities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">U.S. Treasury notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,555</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">U.S. corporate debt security</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 126,646</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,884</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:89.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:33.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:33.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cash equivalents:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Money market fund</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 126,646</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Available-for-sale securities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">U.S. Treasury notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,555</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">U.S. corporate debt security</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:29.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 126,646</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.75%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,884</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.78%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.81%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 126646000 68647000 96555000 9329000 126646000 105884000 68647000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 5 – ACCOUNTS RECEIVABLE</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company generally extends credit to a customer based on an evaluation of the customer’s financial condition without requiring tangible collateral. Customer payments on construction service contracts are generally due within 30 to 60 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts receivable may differ due to the varying financial condition of each customer. The Company monitors its exposure to credit losses and may establish an allowance for credit losses based on management’s estimate of the loss that is expected to occur over the remaining life of the particular financial asset. The amounts of the provision for credit losses for Fiscal 2024 and Fiscal 2023 were insignificant. For Fiscal 2022, the amount of the provision for credit losses was $2.4 million.  The amounts of the allowance for credit losses as of January 31, 2024 and 2023, were $1.8 million and $1.9 million, respectively.</p> 2400000 1800000 1900000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 6 – INTANGIBLE ASSETS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Goodwill</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company used a qualitative approach to assess the goodwill of the GPS reporting unit, which is included in the power industry services segment, as of November 1, 2023 and 2022. At each date, the Company concluded that it was more likely than not that the fair value of the reporting unit exceeded the corresponding carrying value. Therefore, completion of the quantitative impairment assessment was considered to be unnecessary in each case.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Similarly, the Company used a qualitative approach to assess the goodwill of the TRC reporting unit, which represents the industrial construction services segment, as of November 1, 2023 and 2022 and concluded that it was more likely than not that the fair value of the reporting unit exceeded the corresponding carrying value. Therefore, the completion of the quantitative impairment assessment was considered to be unnecessary. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">During Fiscal 2022, the Company completed the acquisition of Lee Telecom, Inc. (“LTI”), which is located in Hampton, Virginia. The results of operations of LTI are included in the Company’s telecommunications infrastructure services segment. The acquisition represented a purchase of the assets of LTI, for which the Company paid $0.6 million cash, including customer contracts and goodwill.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The changes in the balances of the Company’s goodwill by reportable segment for Fiscal 2024 and Fiscal 2023 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:49.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill as of February 1, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Impairment losses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill as of January 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Impairment losses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill as of January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Balances, January 31, 2024:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,525</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 36,980</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Accumulated impairment losses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (4,049)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (4,898)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (8,947)</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill as of January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">As of January 31, 2024, the accumulated impairment losses for the power industry services segment relate solely to the APC reporting unit. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">For income tax reporting purposes, the <span style="-sec-ix-hidden:Hidden_js_m5EfiTUC6iOL8jaEXbQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">15-year</span></span> straight-line amortization of goodwill related to acquisitions in the approximate amount of $16.5 million was completed during the year ended January 31, 2024. The other amounts of the Company’s goodwill are not amortizable for income tax reporting purposes. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Other Intangible Assets</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">The Company’s intangible assets, other than goodwill, relate primarily to the industrial construction services segment and consisted of the following as of January 31, 2024 and 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:20.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:20.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:9.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:31.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:31.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Useful Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Trade name</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;">15 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,450</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,049</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,150</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,349</p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 748</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 168</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 656</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 260</p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,198</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,217</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,806</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,609</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The amounts related to the trade name that became fully amortized during Fiscal 2023 were removed from the table. The Company believes that the useful life of the remaining trade name represents the remaining number of years that such intangible asset is expected to contribute to future cash flows. There were no additions to other intangible assets during Fiscal 2024 or Fiscal 2023. In addition, there were no impairment losses related to the assets for Fiscal 2024, Fiscal 2023 or Fiscal 2022. Amortization expense related to intangible assets for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $0.4 million, $0.7 million and $0.9 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.28;margin:0pt 0pt 8pt 0pt;">The future amounts of amortization related to intangibles are presented below for the years ending January 31:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:78.89%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:middle;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 392</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:middle;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 375</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:middle;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:middle;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:middle;width:8.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 550</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:middle;width:8.81%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,217</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1pt;margin:0pt;"><span style="font-size:1pt;line-height:1.19;visibility:hidden;">​</span></p> 600000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:49.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill as of February 1, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Impairment losses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill as of January 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Impairment losses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill as of January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Balances, January 31, 2024:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,525</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 36,980</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Accumulated impairment losses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (4,049)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (4,898)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (8,947)</p></td></tr><tr><td style="vertical-align:bottom;width:49.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill as of January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr></table> 18476000 9467000 90000 28033000 18476000 9467000 90000 28033000 18476000 9467000 90000 28033000 22525000 14365000 90000 36980000 4049000 4898000 8947000 18476000 9467000 90000 28033000 16500000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:20.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:20.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:9.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:31.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:31.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Useful Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Trade name</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;">15 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,450</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,049</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,150</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,349</p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 748</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 168</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 656</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 260</p></td></tr><tr><td style="vertical-align:bottom;width:20.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,198</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,217</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.83%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,806</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,609</p></td></tr></table> P15Y 4499000 2450000 2049000 4499000 2150000 2349000 P10Y 916000 748000 168000 916000 656000 260000 5415000 3198000 2217000 5415000 2806000 2609000 0 0 0 0 0 400000 700000 900000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:78.89%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;width:8.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:middle;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 392</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:middle;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 375</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:middle;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:middle;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:8.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:middle;width:8.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 550</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:middle;width:8.81%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,217</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1pt;margin:0pt;"><span style="font-size:1pt;line-height:1.19;visibility:hidden;">​</span></p> 392000 375000 300000 300000 300000 550000 2217000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 7 – PROPERTY, PLANT AND EQUIPMENT, NET</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Property, plant and equipment consisted of the following at January 31, 2024 and 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Land and improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 863</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 863</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Building and improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Furniture, machinery and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,938</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,219</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Trucks, trailers and other vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,902</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,042</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 32,613</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,682</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Less - accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,592</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,252</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,430</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following table presents property, plant and equipment, net, disaggregated by geographic area as of January 31, 2024 and 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:75.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:75.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:75.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,898</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,522</p></td></tr><tr><td style="vertical-align:bottom;width:75.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Republic of Ireland</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,836</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,614</p></td></tr><tr><td style="vertical-align:bottom;width:75.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United Kingdom</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 287</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 294</p></td></tr><tr><td style="vertical-align:bottom;width:75.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,430</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Depreciation expense for property, plant and equipment was $2.0 million, $3.0 million and $3.4 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively, which amounts were charged substantially to selling, general and administrative expenses in each year. The costs of maintenance and repairs were $1.6 million, $2.4 million and $2.1 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively, which amounts were charged substantially to selling, general and administrative expenses each year as well.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Land and improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 863</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 863</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Building and improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Furniture, machinery and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,938</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,219</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Trucks, trailers and other vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,902</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,042</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 32,613</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,682</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Less - accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,592</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,252</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,430</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 863000 863000 7910000 7558000 17938000 17219000 5902000 6042000 32613000 31682000 21592000 21252000 11021000 10430000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:75.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:75.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:75.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,898</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,522</p></td></tr><tr><td style="vertical-align:bottom;width:75.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Republic of Ireland</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,836</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,614</p></td></tr><tr><td style="vertical-align:bottom;width:75.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United Kingdom</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 287</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 294</p></td></tr><tr><td style="vertical-align:bottom;width:75.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,430</p></td></tr></table> 8898000 8522000 1836000 1614000 287000 294000 11021000 10430000 2000000.0 3000000.0 3400000 1600000 2400000 2100000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 8 – FINANCING ARRANGEMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During April 2021, the Company amended its Amended and Restated Replacement Credit Agreement with the Bank (the “Credit Agreement”) which extended the expiration date of the Credit Agreement to May 31, 2024 and reduced the borrowing rate. On March 6, 2023, the Company entered into the Second Amendment (the “Second Amendment”) to the Credit Agreement. The Second Amendment modified the Credit Amendment, primarily, to replace the interest pricing with the Secured Overnight Financing Rate (“SOFR”) plus 1.6% and to add SOFR successor rate language. The Credit Agreement, as amended, includes the following features, among others: a lending commitment of $50.0 million including a revolving loan and an accordion feature which allows for an additional commitment amount of $10.0 million, subject to certain conditions. The Company may also use the borrowing ability to cover other credit instruments issued by the Bank for the Company’s use in the ordinary course of business as defined in the Credit Agreement. The Company intends to renew the Credit Agreement prior to its current expiration date.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">At January 31, 2024 and 2023, the Company did not have any borrowings outstanding under the Credit Agreement. However, the Bank has issued a letter of credit in the total outstanding amount of $9.3 million at January 31, 2024, in support of the activities of APC under existing customer contracts. The comparable outstanding total amount of letters of credit at January 31, 2023 was $8.8 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company has pledged the majority of its assets to secure its financing arrangements. The Bank’s consent is not required for acquisitions, divestitures, cash dividends or significant investments as long as certain conditions are met. The Credit Agreement requires that the Company comply with certain financial covenants at its fiscal year-end and at each fiscal quarter-end. The Credit Agreement, as amended, includes other terms, covenants and events of default that are customary for a credit facility of its size and nature, including a requirement to achieve positive adjusted earnings before interest, taxes, depreciation and amortization, as defined, over each rolling twelve-month measurement period. As of January 31, 2024 and 2023, the Company was in compliance with the covenants of the Credit Agreement, as amended.</p> 0.016 50000000.0 10000000.0 9300000 8800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 9 – COMMITMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Leases</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s leases are primarily operating leases that cover office space, expiring on various dates through December 2031, and certain equipment used by the Company in the performance of its construction services contracts. Some of these equipment leases may be embedded in broader agreements with subcontractors or construction equipment suppliers. The Company has no material finance leases. None of the operating leases includes significant amounts for incentives, rent holidays or price escalations. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">At January 31, 2024 and 2023, right-of-use assets were $5.3 million and $4.8 million, respectively. Operating lease expense amounts are recorded on a straight-line basis over the expected lease terms. Operating lease expense amounts for Fiscal 2024, Fiscal 2023 and Fiscal 2022 were $1.9 million, $2.6 million and $3.4 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following is a schedule of future minimum lease payments for the operating leases that were recognized in the consolidated balance sheet as of January 31, 2024 for the years ending January 31:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,823</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,461</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 275</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 221</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 213</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 625</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Total lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,618</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Less imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Present value of lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,318</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="-sec-ix-hidden:Hidden_qNpECDvgrU6HtsN64sIiSg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Less current portion (included in accrued expenses)</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,726</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden__pj9JfbUxEaSw_4VXwOMHw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Noncurrent portion (included in noncurrent liabilities) </span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,592</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following table presents summary information for the Company’s lease terms and discount rates for its operating leases at January 31, 2024 and 2023: </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:54.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:54.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td></tr><tr><td style="vertical-align:bottom;width:54.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average remaining lease term</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;">41 months</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;">58 months</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:54.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average discount rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">The Company also uses equipment and occupies other facilities under short-term rental agreements. Rent expense amounts incurred under short-term rentals were $9.5 million, $11.3 million and $9.6 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Performance Bonds and Guarantees</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the normal course of business and for certain major projects, the Company may be required to obtain surety or performance bonding, to cause the issuance of letters of credit, or to provide parent company guarantees (or some combination thereof) in order to provide performance assurances to clients on behalf of its contractor subsidiaries. As these subsidiaries are wholly-owned, any actual liability is ordinarily reflected in the financial statement account balances determined pursuant to the Company’s accounting for contracts with customers. When sufficient information about claims on guaranteed or bonded projects would be available and monetary damages or other costs or losses would be determined to be probable, the Company would record such losses. Any such amounts that may be required to be paid in excess of the estimated costs to complete contracts in progress as of January 31, 2024 are not estimable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">As of January 31, 2024, the estimated amount of the Company’s unsatisfied bonded performance obligations, covering all of its subsidiaries, was approximately $0.5 billion. As of January 31, 2023, the outstanding amount of bonds covering other risks, including warranty obligations related to completed activities, was not material. Not all of our projects require bonding.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company also provided a financial guarantee, subject to certain terms and conditions, up to $3.6 million in support of business development efforts. Any estimated loss related to this guarantee was recorded during Fiscal 2022. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Warranties</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company generally provides assurance-type warranties for work performed under its construction contracts. The warranties cover defects in equipment, materials, design or workmanship, and most warranty periods typically run from <span style="-sec-ix-hidden:Hidden_I-EcIZnNm0-8_xC_-VfwyA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">nine</span></span> to twenty-four months after the completion of construction on a particular project. Because of the nature of the Company’s projects, including project owner inspections of the work both during construction and prior to substantial completion, the Company has not experienced material unexpected warranty costs in the past. Warranty costs are estimated based on experience with the type of work and any known risks relative to each completed project. The accruals of liabilities, which are established to cover estimated future warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the consolidated balances sheets. The liability amounts may be periodically adjusted to reflect changes in the estimated size and number of expected warranty claims.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Employee Benefit Plans</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company maintains 401(k) savings plans pursuant to which the Company makes discretionary contributions for the eligible and participating employees. The Company’s expense amounts related to these defined contribution plans were approximately $2.9 million, $2.7 million and $2.3 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. The Company also maintains nonqualified plans whereunder the payments of certain amounts of incentive compensation earned by key employees are deferred for periods of <span style="-sec-ix-hidden:Hidden_UiWZzy_TmEmtCX6Yep8HmA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">four</span></span> to seven years; payments are conditioned on continuous employment.</p> 5300000 4800000 1900000 2600000 3400000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following is a schedule of future minimum lease payments for the operating leases that were recognized in the consolidated balance sheet as of January 31, 2024 for the years ending January 31:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,823</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,461</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 275</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 221</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 213</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 625</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Total lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,618</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Less imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Present value of lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,318</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="-sec-ix-hidden:Hidden_qNpECDvgrU6HtsN64sIiSg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Less current portion (included in accrued expenses)</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,726</p></td></tr><tr><td style="vertical-align:bottom;width:86.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden__pj9JfbUxEaSw_4VXwOMHw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Noncurrent portion (included in noncurrent liabilities) </span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,592</p></td></tr></table> 2823000 1461000 275000 221000 213000 625000 5618000 300000 5318000 2726000 2592000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:54.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:54.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td></tr><tr><td style="vertical-align:bottom;width:54.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average remaining lease term</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;">41 months</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;">58 months</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:54.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average discount rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">%</p></td></tr></table> P41M P58M 0.052 0.037 9500000 11300000 9600000 500000000 3600000 twenty-four months 2900000 2700000 2300000 P7Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 10 – LEGAL CONTINGENCIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the normal course of business, the Company may have pending claims and legal proceedings. In the opinion of management, based on information available at this time, there are no current claims and proceedings that are expected to have a material adverse effect on the consolidated financial statements as of January 31, 2024. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In January 2019, GPS filed a lawsuit against Exelon West Medway II, LLC and Exelon Generation Company, LLC (together referred to as “Exelon”) in the U.S. District Court for the Southern District of New York for Exelon’s breach of contract and failure to remedy various conditions which negatively impacted the schedule and the costs associated with the construction by GPS of a gas-fired power plant for Exelon in Massachusetts. In September 2021, GPS reached a final settlement of all outstanding claims between the parties resulting in Exelon making a payment to GPS in the amount of $27.5 million, which was in excess of the previously reported total amount of receivables and contract assets. The excess amount was included in revenues for Fiscal 2022. </p> 27500000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 11 – STOCK-BASED COMPENSATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">On June 23, 2020, the Company’s stockholders approved the adoption of the 2020 Stock Plan (the “2020 Plan”), and the allocation of 500,000 shares of the Company’s common stock for issuance thereunder. On June 20, 2023, the Company’s stockholders approved an allocation of an additional 500,000 shares for issuance under the 2020 Plan. The Company’s board of directors may make share-based awards under the 2020 Plan to officers, directors and key employees. The 2020 Plan replaced the 2011 Stock Plan (the “2011 Plan”); the Company’s authority to make awards pursuant to the 2011 Plan expired on July 19, 2021. Together, the 2020 Plan and the 2011 Plan are hereinafter referred to as the “Stock Plans.”</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The features of the 2020 Plan are similar to those included in the 2011 Plan. Awards may include nonqualified stock options, incentive stock options, and restricted or unrestricted stock. The specific provisions for each award are documented in a written agreement between the Company and the awardee. All stock options awarded under the Stock Plans have exercise prices per share at least equal to the market value per share of the Company’s common stock on the date of grant. Stock options have a maximum term of ten years. Typically, stock options are awarded with <span style="-sec-ix-hidden:Hidden_FlC830toWUiQIWxBulrjRQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">one</span></span>-third of each stock option vesting on each of the first <span style="-sec-ix-hidden:Hidden__ygS8Tue00y7YMb5eCgkPQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span> anniversaries of the corresponding award date. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">As of January 31, 2024, there were 2,256,062 shares of common stock reserved for issuance under the Stock Plans; this number includes 543,087 shares of common stock available for future awards under the 2020 Plan. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Expense amounts related to stock awards were $4.5 million, $4.0 million and $3.5 million for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. At January 31, 2024, there was $6.0 million in unrecognized compensation cost related to outstanding stock awards that the Company expects to expense over the next three years. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Stock Options</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">A summary of stock option activity under the Stock Plans for Fiscal 2024 is presented below (shares in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:89.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, January 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,440</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 43.84</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5.46</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.11</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41.64</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (94)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 27.42</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 33.81</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44.95</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.67</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.43</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Exercisable, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,273</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45.33</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.40</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.61</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Vested or expected to vest, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44.95</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.67</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.43</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">A summary of the changes in the number of non-vested options to purchase shares of common stock for Fiscal 2024 is presented below (shares in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Non-vested, January 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 194</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.27</p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8.65</p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Vested</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (122)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.31</p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.68</p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Non-vested, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 92</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.85</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">During Fiscal 2023 and 2022, respectively, 67,000 and 73,000 stock options were granted with weighted-average grant-date fair values per share of $8.54 and $7.19. The total intrinsic value amounts related to the stock options exercised during Fiscal 2024 and Fiscal 2022 were $1.5 million and $0.6 million, respectively; the corresponding amount during Fiscal 2023 was insignificant. At January 31, 2024, the aggregate market value amounts of the shares of common stock subject to outstanding stock options and exercisable stock options where the options were “in-the-money” exceeded the aggregate exercise prices of such options by $5.6 million and $5.1 million, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Restricted Stock Units </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company awards restricted stock units to senior executives, certain other key employees and members of the Company’s board of directors. Awardees earn the right to receive shares of common stock as certain performance goals are achieved and/or service periods are satisfied. Each restricted stock unit expires on the three-year anniversary of the award. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During Fiscal 2024, the Company awarded PRSUs covering a target of 6,000 shares of common stock, ERSUs covering a target of 15,000 shares of common stock, RRSUs covering a target of 7,500 shares of common stock, TRSUs covering 77,800 shares of common stock, and 1,492 shares based on the amount of cash dividends deemed paid on shares earned pursuant to the awards. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for Fiscal 2024 are presented below (shares in thousands):</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, January 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.80</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Awarded</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 129</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.46</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Issued</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (42)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43.80</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (49)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15.57</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 348</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.21</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 0pt 0pt;">During Fiscal 2023 and 2022, restricted stock units covering a maximum of 146,871 and 145,721 shares were awarded with a weighted-average grant-date fair values per share of $29.26 and $39.52, respectively. The total fair values of restricted stock units that vested and were issued during Fiscal 2024, Fiscal 2023, and Fiscal 2022 were $1.8 million, $0.9 million and $0.8 million, respectively.</p> 500000 500000 P10Y 2256062 543087 4500000 4000000.0 3500000 6000000.0 P3Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:89.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, January 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,440</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 43.84</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5.46</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.11</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41.64</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (94)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 27.42</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 33.81</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44.95</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.67</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.43</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Exercisable, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,273</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45.33</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.40</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.61</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Vested or expected to vest, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.61%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44.95</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.67</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.43</span></p></td></tr></table> 1440000 43.84 P5Y5M15D 10.11 21000 41.64 94000 27.42 2000 33.81 1365000 44.95 P4Y8M1D 10.43 1273000 45.33 P4Y4M24D 10.61 1365000 44.95 P4Y8M1D 10.43 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Non-vested, January 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 194</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.27</p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8.65</p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Vested</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (122)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.31</p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.68</p></td></tr><tr><td style="vertical-align:bottom;width:72.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Non-vested, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 92</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.85</p></td></tr></table> 194000 7.27 21000 8.65 122000 7.31 1000 5.68 92000 7.85 67000 73000 8.54 7.19 1500000 600000 5600000 5100000 P3Y 6000 15000 7500 77800 1492 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for Fiscal 2024 are presented below (shares in thousands):</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, January 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.80</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Awarded</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 129</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.46</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Issued</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (42)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43.80</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (49)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15.57</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 348</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.21</p></td></tr></table> 310 30.80 129 30.46 42 43.80 49 15.57 348 30.21 146871 145721 29.26 39.52 1800000 900000 800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 12 – INCOME TAXES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Income Tax Expense Reconciliations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The components of the amounts of income tax expense for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are presented below:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,870</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 12,776</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,921</p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,835</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,012</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 643</p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,537</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 740</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,242</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,528</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,564</p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Deferred:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (923)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (803)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (341)</p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 301</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 133</p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,955</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2,452)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,333</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3,232)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (208)</p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,296</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,356</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The amounts of interest and penalties related to income taxes that were incurred by the Company during Fiscal 2024, Fiscal 2023 and Fiscal 2022 were not material. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s income tax expense amounts differed from corresponding amounts computed by applying the federal corporate income tax rate of 21% to the consolidated amount of income before income taxes for Fiscal 2024, Fiscal 2023 and Fiscal 2022 as presented below:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80.59%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Computed expected income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,276</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,660</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,883</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Difference resulting from:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Unrecognized tax loss benefit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,858</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Foreign tax rate differential</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2,294)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (441)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (352)</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">State income taxes, net of federal tax effect</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,688</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 860</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 614</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Excess executive compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,040</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,397</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,296</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Adjustment to valuation for foreign NOLs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,083</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2,574)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Net benefit related to Solar Tax Credit investments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (646)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Meals and entertainment expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 626</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 83</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 58</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Research and development tax credits adjustment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,181</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Recognition of research and development tax credit benefits</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3,430)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Other permanent differences and adjustments, net </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (56)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (440)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (143)</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,575</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,296</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,356</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Net Operating Loss (“NOL”) Carryback</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In March 2020, the Coronavirus, Aid, Relief, and Economic Security Act (the “CARES Act”) was signed into law. The tax changes of the CARES Act included a temporary suspension of the limitations on the future utilization of certain NOLs and re-established a carryback period for certain losses to five years. The NOLs eligible for carryback under the CARES Act include the Company’s domestic NOL for Fiscal 2020, which was approximately $39.5 million. The Company made the appropriate filing with the Internal Revenue Service (“IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 and 2015 in the total amount of approximately $12.7 million during the fiscal year ended January 31, 2021 (“Fiscal 2021”). At the instruction of the IRS, amended income tax returns for Fiscal 2016 and Fiscal 2015 were filed during the second quarter of Fiscal 2024; the IRS has not completed the examination and approval of the Company’s amended tax returns and refund request.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Research and Development Tax Credit Adjustments</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During Fiscal 2019, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research and development tax credits that may have been available to reduce prior year income taxes. This study focused on project costs incurred during the three-year period ended January 31, 2018. Based on the results of the study, management identified and estimated significant amounts of income tax benefits that were not previously recognized in the Company’s operating results for any prior year reporting period. The net amount of federal and state research and development tax credit benefit recognized in prior fiscal years $16.2 million, against which the Company recorded a corresponding liability for uncertain income tax return positions in the amount of $5.0 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During Fiscal 2021, the IRS concluded examinations of the Company’s consolidated federal income tax returns for the years ending January 31, 2018, 2017 and 2016, with its focus on the research and development tax credits included therein. The final revenue agents reports disagreed with the Company’s treatment of a substantial amount of the costs that supported the Company’s claims. The Company submitted a formal protest of the findings of the IRS examiner and requested an appeal hearing. At the conclusion of the hearing, the Company accepted a settlement offer from the IRS in the amount of approximately $7.9 million, before interest. As a result, during Fiscal 2023, the Company made an unfavorable adjustment to income tax expense in the approximate amount of $6.2 million; the accounting for this adjustment reduced the contra-asset balance by approximately $4.4 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company has also formally protested the conclusions reached by two states, where the Company filed tax returns reflecting the benefits of certain research and development credits, that the credits are not allowable. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Research and Development Credits</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During Fiscal 2022, in a manner similar to the process described above, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research and development tax credits that may have been available to reduce federal income taxes for Fiscal 2022 and Fiscal 2021. As a result, the Company filed amended federal income tax returns for those years including research and development tax credits in the total amount of $5.8 million, which was netted with a provision for uncertain tax return positions in the amount of $2.4 million, and recorded during Fiscal 2023. In May 2023, the Company received notification that its amended federal income tax returns for Fiscal 2021 and Fiscal 2022 were selected for examination. At January 31, 2024, the examination was in its early stages.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Unrecognized Income Tax Benefits</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Changes in the balances of contra-asset established for uncertain income tax positions for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are presented below:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:65.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:65.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Unrecognized income tax benefits, beginning of fiscal year</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,882</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,937</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,895</p></td></tr><tr><td style="vertical-align:top;width:65.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Increases related to prior period income tax positions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 78</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42</p></td></tr><tr><td style="vertical-align:top;width:65.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Increases related to current period income tax positions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:65.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Expirations of statutes of limitations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (407)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:65.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Settlements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (4,414)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:65.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Unrecognized income tax benefits, end of fiscal year</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,553</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,882</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,937</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">Gross unrecognized income tax benefits totaled $2.6 million for the fiscal year ended January 31, 2024, all of which would affect the Company’s effective income tax rate if recognized. The Company does not expect its unrecognized income tax benefits to change significantly within the next 12 months.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Recognition of Foreign NOL Income Tax Benefits</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company has deferred tax assets in a total amount of approximately $13.8 million related to prior year NOLs of its foreign subsidiaries, primarily the operation of APC located in the U.K. (“APC UK”). The Company has established a valuation allowance against a substantial portion of these NOLs. For Fiscal 2023, APC UK continued a turnaround of its operating results such that the Company believed that it had a stable earnings history upon which APC UK could reliably forecast future profitable operations. Based on the forecast that rested on the belief that meaningful investments would be made in the power infrastructure of the U.K. for the foreseeable future, the Company believed that it would be more likely than not that a certain portion of the deferred tax assets would be realized. Accordingly, the Company reversed a portion of the corresponding allowance during Fiscal 2023 in the amount of $2.6 million. However, the unexpected difficulties with one construction project and the loss that was incurred by APC UK related to it caused management to lower its estimates of the amount of future net earnings of APC UK available to offset its net operating loss carryforwards. As a result, the Company increased the allowance by $2.1 million in Fiscal 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Income Tax Refunds</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">As of January 31, 2024 and 2023, the balances of other current assets in the consolidated balance sheet included income tax refunds receivable and prepaid income taxes in the total amounts of approximately $18.3 million and $15.3 million, respectively. The income tax refunds included the amount expected to be received from the IRS upon its review and approval of the Company’s NOL carryback refund request and the completion of its examination of the amended tax returns for Fiscal 2022 and Fiscal 2021 as described above. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Deferred Taxes</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The tax effects of temporary differences that are reflected in deferred taxes as of January 31, 2024 and 2023 included the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Assets:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Net operating loss carryforwards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 19,772</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,964</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Stock awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,726</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,726</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Accrued expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,955</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,480</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,383</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,189</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Research and development costs deferral</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,622</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,015</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Research and development credit carryforwards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 269</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 148</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 337</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 27,606</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 20,980</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3,819)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3,674)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Property and equipment </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (893)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,033)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Construction contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (839)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,229)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,378)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,184)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (619)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (431)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (7,548)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (7,551)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Valuation allowances</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (17,799)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (9,740)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"> Deferred tax assets, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,259</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,689</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Taxpayers are now required to capitalize and amortize research and experimental expenses over five or 15 years for tax years beginning in 2022 or later. Accordingly, for Fiscal 2024 and 2023, the Company did estimate an amount of such expenses which resulted in the deferred tax asset balances presented in the table above. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company acquired unused NOLs for federal income tax reporting purposes from TRC that are subject to limitations imposed by Section 382 of the Internal Revenue Code of 1986, as amended. These losses are subject to annual limits that reduce the aggregate amount of NOLs available to the Company in the future to approximately $5.5 million. These NOLs are available to offset future taxable income and, if not utilized, begin expiring during 2032. The NOL carryforwards related to APC UK do not expire. The Company also has certain NOLs that will be available to the Company for state income tax reporting purposes that are substantially similar to the federal NOLs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s ability to realize deferred tax assets, including those related to the NOLs discussed above, depends primarily upon the generation of sufficient future taxable income to allow for the Company’s use of temporarily deferred deductions and tax planning strategies. If such estimates and assumptions change in the future, the Company may be required to record additional valuation allowances against some or all of its deferred tax assets resulting in additional income tax expense in the future. At this time, based substantially on the strong earnings performance of the Company’s power industry services reporting segment, management believes that it is more likely than not that the Company will realize the benefit of significantly all of its deferred tax assets, net of valuation allowances. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Income Tax Returns</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company is subject to federal and state income taxes in the U.S., and income taxes in Ireland and the U.K. Tax treatments within each jurisdiction are subject to the interpretation of the related tax laws and regulations which require the application of significant judgment. The Company is no longer subject to income tax examinations by authorities for its fiscal years ended on or before January 31, 2020, except for several notable exceptions including Ireland, the U.K. and several states where the open periods are one year longer. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;background:#ffffff;">Solar Energy Projects</b> </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company holds equity investments in Solar Tax Credit (“STC”) investments. Primarily, the STC investments are structured as limited liability companies that invest in solar energy projects that are eligible to receive energy tax credits. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During Fiscal 2024 and Fiscal 2022, the Company made investments of approximately $5.1 million and $5.0 million in STC investments. As of January 31, 2024, the Company had $3.3 million remaining of cash investment commitments related to its STC investments, which are expected to be paid in Fiscal 2025. At January 31, 2024 and 2023, the investment account balances were $2.1 million and $1.2 million, respectively, which are included in other assets in the consolidated balance sheets. These investments are expected to provide positive overall returns over their expected lives.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company has elected to use the proportional amortization method (“PAM”) for STC investments that qualify. Under PAM, an investment is amortized in proportion to the allocation of tax benefits received in each period, and the investment amortization and tax benefit amounts are presented net within income tax expense in the Company’s consolidated statements of earnings. Only the Company’s STC investment made in Fiscal 2024 qualifies for PAM. During Fiscal 2024, the Company recognized $8.1 million of income tax credits and other income tax benefits and recorded $7.4 million of investment amortization related to this STC investment. The amount of non-income tax-related activity and other returns related to this investment was not material for Fiscal 2024. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Not all of the Company’s STC investments qualify for PAM. For STC investments that do not qualify for PAM, the Company accounts for the investment using the equity method of accounting and includes income and losses related to the investment in other income in the Company’s consolidated statements of earnings. Tax credits, when recognized, are recorded as a reduction of the corresponding investment balance with an offsetting reduction to accrued taxes payable in accordance with the deferral method. For these STC investments that do not qualify for PAM, income tax credits in the approximate amount of $4.5 million were recognized during Fiscal 2022; no income tax credits were recognized in Fiscal 2024 and Fiscal 2023. For Fiscal 2024, Fiscal 2023 and Fiscal 2022, the Company recorded its share of losses of less than $0.1 million, income of $1.1 million and losses of $0.4 million, respectively, from these STC investments.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,870</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 12,776</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,921</p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,835</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,012</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 643</p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,537</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 740</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,242</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,528</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,564</p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Deferred:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (923)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (803)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (341)</p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 301</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 133</p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,955</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2,452)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:62.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,333</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3,232)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (208)</p></td></tr><tr><td style="vertical-align:top;width:62.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,296</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,356</p></td></tr></table> 10870000 12776000 10921000 1835000 1012000 643000 2537000 740000 15242000 14528000 11564000 -923000 -803000 -341000 301000 23000 133000 1955000 -2452000 1333000 -3232000 -208000 16575000 11296000 11356000 0.21 0.21 0.21 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80.59%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Computed expected income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,276</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,660</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,883</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Difference resulting from:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Unrecognized tax loss benefit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,858</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Foreign tax rate differential</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2,294)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (441)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (352)</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">State income taxes, net of federal tax effect</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,688</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 860</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 614</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Excess executive compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,040</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,397</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,296</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Adjustment to valuation for foreign NOLs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,083</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2,574)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Net benefit related to Solar Tax Credit investments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (646)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Meals and entertainment expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 626</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 83</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 58</span></p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Research and development tax credits adjustment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,181</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Recognition of research and development tax credit benefits</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3,430)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Other permanent differences and adjustments, net </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (56)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (440)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (143)</p></td></tr><tr><td style="vertical-align:bottom;width:63.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,575</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,296</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,356</span></p></td></tr></table> 10276000 9660000 9883000 -3858000 -2294000 -441000 -352000 1688000 860000 614000 1040000 1397000 1296000 2083000 -2574000 646000 626000 83000 58000 6181000 -3430000 -56000 -440000 -143000 16575000 11296000 11356000 P5Y 39500000 12700000 P3Y 16200000 5000000.0 7900000 6200000 4400000 5800000 2400000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:65.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:65.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Unrecognized income tax benefits, beginning of fiscal year</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,882</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,937</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,895</p></td></tr><tr><td style="vertical-align:top;width:65.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Increases related to prior period income tax positions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 78</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42</p></td></tr><tr><td style="vertical-align:top;width:65.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Increases related to current period income tax positions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:65.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Expirations of statutes of limitations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (407)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:65.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Settlements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (4,414)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:65.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Unrecognized income tax benefits, end of fiscal year</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,553</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,882</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,937</p></td></tr></table> 2882000 4937000 4895000 78000 42000 2359000 407000 4414000 2553000 2882000 4937000 2600000 13800000 2600000 2100000 18300000 15300000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Assets:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;white-space:nowrap;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Net operating loss carryforwards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 19,772</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,964</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Stock awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,726</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,726</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Accrued expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,955</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,480</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,383</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,189</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Research and development costs deferral</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,622</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,015</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Research and development credit carryforwards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 269</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 148</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 337</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 27,606</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 20,980</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3,819)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3,674)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Property and equipment </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (893)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,033)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Construction contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (839)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,229)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,378)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,184)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (619)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (431)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (7,548)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (7,551)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Valuation allowances</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (17,799)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (9,740)</p></td></tr><tr><td style="vertical-align:top;width:73.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"> Deferred tax assets, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,259</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,689</span></p></td></tr></table> 19772000 13964000 2726000 2726000 1955000 1480000 1383000 1189000 1622000 1015000 269000 148000 337000 27606000 20980000 3819000 3674000 893000 1033000 839000 1229000 1378000 1184000 619000 431000 7548000 7551000 17799000 9740000 2259000 3689000 5500000 5100000 5000000.0 3300000 2100000 1200000 8100000 7400000 4500000 0 0 100000 1100000 400000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 13 – NET INCOME PER SHARE</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Basic and diluted net income per share attributable to the stockholders of Argan, Inc. for Fiscal 2024, Fiscal 2023 and Fiscal 2022 are computed as follows (shares in thousands except in note (1) below the chart):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:89.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 32,358</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33,098</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 38,244</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average number of shares outstanding – basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,365</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,083</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,715</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Effect of stock awards <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 183</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 93</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 198</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average number of shares outstanding – diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,548</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,176</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,913</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income per share attributable to the stockholders of Argan, Inc.</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.42</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.35</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.43</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.39</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.33</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.40</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:7.5pt;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">For Fiscal 2024, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options and restricted stock units covering an aggregate of </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">685,334</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">, </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">978,834</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> and </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">570,167</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> shares of common stock, respectively. The options had exercise prices per share in excess of the average market price per share for the applicable year.</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">  </span></td></tr></table> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:89.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 32,358</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33,098</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 38,244</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average number of shares outstanding – basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,365</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,083</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,715</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Effect of stock awards <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 183</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 93</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 198</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average number of shares outstanding – diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,548</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,176</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,913</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income per share attributable to the stockholders of Argan, Inc.</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.42</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.35</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.43</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.39</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.33</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.40</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:7.5pt;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">For Fiscal 2024, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options and restricted stock units covering an aggregate of </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">685,334</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">, </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">978,834</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> and </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">570,167</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> shares of common stock, respectively. The options had exercise prices per share in excess of the average market price per share for the applicable year.</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">  </span></td></tr></table> 32358000 33098000 38244000 13365000 14083000 15715000 183000 93000 198000 13548000 14176000 15913000 2.42 2.35 2.43 2.39 2.33 2.40 685334 978834 570167 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 14 – CASH DIVIDENDS AND COMMON STOCK REPURCHASES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">On September 19, 2023, Argan’s board of directors increased the Company’s quarterly cash dividend by 20% from $0.25 to $0.30 per share of common stock and, accordingly, the Company made regular quarterly cash dividend payments of $0.30 per share of common stock in October 2023 and January 2024. The Company also made regular quarterly cash dividend payments of $0.25 per share of common stock in April 2023 and July 2023. During Fiscal 2023 and Fiscal 2022, the Company made regular quarterly cash dividend payments of $0.25 per share of common stock. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Pursuant to its established program and authorizations provided by Argan’s board of directors, the Company began to repurchase shares of its common stock in November 2021. During Fiscal 2024, the Company repurchased 230,160 shares of common stock, all on the open market, for an aggregate price of approximately <span style="-sec-ix-hidden:Hidden_VMuv8t75jkewYhVKk-iVXA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">$9.2</span></span> million, or $40.01 per share. In addition, the Company repurchased 73,000 shares of common stock in a direct purchase from a director of the Company </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">for an aggregate price of approximately $3.2 million, or $43.50 per share. During Fiscal 2024, the Company accepted 31,066 shares of common stock at the average price per share of $47.19 as consideration for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During Fiscal 2023, the Company repurchased 1,855,714 shares of common stock, most on the open market, for an aggregate price of approximately $68.2 million, or $36.77 per share. During Fiscal 2022, the Company repurchased 527,752 shares of common stock, all on the open market, for an aggregate price of approximately $20.4 million, or $38.60 per share. For Fiscal 2024, the Company used 135,156 shares of treasury stock to settle stock option exercises and other share-based awards. For Fiscal 2023 and 2022, no shares of treasury stock were used to settle such transactions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In August 2022, the Inflation Reduction Act was signed into law, which introduced a 1% excise tax on shares repurchased after December 31, 2022. For Fiscal 2024 and Fiscal 2023, the excise tax was not material.</p> 0.20 0.25 0.30 0.30 0.30 0.25 0.25 0.25 0.25 230160 40.01 73000 3200000 43.50 31066 47.19 1855714 68200000 36.77 527752 20400000 38.60 135156 0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 15 – </b><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">VARIABLE INTEREST ENTITY</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In January 2018, the Company was deemed to be the primary beneficiary of a VIE that was performing the project development activities related to the planned construction of a new natural gas-fired power plant. Consideration for the Company’s engineering and financial support provided to the project included the right to build the power plant pursuant to a turnkey EPC services contract that was negotiated and announced. In Fiscal 2023, the Company was deemed to no longer be the primary beneficiary of the VIE, and accordingly it was deconsolidated. Prior to deconsolidation, the account balances of the VIE had been included in the Company’s consolidated financial statements, including capitalized development costs that were included in property, plant and equipment.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="background:#ffffff;">During Fiscal 2022, the project owner was unable to obtain the necessary equity financing for the project, and the Company recorded an impairment loss related to the capitalized development costs of this project in the amount of </span><span style="background:#ffffff;">$7.9</span><span style="background:#ffffff;"> million, of which </span><span style="background:#ffffff;">$2.5</span><span style="background:#ffffff;"> million was attributed to the non-controlling interest. </span>In Fiscal 2023, prior to deconsolidation, the VIE settled on amounts owed for certain impaired development costs and recognized a gain of $1.6 million recorded in selling, general and administrative expenses, all of which was attributed to the non-controlling interest. The VIE distributed $0.7 million to the non-controlling interest.</p> 7900000 2500000 1600000 700000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 16 – CUSTOMER CONCENTRATIONS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The majority of the Company’s consolidated revenues relate to performance by the power industry services segment which provided 73%, 76% and 78% of consolidated revenues for Fiscal 2024, Fiscal 2023 and Fiscal 2022, respectively. For Fiscal 2024, Fiscal 2023 and Fiscal 2022, the Company’s industrial construction services segment represented 25%, 20% and 19% of consolidated revenues, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">For Fiscal 2024, the Company’s most significant customer relationships included three power industry services customers, which accounted for 19%, 16% and 15% of consolidated revenues. For Fiscal 2023, the Company’s most significant customer relationships included two power industry services customers, which accounted for 38% and 12% of consolidated revenues. For Fiscal 2022, the Company’s most significant customer relationship included one power industry services customer which accounted for 57% of consolidated revenues. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The accounts receivable balances from three major customers represented 16%, 14% and 14% of the corresponding consolidated balance as of January 31, 2024, and accounts receivable balances from three major customers represented 36%, 12% and 12% of the corresponding consolidated balance as of January 31, 2023. The contract asset balance attributable to two major customers represented 39% and 32% of the corresponding consolidated balance as of January 31, 2024. The contract asset balance related to one major customer represented 70% of the corresponding consolidated balance as of January 31, 2023. </p> 0.73 0.76 0.78 0.25 0.20 0.19 3 0.19 0.16 0.15 2 0.38 0.12 1 0.57 3 0.16 0.14 0.14 3 0.36 0.12 0.12 2 0.39 0.32 1 0.70 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 17 – SEGMENT REPORTING</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Segments represent components of an enterprise for which discrete financial information is available that is evaluated regularly by the Company’s chief executive officer, who is the chief operating decision maker, in determining how to allocate resources and in assessing performance. The Company’s reportable segments recognize revenues and incur expenses, are organized in separate business units with different management teams, customers, talents and services, and may include more than one operating segment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Intersegment revenues and the related cost of revenues, are netted against the corresponding amounts of the segment receiving the intersegment services. For Fiscal 2024, intersegment revenues were not material. For Fiscal 2023 and 2022, intersegment revenues totaled approximately $0.6 million and $2.8 million, respectively. Intersegment revenues for the aforementioned periods primarily related to services provided by the industrial construction services segment to the power industry services segment and were based on prices negotiated by the parties.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Summarized below are certain operating results and financial position data of the Company’s reportable business segments for Fiscal 2024, Fiscal 2023 and Fiscal 2022. The “Other” column in each summary includes the Company’s corporate expenses. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 416,281</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 142,801</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,251</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 573,333</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 357,705</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 124,321</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,473</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 492,499</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 58,576</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,480</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,778</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 80,834</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 24,274</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,440</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,469</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,193</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,376</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 34,302</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,040</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,309</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (11,193)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 36,458</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other income (loss), net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,871</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,393)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,475</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 48,173</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,040</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,306</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (12,586)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 48,933</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,575</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 32,358</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 392</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 392</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 527</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,073</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 409</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,013</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,266</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,014</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 473</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,756</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 383,508</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 59,123</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,872</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 100,676</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 547,179</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 256,975</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41,869</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,591</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,825</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 302,260</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,467</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 411,571</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 76,012</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,703</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 103,943</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 598,229</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 346,033</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 92,774</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,233</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 455,040</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 277,402</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 78,034</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,243</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 368,679</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 68,631</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,740</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,990</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 86,361</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 22,635</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,900</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,353</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,804</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,692</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45,996</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,840</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (363)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (10,804)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41,669</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,829</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 499</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,331</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,825</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,840</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (360)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (10,305)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 46,000</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,296</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 34,704</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 618</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 114</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 732</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 567</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,978</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,983</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,450</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,717</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 189</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,372</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 307,742</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 42,488</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,900</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 84,572</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 438,702</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 170,164</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 29,550</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,317</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,472</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 202,503</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,467</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 334,593</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 60,038</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,153</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 87,703</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 489,487</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr></table><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 398,089</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 97,890</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,391</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 509,370</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 317,130</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 81,391</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,117</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 409,638</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 80,959</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,499</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,274</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 99,732</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,323</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,167</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,146</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,685</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 47,321</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Impairment losses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,901</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,901</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,735</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,332</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 128</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (8,685)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,510</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,545</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,552</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 47,280</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,332</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 128</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (8,678)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 47,062</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,356</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 35,706</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 208</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 662</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 870</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 605</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,325</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 433</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,367</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 713</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 107</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 597</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,422</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 322,448</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,681</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,957</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 156,198</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 507,284</p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 209,829</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,534</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,916</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,748</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 223,027</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 345,956</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,002</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,741</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 156,886</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 553,585</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1pt;margin:0pt;"><span style="font-size:1pt;line-height:1.19;visibility:hidden;">​</span></p> 1 0 600000 2800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 416,281</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 142,801</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,251</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 573,333</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 357,705</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 124,321</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,473</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 492,499</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 58,576</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,480</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,778</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 80,834</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 24,274</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,440</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,469</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,193</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,376</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 34,302</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,040</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,309</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (11,193)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 36,458</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other income (loss), net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,871</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (3)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1,393)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,475</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 48,173</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,040</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,306</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (12,586)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 48,933</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,575</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 32,358</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 392</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 392</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 527</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,073</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 409</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,013</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,266</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,014</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 473</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,756</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 383,508</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 59,123</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,872</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 100,676</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 547,179</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 256,975</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41,869</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,591</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,825</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 302,260</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,467</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 411,571</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 76,012</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,703</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 103,943</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 598,229</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 346,033</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 92,774</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,233</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 455,040</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 277,402</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 78,034</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,243</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 368,679</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 68,631</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,740</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,990</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 86,361</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 22,635</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,900</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,353</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,804</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,692</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45,996</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,840</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (363)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (10,804)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41,669</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,829</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 499</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,331</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,825</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,840</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (360)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (10,305)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 46,000</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,296</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 34,704</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 618</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 114</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 732</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 567</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,978</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,983</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,450</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,717</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 189</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,372</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 307,742</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 42,488</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,900</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 84,572</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 438,702</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 170,164</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 29,550</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,317</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,472</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 202,503</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,467</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 334,593</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 60,038</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,153</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 87,703</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 489,487</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr></table><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 398,089</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 97,890</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,391</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 509,370</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 317,130</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 81,391</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,117</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 409,638</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 80,959</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,499</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,274</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 99,732</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,323</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,167</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,146</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,685</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 47,321</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Impairment losses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,901</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,901</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,735</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,332</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 128</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (8,685)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,510</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,545</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,552</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 47,280</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,332</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 128</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (8,678)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 47,062</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,356</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 35,706</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 208</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 662</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 870</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 605</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,325</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 433</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,367</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 713</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 107</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 597</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,422</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 322,448</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,681</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,957</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 156,198</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 507,284</p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 209,829</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,534</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,916</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,748</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 223,027</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 90</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,033</p></td></tr><tr><td style="vertical-align:bottom;width:43.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 345,956</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,002</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,741</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 156,886</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 553,585</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1pt;margin:0pt;"><span style="font-size:1pt;line-height:1.19;visibility:hidden;">​</span></p> 416281000 142801000 14251000 573333000 357705000 124321000 10473000 492499000 58576000 18480000 3778000 80834000 24274000 6440000 2469000 11193000 44376000 34302000 12040000 1309000 -11193000 36458000 13871000 -3000 -1393000 12475000 48173000 12040000 1306000 -12586000 48933000 16575000 32358000 392000 392000 527000 1073000 409000 4000 2013000 1266000 1014000 473000 3000 2756000 383508000 59123000 3872000 100676000 547179000 256975000 41869000 1591000 1825000 302260000 18476000 9467000 90000 28033000 411571000 76012000 6703000 103943000 598229000 346033000 92774000 16233000 455040000 277402000 78034000 13243000 368679000 68631000 14740000 2990000 86361000 22635000 7900000 3353000 10804000 44692000 45996000 6840000 -363000 -10804000 41669000 3829000 3000 499000 4331000 49825000 6840000 -360000 -10305000 46000000 11296000 34704000 618000 114000 732000 567000 1978000 434000 4000 2983000 1450000 1717000 189000 16000 3372000 307742000 42488000 3900000 84572000 438702000 170164000 29550000 1317000 1472000 202503000 18476000 9467000 90000 28033000 334593000 60038000 7153000 87703000 489487000 398089000 97890000 13391000 509370000 317130000 81391000 11117000 409638000 80959000 16499000 2274000 99732000 28323000 8167000 2146000 8685000 47321000 7901000 7901000 44735000 8332000 128000 -8685000 44510000 2545000 7000 2552000 47280000 8332000 128000 -8678000 47062000 11356000 35706000 208000 662000 870000 605000 2325000 433000 4000 3367000 713000 107000 597000 5000 1422000 322448000 25681000 2957000 156198000 507284000 209829000 9534000 1916000 1748000 223027000 18476000 9467000 90000 28033000 345956000 44002000 6741000 156886000 553585000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 18 – SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Balance Sheet</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">Other current assets consisted of the following at January 31, 2024 and 2023: </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax refunds receivable and prepaid income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,267</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,327</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Raw materials inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,985</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,903</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Prepaid expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,035</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,541</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,972</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,563</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 39,259</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 38,334</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Inventories consist of raw materials held for use in the ordinary course of business and is valued at the lower of cost or net realizable value.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Accrued expenses consisted of the following at January 31, 2024 and 2023: </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Accrued project costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,135</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 17,448</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Accrued compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21,206</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,286</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,726</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,567</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,654</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,566</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total accrued expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 81,721</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,867</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Other Loss</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 0pt 0pt;">On March 7, 2023, the Company determined that it had been a victim of a complex criminal scheme, which resulted in fraudulently-induced outbound wire transfers to a third-party account. The Company retained specialized legal counsel and a cybersecurity services firm to assist in an independent forensic investigation of the incident and the efforts to recover the funds. The total amount of the fraud loss and the professional fees, net with funds recovered, of approximately $2.7 million is reflected in other income as a loss in the consolidated statement of earnings for Fiscal 2024.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax refunds receivable and prepaid income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,267</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,327</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Raw materials inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,985</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,903</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Prepaid expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,035</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,541</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,972</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,563</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 39,259</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 38,334</span></p></td></tr></table> 18267000 15327000 9985000 11903000 6035000 4541000 4972000 6563000 39259000 38334000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Accrued project costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,135</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 17,448</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Accrued compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21,206</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,286</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,726</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,567</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,654</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,566</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total accrued expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 81,721</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,867</span></p></td></tr></table> 49135000 17448000 21206000 18286000 2726000 1567000 8654000 12566000 81721000 49867000 2700000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 19 – SUBSEQUENT EVENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Subsequent to January 31, 2024, the Company continued to repurchase shares of its common stock pursuant to the Share Repurchase Plan. As of April 11, 2024, the date of the last subsequent transaction, the Company had repurchased 5,600 shares since year-end, all on the open market, for an aggregate price of approximately $0.3 million, or $44.87 per share, exclusive of share repurchase excise tax. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">On April 10, 2024, the Company’s Board of Directors declared a regular quarterly cash dividend in the amount of $0.30 per share of common stock, payable on April 30, 2024 to stockholders of record at the close of business on April 22, 2024.</p> 5600 300000 44.87 0.30