0001558370-24-016050.txt : 20241205 0001558370-24-016050.hdr.sgml : 20241205 20241205161530 ACCESSION NUMBER: 0001558370-24-016050 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 86 CONFORMED PERIOD OF REPORT: 20241031 FILED AS OF DATE: 20241205 DATE AS OF CHANGE: 20241205 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-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-31756 FILM NUMBER: 241529292 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-Q 1 agx-20241031x10q.htm 10-Q
0000100591--01-312025Q3falseARGAN INChttp://fasb.org/us-gaap/2024#Investmentshttp://fasb.org/us-gaap/2024#InvestmentsP14DP1Y185000009500000http://fasb.org/us-gaap/2024#SecuredOvernightFinancingRateSofrMemberP9MP24M0000100591us-gaap:TreasuryStockCommonMember2024-08-012024-10-310000100591us-gaap:TreasuryStockCommonMember2024-02-012024-10-310000100591us-gaap:TreasuryStockCommonMember2023-08-012023-10-310000100591us-gaap:TreasuryStockCommonMember2023-02-012023-10-310000100591us-gaap:CommonStockMember2024-08-012024-10-310000100591us-gaap:CommonStockMember2024-02-012024-10-310000100591us-gaap:CommonStockMember2023-08-012023-10-310000100591us-gaap:CommonStockMember2023-02-012023-10-310000100591us-gaap:TreasuryStockCommonMember2024-10-310000100591us-gaap:RetainedEarningsMember2024-10-310000100591us-gaap:AdditionalPaidInCapitalMember2024-10-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-10-310000100591us-gaap:TreasuryStockCommonMember2024-07-310000100591us-gaap:RetainedEarningsMember2024-07-310000100591us-gaap:AdditionalPaidInCapitalMember2024-07-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-07-3100001005912024-07-310000100591us-gaap:TreasuryStockCommonMember2024-01-310000100591us-gaap:RetainedEarningsMember2024-01-310000100591us-gaap:AdditionalPaidInCapitalMember2024-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-310000100591us-gaap:TreasuryStockCommonMember2023-10-310000100591us-gaap:RetainedEarningsMember2023-10-310000100591us-gaap:AdditionalPaidInCapitalMember2023-10-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-10-310000100591us-gaap:TreasuryStockCommonMember2023-07-310000100591us-gaap:RetainedEarningsMember2023-07-310000100591us-gaap:AdditionalPaidInCapitalMember2023-07-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-07-3100001005912023-07-310000100591us-gaap:TreasuryStockCommonMember2023-01-310000100591us-gaap:RetainedEarningsMember2023-01-310000100591us-gaap:AdditionalPaidInCapitalMember2023-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-310000100591us-gaap:CommonStockMember2024-10-310000100591us-gaap:CommonStockMember2024-07-310000100591us-gaap:CommonStockMember2024-01-310000100591us-gaap:CommonStockMember2023-10-310000100591us-gaap:CommonStockMember2023-07-310000100591us-gaap:CommonStockMember2023-01-3100001005912023-02-012024-01-310000100591us-gaap:RestrictedStockUnitsRSUMember2024-10-310000100591us-gaap:RestrictedStockUnitsRSUMember2024-01-310000100591srt:MinimumMember2024-11-012024-10-310000100591srt:MaximumMember2024-11-012024-10-3100001005912024-11-012024-10-310000100591us-gaap:IntersegmentEliminationMember2024-08-012024-10-310000100591country:US2024-08-012024-10-310000100591country:IE2024-08-012024-10-310000100591country:GB2024-08-012024-10-310000100591us-gaap:IntersegmentEliminationMember2024-02-012024-10-310000100591country:US2024-02-012024-10-310000100591country:IE2024-02-012024-10-310000100591country:GB2024-02-012024-10-310000100591country:US2023-08-012023-10-310000100591country:IE2023-08-012023-10-310000100591country:GB2023-08-012023-10-310000100591country:US2023-02-012023-10-310000100591country:IE2023-02-012023-10-310000100591country:GB2023-02-012023-10-310000100591agx:AtlanticProjectsCompanyLimitedMember2024-05-042024-05-040000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-08-012024-10-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-02-012024-10-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-08-012023-10-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-02-012023-10-310000100591us-gaap:RevolvingCreditFacilityMember2024-05-310000100591agx:ExpiresOnMay312027Memberus-gaap:RevolvingCreditFacilityMember2024-05-240000100591agx:LettersOfCreditExpireOnMay312024Memberus-gaap:RevolvingCreditFacilityMember2017-05-150000100591us-gaap:RevolvingCreditFacilityMember2024-10-310000100591us-gaap:CorporateNonSegmentMember2024-08-012024-10-310000100591agx:GemmaPowerSystemsMemberus-gaap:FinancialGuaranteeMember2024-10-310000100591agx:RobertsCompanyIncMember2024-10-310000100591agx:GemmaPowerSystemLlcMember2024-10-310000100591agx:RobertsCompanyIncMember2024-01-310000100591agx:GemmaPowerSystemLlcMember2024-01-310000100591us-gaap:TradeNamesMember2024-10-310000100591us-gaap:CustomerRelationshipsMember2024-10-310000100591us-gaap:TradeNamesMember2024-01-310000100591us-gaap:CustomerRelationshipsMember2024-01-310000100591us-gaap:RetainedEarningsMember2024-08-012024-10-310000100591us-gaap:RetainedEarningsMember2024-02-012024-10-310000100591us-gaap:RetainedEarningsMember2023-08-012023-10-310000100591us-gaap:RetainedEarningsMember2023-02-012023-10-310000100591us-gaap:CorporateNonSegmentMember2024-02-012024-10-310000100591us-gaap:CorporateNonSegmentMember2023-08-012023-10-310000100591us-gaap:CorporateNonSegmentMember2023-02-012023-10-3100001005912021-01-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2024-08-012024-10-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2024-08-012024-10-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2024-02-012024-10-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2024-02-012024-10-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2023-08-012023-10-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2023-08-012023-10-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2023-02-012023-10-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2023-02-012023-10-310000100591agx:MajorCustomerTwoMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2024-10-312024-10-310000100591agx:MajorCustomerThreeMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2024-10-312024-10-310000100591agx:MajorCustomerFourMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2024-10-312024-10-310000100591agx:MajorCustomerFourMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2024-10-312024-10-310000100591agx:MajorCustomerTwoMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2024-08-012024-10-310000100591agx:MajorCustomerThreeMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2024-08-012024-10-310000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2024-08-012024-10-310000100591agx:MajorCustomerFourMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2024-08-012024-10-310000100591agx:TelecommunicationInfrastructureServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2024-08-012024-10-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2024-08-012024-10-310000100591agx:IndustrialConstructionServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2024-08-012024-10-310000100591agx:MajorCustomerTwoMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2024-02-012024-10-310000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2024-02-012024-10-310000100591agx:TelecommunicationInfrastructureServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2024-02-012024-10-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2024-02-012024-10-310000100591agx:MajorCustomerTwoMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2024-02-012024-10-310000100591agx:MajorCustomerThreeMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2024-02-012024-10-310000100591agx:MajorCustomerOneMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2024-02-012024-10-310000100591agx:MajorCustomerOneMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2024-02-012024-10-310000100591agx:IndustrialConstructionServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2024-02-012024-10-310000100591agx:MajorCustomerTwoMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-08-012023-10-310000100591agx:MajorCustomerThreeMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-08-012023-10-310000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-08-012023-10-310000100591agx:TelecommunicationInfrastructureServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-08-012023-10-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-08-012023-10-310000100591agx:IndustrialConstructionServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-08-012023-10-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:MajorCustomerTwoMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-10-310000100591agx:MajorCustomerThreeMemberagx:IndustrialConstructionServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-10-310000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-10-310000100591agx:TelecommunicationInfrastructureServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-02-012023-10-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-02-012023-10-310000100591agx:IndustrialConstructionServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-02-012023-10-3100001005912024-05-012024-07-310000100591agx:O2025Q3DividendsMember2024-08-012024-10-310000100591agx:O2025Q2DividendsMember2024-05-012024-07-310000100591agx:O2025Q1DividendsMember2024-02-012024-04-300000100591agx:O2024Q4DividendsMember2023-11-012024-01-310000100591agx:O2024Q3DividendsMember2023-08-012023-10-310000100591agx:O2024Q2DividendsMember2023-05-012023-07-310000100591agx:O2024Q1DividendsMember2023-02-012023-04-3000001005912023-01-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:MoneyMarketFundsMember2024-10-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:MoneyMarketFundsMember2024-01-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:USTreasurySecuritiesMember2024-10-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:DomesticCorporateDebtSecuritiesMember2024-10-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:USTreasurySecuritiesMember2024-01-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:DomesticCorporateDebtSecuritiesMember2024-01-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2024-10-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2024-10-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2024-01-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2024-01-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2024-10-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2024-10-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialConstructionServicesMember2024-10-310000100591us-gaap:CorporateNonSegmentMember2024-10-310000100591us-gaap:OperatingSegmentsMemberagx:TelecommunicationsInfrastructureServicesMember2023-10-310000100591us-gaap:OperatingSegmentsMemberagx:PowerIndustryServicesMember2023-10-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialConstructionServicesMember2023-10-310000100591us-gaap:CorporateNonSegmentMember2023-10-3100001005912023-10-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialConstructionServicesMember2024-08-012024-10-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialConstructionServicesMember2024-02-012024-10-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialConstructionServicesMember2023-08-012023-10-310000100591us-gaap:OperatingSegmentsMemberagx:IndustrialConstructionServicesMember2023-02-012023-10-310000100591us-gaap:AdditionalPaidInCapitalMember2024-08-012024-10-310000100591us-gaap:AdditionalPaidInCapitalMember2024-02-012024-10-310000100591us-gaap:AdditionalPaidInCapitalMember2023-08-012023-10-3100001005912023-08-012023-10-310000100591us-gaap:AdditionalPaidInCapitalMember2023-02-012023-10-3100001005912024-08-012024-10-3100001005912024-11-290000100591us-gaap:HeldtomaturitySecuritiesMember2024-10-310000100591us-gaap:HeldtomaturitySecuritiesMember2024-01-310000100591srt:MinimumMember2024-02-012024-10-310000100591srt:MaximumMember2024-02-012024-10-310000100591us-gaap:RestrictedStockUnitsRSUMember2024-02-012024-10-3100001005912024-09-170000100591agx:TimeBasedRestrictedStockUnitsMember2024-10-310000100591agx:RenewablePerformanceBasedRestrictedStockUnitsMember2024-10-310000100591agx:PerformanceBasedRestrictedStockUnitsMember2024-10-310000100591agx:EarningsPerSharePerformanceBasedRestrictedStockUnitsMember2024-10-310000100591us-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2024-10-312024-10-310000100591us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2024-10-312024-10-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2024-08-012024-10-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2024-02-012024-10-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-08-012023-10-310000100591us-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-02-012024-01-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-10-310000100591agx:ExpiresOnMay312027Memberus-gaap:RevolvingCreditFacilityMember2024-05-242024-05-240000100591agx:LettersOfCreditExpireOnMay312024Memberus-gaap:RevolvingCreditFacilityMember2017-05-152017-05-150000100591us-gaap:HeldtomaturitySecuritiesMember2024-02-012024-10-310000100591us-gaap:HeldtomaturitySecuritiesMember2023-02-012024-01-310000100591agx:AtlanticProjectsCompanyLimitedMemberagx:KilrootProjectMember2024-02-012024-10-310000100591agx:AtlanticProjectsCompanyLimitedMemberagx:KilrootProjectMember2023-02-012024-10-3100001005912023-02-012023-10-310000100591us-gaap:DomesticCorporateDebtSecuritiesMember2024-10-310000100591us-gaap:DomesticCorporateDebtSecuritiesMember2024-01-310000100591us-gaap:USTreasuryNotesSecuritiesMember2024-10-310000100591us-gaap:USTreasuryNotesSecuritiesMember2024-01-310000100591agx:OverseasProjectMember2024-10-312024-10-3100001005912024-02-012024-10-3100001005912024-10-3100001005912024-01-31iso4217:USDagx:customerxbrli:sharesxbrli:pureiso4217:USDxbrli:sharesagx:segment

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

FORM 10-Q

(Mark One)

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

For the Quarterly Period Ended

October 31, 2024

or

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

For the Transition Period from                      to                     

Commission File Number 001-31756

Graphic

(Exact Name of Registrant as Specified in Its Charter)

Delaware

    

13-1947195

(State or Other Jurisdiction of Incorporation)

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

One Church Street, Suite 201, Rockville, Maryland 20850

(Address of Principal Executive Offices) (Zip Code)

(301) 315-0027

(Registrant’s Telephone Number, Including Area Code)

(Former Name, Former Address and Former Fiscal Year, if Changed since Last Report)

Indicate by check mark whether the Registrant (1) has filed all reports required to be filed by Section 13 or 15 (d) of the Securities Exchange Act of 1934 (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 is a shell company (as defined in Rule 12b-2 of the Exchange Act).    Yes      No  

Title of Each Class

    

Trading Symbol(s)

    

Name of Each Exchange on Which Registered

Common Stock, $0.15 par value

AGX

New York Stock Exchange

Indicate the number of shares outstanding of each of the Registrant’s classes of common stock, as of the latest practicable date.

Common stock, $0.15 par value: 13,575,116 shares as of November 29, 2024.

ARGAN, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS

(In thousands, except per share data)

(Unaudited)

    

Three Months Ended

Nine Months Ended

October 31, 

October 31, 

    

2024

    

2023

    

2024

    

2023

REVENUES

$

257,008

$

163,755

$

641,705

$

408,779

Cost of revenues

 

212,681

 

144,520

 

548,329

 

351,578

GROSS PROFIT

 

44,327

 

19,235

 

93,376

 

57,201

Selling, general and administrative expenses

 

13,995

 

11,375

 

37,848

 

32,467

INCOME FROM OPERATIONS

 

30,332

 

7,860

 

55,528

 

24,734

Other income, net

 

6,646

 

3,733

 

17,044

 

7,222

INCOME BEFORE INCOME TAXES

 

36,978

 

11,593

 

72,572

 

31,956

Income tax expense

 

8,968

 

6,129

 

18,482

 

11,616

NET INCOME

28,010

5,464

54,090

20,340

OTHER COMPREHENSIVE INCOME, NET OF TAXES

Foreign currency translation adjustments

(957)

(882)

(1,933)

(627)

Net unrealized losses on available-for-sale securities

(659)

(427)

(169)

(1,147)

COMPREHENSIVE INCOME

$

26,394

$

4,155

$

51,988

$

18,566

NET INCOME PER SHARE

Basic

$

2.07

$

0.41

$

4.04

$

1.52

Diluted

$

2.00

$

0.40

$

3.91

$

1.50

WEIGHTED AVERAGE SHARES OUTSTANDING

Basic

 

13,530

 

13,328

 

13,398

 

13,381

Diluted

 

14,034

 

13,559

 

13,830

 

13,549

CASH DIVIDENDS PER SHARE

$

0.375

$

0.300

$

0.975

$

0.800

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

2

ARGAN, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED BALANCE SHEETS

(Dollars in thousands, except per share data)

    

October 31, 

    

January 31, 

    

2024

    

2024

(Unaudited)

(Note 1)

ASSETS

CURRENT ASSETS

Cash and cash equivalents

$

175,349

$

197,032

Investments

330,933

215,373

Accounts receivable, net

 

131,660

 

47,326

Contract assets

 

44,620

 

48,189

Other current assets

 

34,579

 

39,259

TOTAL CURRENT ASSETS

 

717,141

 

547,179

Property, plant and equipment, net

 

14,147

 

11,021

Goodwill

 

28,033

 

28,033

Intangible assets, net

1,924

2,217

Deferred taxes, net

1,254

2,259

Right-of-use and other assets

6,365

7,520

TOTAL ASSETS

$

768,864

$

598,229

LIABILITIES AND STOCKHOLDERS' EQUITY

CURRENT LIABILITIES

Accounts payable

$

87,085

$

39,485

Accrued expenses

 

78,393

 

81,721

Contract liabilities

 

270,686

 

181,054

TOTAL CURRENT LIABILITIES

 

436,164

 

302,260

Noncurrent liabilities

3,996

5,030

TOTAL LIABILITIES

 

440,160

 

307,290

COMMITMENTS AND CONTINGENCIES (see Notes 8 and 9)

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,569,104 and 13,242,520 shares outstanding at October 31, 2024 and January 31, 2024, respectively

 

2,374

 

2,374

Additional paid-in capital

 

168,441

 

164,183

Retained earnings

 

266,334

 

225,507

Treasury stock, at cost – 2,259,185 and 2,585,769 shares at October 31, 2024 and January 31, 2024, respectively

(102,746)

(97,528)

Accumulated other comprehensive loss

(5,699)

(3,597)

TOTAL STOCKHOLDERS’ EQUITY

 

328,704

 

290,939

TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY

$

768,864

$

598,229

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

3

ARGAN, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY

FOR THE THREE AND NINE MONTHS ENDED OCTOBER 31, 2024 AND 2023

(Dollars in thousands)

(Unaudited)

Common Stock

Additional

Accumulated Other

    

Outstanding

    

Par

    

Paid-in

    

Retained

    

Treasury

    

Comprehensive

    

Total

Shares

Value

Capital

Earnings

Stock

Loss

Equity

Balances, August 1, 2024

 

13,497,550

$

2,374

$

165,902

$

243,519

$

(99,644)

$

(4,083)

$

308,068

Net income

 

28,010

28,010

Foreign currency translation loss

(957)

(957)

Net unrealized losses on available-for-sale securities

(659)

(659)

Stock compensation expense

1,175

1,175

Stock option exercises and restricted stock unit settlements, net

 

77,254

1,364

(2,643)

(1,279)

Common stock repurchases

(5,700)

(459)

(459)

Cash dividends

 

(5,195)

(5,195)

Balances, October 31, 2024

 

13,569,104

$

2,374

$

168,441

$

266,334

$

(102,746)

$

(5,699)

$

328,704

Balances, August 1, 2023

13,353,653

$

2,374

$

162,323

$

216,009

$

(92,329)

$

(3,341)

$

285,036

Net income

5,464

5,464

Foreign currency translation loss

(882)

(882)

Net unrealized losses on available-for-sale securities

(427)

(427)

Stock compensation expense

1,198

1,198

Stock option exercises and restricted stock unit settlements, net

21,747

(367)

527

160

Common stock repurchases

 

(42,653)

(1,729)

(1,729)

Cash dividends

(3,987)

(3,987)

Balances, October 31, 2023

13,332,747

$

2,374

$

163,154

$

217,486

$

(93,531)

$

(4,650)

$

284,833

Balances, February 1, 2024

 

13,242,520

$

2,374

$

164,183

$

225,507

$

(97,528)

$

(3,597)

$

290,939

Net income

 

54,090

54,090

Foreign currency translation loss

(1,933)

(1,933)

Net unrealized losses on available-for-sale securities

(169)

(169)

Stock compensation expense

3,390

3,390

Stock option exercises and restricted stock unit settlements, net

 

337,884

868

(4,572)

(3,704)

Common stock repurchases

(11,300)

(646)

(646)

Cash dividends

 

(13,263)

(13,263)

Balances, October 31, 2024

 

13,569,104

$

2,374

$

168,441

$

266,334

$

(102,746)

$

(5,699)

$

328,704

Balances, February 1, 2023

13,441,590

$

2,374

$

162,208

$

207,832

$

(88,641)

$

(2,876)

$

280,897

Net income

20,340

20,340

Foreign currency translation loss

(627)

(627)

Net unrealized losses on available-for-sale securities

(1,147)

(1,147)

Stock compensation expense

3,416

3,416

Stock option exercises and restricted stock unit settlements, net

103,598

(2,470)

3,577

1,107

Common stock repurchases

(212,441)

(8,467)

(8,467)

Cash dividends

(10,686)

(10,686)

Balances, October 31, 2023

13,332,747

$

2,374

$

163,154

$

217,486

$

(93,531)

$

(4,650)

$

284,833

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

4

ARGAN, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS

(In thousands)

(Unaudited)

    

Nine Months Ended October 31, 

    

2024

    

2023

CASH FLOWS FROM OPERATING ACTIVITIES

Net income

$

54,090

$

20,340

Adjustments to reconcile net income to net cash provided by operating activities

Changes in accrued interest on investments

2,992

(1,876)

Stock compensation expense

3,390

3,416

Lease expense

 

2,415

 

1,335

Depreciation

1,376

1,524

Deferred income tax expense

1,060

497

Amortization of intangible assets

 

293

 

294

Other

 

1,006

 

287

Changes in operating assets and liabilities

Accounts receivable

 

(85,084)

 

168

Contract assets

3,569

(613)

Other assets

 

4,514

 

(2,977)

Accounts payable and accrued expenses

 

43,707

 

9,960

Contract liabilities

89,632

59,908

Net cash provided by operating activities

 

122,960

 

92,263

CASH FLOWS FROM INVESTING ACTIVITIES

Purchases of short-term investments

(135,000)

(115,000)

Maturities of short-term investments

117,500

159,750

Purchases of available-for-sale securities

(110,045)

(104,492)

Maturities of available-for-sale securities

9,230

Purchases of property, plant and equipment

 

(5,218)

 

(2,143)

Investments in solar energy projects

 

(3,312)

 

Net cash used in investing activities

 

(126,845)

 

(61,885)

CASH FLOWS FROM FINANCING ACTIVITIES

Common stock repurchases

(646)

(8,467)

Payments of cash dividends

 

(13,263)

 

(10,686)

Settlements of share-based awards, net of withholding taxes paid

 

(3,704)

 

1,107

Net cash used in financing activities

 

(17,613)

 

(18,046)

EFFECTS OF EXCHANGE RATE CHANGES ON CASH

(185)

(710)

NET (DECREASE) INCREASE IN CASH AND CASH EQUIVALENTS

 

(21,683)

 

11,622

CASH AND CASH EQUIVALENTS, BEGINNING OF PERIOD

197,032

173,947

CASH AND CASH EQUIVALENTS, END OF PERIOD

$

175,349

$

185,569

NON-CASH INVESTING AND FINANCING ACTIVITIES

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

$

1,995

$

706

SUPPLEMENTAL CASH FLOW INFORMATION

Cash paid for income taxes, net of refunds

$

15,133

$

7,022

Cash paid for operating leases

$

2,404

$

1,340

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

 

5

ARGAN, INC. AND SUBSIDIARIES

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

October 31, 2024

(Tabular dollar amounts in thousands, except per share data)

(Unaudited)

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 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 on-site 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 condensed consolidated financial statements include the accounts of Argan and its wholly-owned subsidiaries. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 15, 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.

The Company’s fiscal year ends on January 31 each year. The condensed consolidated balance sheet as of October 31, 2024, the condensed consolidated statements of earnings and stockholders’ equity for the three and nine months ended October 31, 2024 and 2023, and the condensed consolidated statements of cash flows for the nine months ended October 31, 2024 and 2023 are unaudited. The condensed consolidated balance sheet as of January 31, 2024 has been derived from audited consolidated financial statements. These condensed consolidated financial statements have been prepared pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (the “SEC”). Certain information and note disclosures normally included in annual financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations, although the Company believes that the disclosures made are adequate to make the information not misleading. The accompanying condensed consolidated financial statements and notes should be read in conjunction with the consolidated financial statements, the notes thereto, and the independent registered public accounting firm’s report thereon, that are included in the Company’s Annual Report on Form 10-K for the fiscal year ended January 31, 2024 (“Fiscal 2024”).

In the opinion of management, the accompanying condensed consolidated financial statements contain all adjustments, which are of a normal and recurring nature, considered necessary for a fair statement of the financial position of the Company as of October 31, 2024, and its earnings and cash flows for the interim periods presented. The results of operations for any interim period are not necessarily indicative of the results of operations for any other interim period or for a full fiscal year.

6

Recently Issued Accounting Pronouncements

In November 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, by 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 plans to adopt the provisions of ASU 2023-07 as of January 31, 2025. The Company does not expect the adoption of this ASU to have an impact on its financial position, results of operations or cash flows.

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.

In November 2024, the FASB issued ASU 2024-03, Income Statement—Reporting Comprehensive Income—Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses, which requires public business entities to disclose specific information about certain costs and expenses. The amendments in this update are effective for fiscal years beginning after December 15, 2026, and interim periods within fiscal years beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating the effects, if any, that the adoption of ASU 2024-03 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 condensed consolidated financial statements.

NOTE 2 – REVENUES FROM CONTRACTS WITH CUSTOMERS

Disaggregation of Revenues

The following table presents consolidated revenues for the three and nine months ended October 31, 2024 and 2023, disaggregated by the geographic area where the corresponding projects were located:

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

United States

$

239,489

$

92,066

$

559,069

$

239,866

Republic of Ireland

 

16,981

 

68,359

 

74,039

 

139,014

United Kingdom

 

538

 

3,330

 

8,597

 

29,899

Consolidated Revenues

$

257,008

$

163,755

$

641,705

$

408,779

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 15 to the condensed consolidated financial statements.

Contract Termination

For APC’s project to construct a gas-fired power facility in Northern Ireland (the “Kilroot Project”), an estimated loss of approximately $12.6 million has been recognized, of which $2.6 million was recorded during the nine-month period ended October 31, 2024 and the remainder was recorded in the prior fiscal year.

APC provided 14 days’ notice to terminate as a result of project owner breaches of the contract. Those breaches were not resolved during that 14-day period, as a result of which the contract terminated on May 3, 2024. Subsequently, the project owner made a draw for the full amount of a $9.2 million irrevocable letter of credit, or on-demand performance bond,

7

issued by the Company’s bank. This amount is now part of the open and disputed claims related to this project because APC and the Company believe the project owner initiated the draw without cause and, therefore, the amount should be refunded. This amount is included in accounts receivable as of October 31, 2024.

APC has significant billable receivables, unresolved contract variations and claims for extensions of time, among other issues, related to the Kilroot Project. The project owner has asserted counterclaims that APC disputes. APC will continue to pursue all of its rights under the contract, and will do so through legal means if necessary.

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 can result in large contract liability or contract asset balances early in contract lives that decline over the terms of the corresponding contracts. During the nine months ended October 31, 2024 and 2023, there were no unusual or one-time adjustments to these balances.

The Company recognized the following revenues that were included in the contract liabilities balances at the beginning of the respective period:

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

Revenues recognized from contract liabilities

$

132,068

$

53,783

$

175,630

$

94,198

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 October 31, 2024 and January 31, 2024 were $19.6 million and $21.2 million, respectively.

Variable Consideration

Variable consideration includes unapproved change orders where the Company has project-owner directive for additional work or other scope changes, but has not yet obtained approval for the associated price or the corresponding additional effort. These amounts are included in the transaction price when it is considered probable that the applicable costs, including those for additional effort, 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 claims based on management’s judgment regarding all reasonably available information. At October 31, 2024 and January 31, 2024, the aggregate amounts of such contract variations, that primarily related to an overseas project, and that were included in the corresponding transaction prices pending customer approvals, were $9.9 million and $8.4 million, respectively.

Remaining Unsatisfied Performance Obligations (“RUPO”)

At October 31, 2024, the Company had RUPO of $0.8 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 26% of the RUPO amount at October 31, 2024 will be included in the amount of consolidated revenues that will be recognized during the remainder of the fiscal year ending January 31, 2025 (“Fiscal 2025”). Most of the remaining amount of the RUPO amount at October 31, 2024 is expected to be recognized in revenues during the fiscal years ending January 31, 2026 (“Fiscal 2026”) and January 31, 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. 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.

8

NOTE 3 – CASH, CASH EQUIVALENTS AND INVESTMENTS

Cash Equivalents

At October 31, 2024 and January 31, 2024, 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 October 31, 2024 and January 31, 2024 were $0.4 million and $0.7 million, respectively.

Investments

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

    

October 31, 

January 31, 

2024

    

2024

Short-term investments

$

124,490

$

109,489

Available-for-sale securities

206,443

105,884

Total investments

$

330,933

$

215,373

Short-Term Investments

Short-term investments as of October 31, 2024 and January 31, 2024 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. The balances of accrued interest on the CDs at October 31, 2024 and January 31, 2024 were $2.0 million and $4.5 million, respectively. Interest income is recorded when earned and is included in other income, net, in the condensed consolidated statements of earnings. At October 31, 2024 and January 31, 2024, the weighted average annual interest rates of the outstanding CDs were 4.8% and 5.4%, respectively.

Available-For-Sale Securities

The Company’s available-for-sale (“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 October 31, 2024 and January 31, 2024:

October 31, 2024

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due within one year

$

50,323

$

$

161

$

32

$

50,452

Due in one to three years

72,751

488

96

73,143

Due in three to five years

73,274

425

784

72,915

U.S. corporate debt security:

Due in one to three years

10,046

113

9,933

Totals

$

206,394

$

$

1,074

$

1,025

$

206,443

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

$

96,217

$

$

568

$

230

$

96,555

U.S. corporate debt security:

Due in one to three years

9,406

77

9,329

Totals

$

105,623

$

$

568

$

307

$

105,884

9

As of October 31, 2024 and January 31, 2024, interest receivable in the amounts of $1.3 million were included in the balances of AFS securities. For the three and nine months ended October 31, 2024 and 2023, 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.

The Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of October 31, 2024 and 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 investments before recovery of their corresponding amortized cost bases.

Earnings on Investments

Earnings on investments for the three and nine months ended October 31, 2024 were $4.8 million and $14.0 million, respectively, and they were $4.0 million and $9.7 million for the three and nine months ended October 31, 2023, respectively. Earnings on investments are included in other income, net, in the condensed 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 October 31, 2024 and January 31, 2024, approximately 2% and 12%, respectively, of the Company’s cash and cash equivalents were held by 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.

NOTE 4 – FAIR VALUE MEASUREMENTS

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

October 31, 2024

January 31, 2024

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Cash equivalents:

Money market fund

$

91,995

$

$

$

126,646

$

$

Available-for-sale securities:

U.S. Treasury notes

196,510

96,555

U.S. corporate debt security

9,933

9,329

Totals

$

91,995

$

206,443

$

$

126,646

$

105,884

$

NOTE 5 – ACCOUNTS RECEIVABLE

Accounts receivable include amounts that have been billed and amounts that are billable to customers. As of October 31, 2024, there were billable amounts related to an overseas project in the total amount of $24.1 million, including the expected refund of the letter of credit draw identified in Note 2.

The Company may extend credit to a customer without requiring tangible collateral based on an evaluation of the customer’s financial condition and other factors. Customer payments on other construction, fabrication and field service contracts are generally due within 30 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts and notes receivable is expected to 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 the three and nine months ended October 31, 2024 were $0.2 million and $0.7 million, respectively. The amounts of the provision for credit losses for the three and nine months ended October 31,

10

2023 were insignificant. The allowance for credit losses at October 31, 2024 and January 31, 2024 was $2.5 million and $1.8 million, respectively.

NOTE 6 – INTANGIBLE ASSETS

At both October 31, 2024 and January 31, 2024, the goodwill balances related primarily to the GPS and TRC reporting units, and were $18.5 million and $9.5 million, respectively. Management does not believe that any events or circumstances occurred or arose since January 31, 2024, that required an updated assessment of the goodwill balances of either the GPS or TRC reporting units.

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

October 31, 2024

January 31, 2024

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade name

15 years

$

4,499

$

2,674

$

1,825

$

4,499

$

2,450

$

2,049

Customer relationships

10 years

916

817

99

916

748

168

Totals

$

5,415

$

3,491

$

1,924

$

5,415

$

3,198

$

2,217

The following is a schedule of future amounts of amortization related to purchased intangibles:

    

Amortization

Years Ending January 31,

Expense

2025 (remainder)

    

$

98

2026

 

376

2027

 

300

2028

 

300

2029

300

Thereafter

 

550

Total

$

1,924

NOTE 7 – FINANCING ARRANGEMENTS

On May 24, 2024, the Company and the Bank executed the Second Amended and Restated Replacement Credit Agreement with an expiration date of May 31, 2027 (the “New Credit Agreement”). The New Credit Agreement supersedes the now expired credit agreement, as amended, that was executed on May 15, 2017 with an expiration date of May 31, 2024 (the “Expired Credit Agreement”), reduces the base lending commitment amount from $50.0 million to $35.0 million, increases the letter of credit fees to be consistent with current market conditions, and establishes the interest rate for revolving loans at the Secured Overnight Financing Rate (“SOFR”) plus 1.85%. In addition to the base commitment, the new facility includes an accordion feature that allows for an additional commitment amount of $30.0 million, subject to certain conditions, that represents an increase from the $10.0 million accordion provided by the Expired Credit Agreement. The Company may 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 New Credit Agreement. Further, on May 31, 2024, the Company completed the negotiation of a companion facility, in the amount of $25.0 million, pursuant to which APC, the Company’s Irish subsidiary, may cause the Bank’s European entity to issue letters of credit on its behalf that will be secured by a blanket parent company guarantee issued by Argan to the Bank.

At October 31, 2024 and January 31, 2024, the Company did not have any borrowings outstanding under the New Credit Agreement or the Expired Credit Agreement, respectively. At October 31, 2024, there were no outstanding letters of credit issued under the credit facilities.

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 New Credit Agreement requires that the Company comply with certain financial covenants at its fiscal year-end and at each fiscal quarter-end. The New Credit Agreement includes other terms, covenants and events of default that are

11

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 October 31, 2024, the Company was in compliance with the covenants and other requirements of the New Credit Agreement.

NOTE 8 – COMMITMENTS

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 become available and monetary damages or other costs or losses are determined to be probable, the Company would record such losses.

As of October 31, 2024, the estimated amounts of the Company’s unsatisfied bonded performance obligations, covering all of its subsidiaries, was approximately $0.3 billion. As of October 31, 2024, the outstanding amount of bonds covering other risks, including warranty obligations and contract payment retentions related to completed activities, was $22.9 million. Not all of our projects require bonding.

The Company also provided a financial guarantee, subject to certain terms and conditions, up to the amount of $3.6 million in support of business development efforts. An estimated loss related to this guarantee was recorded during the year ended January 31, 2022 (“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 requirements 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 assurance-type warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the condensed consolidated balances sheets. The liability amounts may be periodically adjusted to reflect changes in the estimated size and number of expected warranty claims.

NOTE 9 – LEGAL CONTINGENCIES

In the normal course of business, the Company may have pending claims and legal proceedings. The Company maintains accrued expense balances for the estimated amounts of legal costs expected to be billed related to any significant matter. In the opinion of management, based on information available at this time, there were no current claims and proceedings that were expected to have a material adverse effect on the condensed consolidated financial statements as of October 31, 2024.

NOTE 10 – STOCK-BASED COMPENSATION

Expense amounts related to stock awards for the three and nine months ended October 31, 2024 were $1.2 million and $3.4 million, respectively, and they were $1.2 million and $3.4 million for the three and nine months ended October 31, 2023, respectively. At October 31, 2024, there was $5.9 million in unrecognized compensation costs related to outstanding stock awards that the Company expects to recognize over the next three years.

12

Stock Options

A summary of stock option activity for the nine months ended October 31, 2024 is presented below (shares in thousands):

Weighted-

Weighted-

Weighted-

Average

Average

Average Exercise

Remaining

Grant-Date

Price

Contractual

Fair Value

    

Shares

    

Per Share

    

Term (years)

    

Per Share

Outstanding, February 1, 2024

 

1,365

$

44.95

 

4.67

$

10.43

Granted

6

$

61.22

Exercised

(800)

$

44.59

Forfeited

(13)

$

46.72

Outstanding, October 31, 2024

558

$

45.61

 

4.70

$

10.26

Exercisable, October 31, 2024

 

500

$

46.22

4.30

$

10.51

Vested or expected to vest, October 31, 2024

 

558

$

45.61

 

4.70

$

10.26

The changes in the number of non-vested options to purchase shares of common stock for the nine months ended October 31, 2024 is presented below (shares in thousands):

    

Weighted-

Average

Grant-Date

Fair Value

Shares

    

Per Share

Non-vested, February 1, 2024

 

92

$

7.85

Granted

 

6

$

13.89

Vested

 

(33)

$

8.44

Forfeited

(7)

$

7.67

Non-vested, October 31, 2024

 

58

$

8.15

The total intrinsic value amounts related to the stock options exercised during the nine months ended October 31, 2024 and 2023 were $24.1 million and $1.5 million, respectively. As of October 31, 2024, the aggregate intrinsic values of the underlying common stock outstanding and exercisable stock options that were “in-the-money” were $48.2 million and $42.9 million, respectively.

Restricted Stock Units

The Company’s stock awards include total stock return performance-based restricted stock units (“PRSUs”), earnings per share performance-based restricted stock units (“EPRSUs”), renewable energy performance-based restricted stock units (“RRSUs”), and time-based restricted stock units (“TRSUs”). During the nine months ended October 31, 2024, the Company awarded PRSUs covering a target of 5,000 shares of common stock, EPRSUs covering a target of 10,000 shares of common stock, RRSUs covering a target of 5,000 shares of common stock and TRSUs covering 42,050 shares of common stock. The Company issued 3,988 shares of common stock based on the amount of cash dividends deemed paid on shares that were earned pursuant to the awards that were settled during the period. The number of shares of common stock to be issued under certain awards may exceed the number of target shares if certain performance goals are exceeded.

13

The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for the nine months ended October 31, 2024, are presented below (shares in thousands):

    

    

Weighted-

Average

Grant-Date

Fair Value

Shares

Per Share

Outstanding, February 1, 2024

 

348

$

30.21

Granted

 

81

$

43.82

Issued

(70)

$

42.58

Forfeited

(64)

$

27.04

Outstanding, October 31, 2024

 

295

$

31.69

Shares Withheld and Treasury Stock

For the nine months ended October 31, 2024, the Company accepted 532,860 shares of common stock at the average price per share of $73.92 for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements. For the nine months ended October 31, 2023, the Company accepted 29,058 shares of common stock at the average price per share of $47.16 for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements. For the nine months ended October 31, 2024 and 2023, the Company used 337,884 shares and 132,656 shares of treasury stock, respectively, to settle stock option exercises and other share-based awards.

NOTE 11 – INCOME TAXES

The Company’s income tax amounts for the nine months ended October 31, 2024 and 2023 differed from corresponding amounts computed by applying the federal corporate income tax rate of 21% to the income before income taxes for the periods as presented below:

    

Nine Months Ended October 31, 

    

2024

    

2023

Computed expected income tax expense

$

15,240

$

6,711

Difference resulting from:

State income taxes, net of federal tax effect

 

2,297

 

2,023

Unrecognized tax loss benefit

921

3,255

Executive compensation limitation

917

672

Meals and entertainment expense

616

385

Foreign tax rate differential

(556)

(1,699)

Other permanent differences and adjustments, net

(953)

269

Income tax expense

$

18,482

$

11,616

Net Operating Loss (“NOL”) Carryback

As a result of the tax changes enacted by the Coronavirus, Aid, Relief and Economic Security Act signed into law in March 2020 (the “CARES Act”), the Company made a filing during the year ended January 31, 2021 with the Internal Revenue Service (the “IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 (“Fiscal 2016”) and 2015 (“Fiscal 2015”) in the total amount of approximately $12.7 million. At the instruction of the IRS, the Company filed amended income tax returns for Fiscal 2016 and Fiscal 2015 during Fiscal 2024; the IRS has not completed the examination and approval process for the Company’s amended tax returns and refund request.

Research and Development Tax Credits

During the year ended January 31, 2023 (“Fiscal 2023”), the Company filed amended federal income tax returns for Fiscal 2022 and for the year ended January 31, 2021 (“Fiscal 2021”) that included 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. In May 2023, the Company received notification that these amended federal income tax returns were selected for

14

examination. At October 31, 2024, the examination was progressing through the stages of documentation requests and review.

Income Tax Refunds

As of October 31, 2024 and January 31, 2024, the balances of other current assets in the condensed consolidated balance sheet included income tax refunds receivable, related accrued interest, and prepaid income taxes in the total amounts of approximately $18.9 million and $18.3 million, respectively. The income tax refunds included the amounts expected to be received from the IRS upon its examination 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.

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 significant judgments to apply. 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 the nine months ended October 31, 2024, the Company made investments of approximately $3.3 million in STC investments that were committed as of January 31, 2024. As of October 31, 2024, the Company had no remaining cash investment commitments related to its STC investments.

At October 31, 2024 and January 31, 2024, the investment accounts balances were $1.2 million and $2.1 million, respectively, which are included in right-of-use and other assets in the condensed consolidated balance sheets.

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 condensed consolidated statement of earnings. For the nine months ended October 31, 2024, the Company recorded $0.7 million of investment amortization related to the STC investment that qualifies for PAM. For the three months ended October 31, 2024, the recorded amount of amortization related to this investment was not material. The amounts of non-income tax-related activity and other returns related to this investment were not material for the three and nine months ended October 31, 2024. During the nine months ended October 31, 2023, the Company did not have any STC investments that qualified for PAM.

For the Company’s STC investments that do not qualify for PAM, the Company accounts for the investments using the equity method of accounting and includes income and losses related to the investment in other income in the Company’s condensed consolidated statements of earnings. For the three and nine months ended October 31, 2024 and 2023, the Company’s shares of activity from these STC investments were not material.

NOTE 12 – EARNINGS PER SHARE

Potentially dilutive securities include stock options and restricted stock units. Diluted earnings per share includes only securities that are actually dilutive. Basic and diluted earnings per share are computed as follows (shares in thousands):

Three Months Ended October 31, 

Nine Months Ended October 31, 

    

2024

    

2023

2024

    

2023

Net income

$

28,010

$

5,464

$

54,090

$

20,340

Weighted average shares outstanding – basic

13,530

13,328

13,398

13,381

Effect of stock awards

504

231

432

168

Weighted average shares outstanding – diluted

14,034

13,559

13,830

13,549

15

Net income per share

Basic

$

2.07

$

0.41

$

4.04

$

1.52

Diluted

$

2.00

$

0.40

$

3.91

$

1.50

Anti-dilutive securities not included

690

140

881

NOTE 13 – STOCKHOLDERS’ EQUITY

On September 17, 2024, Argan’s board of directors increased the Company’s quarterly cash dividend by 25% from $0.30 to $0.375 per share of common stock. During Fiscal 2025 and Fiscal 2024, the Company paid dividends to stockholders as follows:

Amount Per

Record Date

    

Payment Date

    

Share

October 23, 2024

October 31, 2024

$

0.375

July 23, 2024

July 31, 2024

0.300

April 22, 2024

April 30, 2024

0.300

January 23, 2024

January 31, 2024

0.300

October 23, 2023

October 31, 2023

0.300

July 21, 2023

July 31, 2023

0.250

April 20, 2023

April 28, 2023

0.250

Pursuant to its established program and authorizations provided by Argan’s board of directors, the Company repurchased shares of its common stock during the nine months ended October 31, 2024 and 2023 and added the shares to treasury stock. During these periods, the Company repurchased 11,300 shares and 212,441 shares of common stock, all on the open market, for aggregate prices of approximately $0.6 million, or $57.11 per share, and $8.4 million, or $39.67 per share, respectively.

NOTE 14 – CUSTOMER CONCENTRATIONS

The majority of the Company’s consolidated revenues relate to performance by the power industry services segment. The following schedule presents the percentage of consolidated revenues for each reportable business segment for the three and nine months ended October 31, 2024:

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

Power industry services

82.5

%

74.1

%

77.3

%

72.6

%

Industrial construction services

 

16.1

 

23.5

 

21.0

 

24.8

Telecommunications infrastructure services

 

1.4

 

2.4

 

1.7

 

2.6

The Company’s most significant customer relationships for the three months ended October 31, 2024 included four power industry services customers, which accounted for 29%, 15%, 13% and 11% of consolidated revenues. The Company’s most significant customer relationships for the three months ended October 31, 2023 included three power industry services customers, which accounted for 23%, 20% and 17% of consolidated revenues. The Company’s most significant customer relationships for the nine months ended October 31, 2024 included two power industry services customers, which accounted for 28% and 12% of consolidated revenues. The Company’s most significant customer relationships for the nine months ended October 31, 2023 included three power industry services customers, which accounted for 19%, 17% and 14% of consolidated revenues. 

The accounts receivable balances from four major customers represented 18%, 18%, 17% and 12% of the corresponding consolidated balance as of October 31, 2024. Accounts receivable balances from three major customers represented 16%, 14% and 14% of the corresponding consolidated balance as of January 31, 2024.

The contract asset balances associated with four major customers represented 17%, 17%, 14% and 14% of the corresponding consolidated balance as of October 31, 2024. The contract asset balances associated with two major customers represented 39% and 32% of the corresponding consolidated balance as of January 31, 2024.

16

NOTE 15 – 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 CODM, 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 the three and nine months ended October 31, 2024, intersegment revenues were $3.5 million and $4.8 million, respectively. For the three and nine months ended October 31, 2023, intersegment revenues were not material.

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

Three Months Ended

Power

Industrial

Telecom

October 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

212,096

$

41,337

$

3,575

$

$

257,008

Cost of revenues

 

173,283

 

36,757

 

2,641

 

 

212,681

Gross profit

 

38,813

 

4,580

 

934

 

 

44,327

Selling, general and administrative expenses

8,466

1,848

705

2,976

13,995

Income (loss) from operations

30,347

2,732

229

(2,976)

30,332

Other income (loss), net

 

5,618

 

1

 

(1)

 

1,028

 

6,646

Income (loss) before income taxes

$

35,965

$

2,733

$

228

$

(1,948)

 

36,978

Income tax expense

 

8,968

Net income

$

28,010

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

158

166

109

433

Property, plant and equipment additions

2,304

236

5

2

2,547

Current assets

$

542,558

$

50,294

$

4,236

$

120,053

$

717,141

Current liabilities

411,735

20,663

2,131

1,635

436,164

Goodwill

18,476

9,467

90

28,033

Total assets

572,828

67,172

6,673

122,191

768,864

17

Three Months Ended

Power

Industrial

Telecom

October 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

121,300

$

38,434

$

4,021

$

$

163,755

Cost of revenues

 

107,781

 

33,899

 

2,840

 

 

144,520

Gross profit

 

13,519

 

4,535

 

1,181

 

 

19,235

Selling, general and administrative expenses

 

6,390

1,626

608

2,751

 

11,375

Income (loss) from operations

7,129

2,909

573

(2,751)

7,860

Other income, net

 

3,391

 

 

 

342

 

3,733

Income (loss) before income taxes

$

10,520

$

2,909

$

573

$

(2,409)

 

11,593

Income tax expense

 

6,129

Net income

$

5,464

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

137

249

102

1

489

Property, plant and equipment additions

583

497

31

1

1,112

Current assets

$

399,489

$

39,843

$

3,701

$

71,038

$

514,071

Current liabilities

244,662

25,839

1,801

1,592

273,894

Goodwill

18,476

9,467

90

28,033

Total assets

426,466

57,112

6,519

73,555

563,652

Nine Months Ended

Power

Industrial

Telecom

October 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

496,122

$

134,678

$

10,905

$

$

641,705

Cost of revenues

 

422,508

 

117,836

 

7,985

 

 

548,329

Gross profit

 

73,614

 

16,842

 

2,920

 

 

93,376

Selling, general and administrative expenses

 

21,786

5,686

1,984

8,392

37,848

Income (loss) from operations

51,828

11,156

936

(8,392)

55,528

Other income, net

 

14,386

 

2

 

2

 

2,654

 

17,044

Income (loss) before income taxes

$

66,214

$

11,158

$

938

$

(5,738)

 

72,572

Income tax expense

 

18,482

Net income

$

54,090

Amortization of intangibles

$

$

293

$

$

$

293

Depreciation

443

621

310

2

1,376

Property, plant and equipment additions

4,523

509

184

2

5,218

18

Nine Months Ended

Power

Industrial

Telecom

October 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

296,821

$

101,497

$

10,461

$

$

408,779

Cost of revenues

 

255,210

 

88,537

 

7,831

 

 

351,578

Gross profit

 

41,611

 

12,960

 

2,630

 

 

57,201

Selling, general and administrative expenses

 

17,700

4,532

2,038

8,197

32,467

Income (loss) from operations

23,911

8,428

592

(8,197)

24,734

Other income (loss), net

 

9,088

 

 

(3)

 

(1,863)

 

7,222

Income (loss) before income taxes

$

32,999

$

8,428

$

589

$

(10,060)

 

31,956

Income tax expense

 

11,616

Net income

$

20,340

Amortization of intangibles

$

$

294

$

$

$

294

Depreciation

393

813

315

3

1,524

Property, plant and equipment additions

1,120

973

49

1

2,143

NOTE 16 — SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

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

    

October 31, 

January 31, 

2024

    

2024

Income tax refunds receivable and prepaid income taxes

$

18,926

$

18,267

Raw materials inventory

3,438

9,985

Prepaid expenses

 

6,557

 

6,035

Other

5,658

4,972

Total other current assets

$

34,579

$

39,259

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

    

October 31, 

January 31, 

2024

    

2024

Accrued project costs

$

39,902

$

49,135

Accrued compensation

23,139

21,206

Lease liabilities

2,648

2,726

Other

12,704

8,654

Total accrued expenses

$

78,393

$

81,721

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

The following discussion summarizes the financial position of Argan, Inc. and its subsidiaries as of October 31, 2024, and the results of their operations for the three and nine month periods ended October 31, 2024 and 2023, and should be read in conjunction with (i) the unaudited condensed consolidated financial statements and notes thereto included elsewhere in this Quarterly Report on Form 10-Q and (ii) the consolidated financial statements and accompanying notes included in our Annual Report on Form 10-K for Fiscal 2024 that was filed with the SEC on April 11, 2024 (the “Annual Report”).

Cautionary Statement Regarding 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 Item 2 and elsewhere in this Quarterly Report on Form 10-Q 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

19

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 this Quarterly Report on Form 10-Q and our 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.

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 for a wide range of customers, including independent power project owners, public utilities, power plant 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 on-site 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.

Project Backlog

At October 31, 2024 and January 31, 2024, our consolidated project backlog amounts were each $0.8 billion, which 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 a limited notice to proceed (“LNTP”), we usually add 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 EPC services projects for primarily utility-scale solar fields, but also wind farms, hydrogen-based energy projects, battery energy storage projects, and other industrial projects in order to diversify the sources of revenues. At October 31, 2024, approximately 60.0% of our project backlog related to renewable energy projects. For the three and nine months ended October 31, 2024, the amounts of revenues earned by us and associated with renewable energy projects were 42.7% and 38.7%, respectively, of corresponding revenues for the power industry services segment. We have successfully completed alternative energy projects in the past and we have renewed efforts to obtain new work in 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

20

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.

405 MW Midwest Solar Project

In April 2024, GPS executed a LNTP with a customer to construct a utility-scale solar field in Illinois that will provide 405 MW of electrical power (the “405 MW Midwest Solar Project”). In August 2024, GPS received a full release for the activities on the EPC contract. The unique, multi-phased project includes solar-tracking panels that can be stowed by remote command for expected adverse weather events and will use pre-existing transmission and utility infrastructure from a nearby retired coal power plant. Project completion is scheduled for the first half of the fiscal year ending January 31, 2027.

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 (“FNTP”) 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 the last quarter of Fiscal 2026.

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. Between January and early May 2024, GPS received FNTPs on all three of the solar and battery projects. The three projects will cumulatively represent 160 MW of electrical power and 22 MW of energy storage. For these projects, completion is expected in the last quarter of Fiscal 2025 through the first half of Fiscal 2026.

Louisiana LNG Facility

In June 2024, GPS entered into a subcontract and received FNTP for the installation of five 90 MW gas turbines for the dedicated supply of power to a liquified natural gas (“LNG”) facility in Louisiana. This project, led by GPS, is a collaboration with TRC and APC. Project completion is scheduled for Fiscal 2026.

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 has the capacity to generate approximately 264 MW of temporary emergency electrical power (the “Shannonbridge Power Project”). In August 2023, APC received the FNTP on this project. Substantial completion of this project, that is defined in the corresponding contract as system turnover for commissioning, occurred in March 2024.

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. Substantial completion of each power facility occurred during the quarter ended October 31, 2024.

21

Kilroot Power Station

In October 2021 and pursuant to the Kilroot Project, 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 power plant units.

As previously disclosed, there were a number of challenges related to the Kilroot Project that 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 variations and claims disrupted the execution and harmed the cash flow of this project.

APC provided 14 days’ notice to terminate as a result of project owner breaches of the contract. Those breaches were not resolved during that 14-day period, as a result of which the contract terminated on May 3, 2024. Subsequently, the project owner made a draw for the full amount of a $9.2 million irrevocable letter of credit, or on-demand performance bond, issued by the Company’s bank. This amount is now part of the open and disputed claims related to this project because APC and the Company believe the project owner initiated the draw without cause and, therefore, the amount should be refunded. This amount is included in accounts receivable as of October 31, 2024.

We have recognized an estimated contract loss related to the Kilroot Project in the amount of approximately $12.6 million, of which $2.6 million was recorded during the nine-month period ended October 31, 2024 and the remainder was recorded in the prior fiscal year. APC has significant unresolved contract variations and claims for extensions of time, among other issues, related to the Kilroot Project. The project owner has asserted counterclaims that APC disputes. APC will continue to pursue all of its rights under the contract, and will do so through legal means if necessary.

TRC Project Backlog

As of October 31, 2024, TRC’s project backlog was approximately $66.4 million as compared to $127.5 million on January 31, 2024. For the nine months ended October 31, 2024 and 2023, TRC generated $134.7 million and $101.5 million in revenues, respectively. The increase in revenues for the current year from the comparative prior period highlights the results of our successful business development efforts with both new and recurring clients during Fiscal 2023 and Fiscal 2022, particularly in securing larger industrial field service construction projects. Despite the decrease in the amount of TRC’s project backlog during the current year, we are encouraged by the number and size of opportunities in our project pipeline, and we expect the TRC project backlog will increase next year.

Market Outlook

Growing Power Demand

Since 2007, total annual U.S. electricity demand has fluctuated, where eight of the years during that period experienced year-over-year decreases in energy consumption. However, U.S. electricity demand has since reached its highest level in two decades, reflecting a surge in consumption driven by emerging technologies and economic shifts. In the reference case of its most recently published Annual Energy Outlook released in March 2023 (as would be customary, the U.S. Energy Information Administration (the “EIA”) did not publish a report in early 2024), the EIA projected that economic growth paired with increasing electrification in end-user sectors would result in notable growth of electricity demand in the U.S. through 2050.

One prominent driver of this surge in energy demand is the rapid rise of data centers, which are expanding to support the growing adoption of artificial intelligence technologies. These facilities require substantial amounts of electricity to power advanced computing infrastructure, positioning them as a major contributor to future electricity demand. Technology companies with artificial intelligence ambitions have begun exploring deals to bring more power to the grid in order to secure long-term power contracts to address their significant electricity demand. Additionally, the accelerating shift toward electric vehicles (“EVs”) is reshaping the transportation landscape. As more drivers transition to EVs, the need for electricity to power charging networks will grow significantly, further straining grid capacity. Finally, the trend of onshoring manufacturing facilities is adding to the demand for electricity. Companies relocating production to the U.S. to enhance supply chain resilience are increasing the energy requirements of industrial operations. Combined, these factors underscore a growing imperative for the U.S. energy sector to adapt to rising electricity demands in the coming decades.

22

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 since 2010. Natural gas-fired power plants provided approximately 24% of net electricity generation in 2010.

In November 2023, Texas voters approved the $5 billion Texas Energy Fund (“TEF”) to enhance grid reliability and incentivize new dispatchable power generation projects, with a significant focus on natural gas-fired power plants. Shortly thereafter, the Public Utility Commission of Texas selected 17 natural gas-fired generation projects, totaling nearly 10 GW, to advance through a due diligence review, representing $5.4 billion in potential state-backed loans. If all projects proceed, initial disbursements are anticipated by the end of 2025, and the TEF could expand to $10 billion under a proposal from Governor Greg Abbott.

There exist certain headwinds confronting a significant resurgence in the pace of planning new developments of gas-fired power plants. Persistent supply chain constraints, which delay critical equipment delivery, and interconnect challenges that complicate grid integration delay project timelines and strain project financing. In addition, 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.

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. The EIA projected that new photovoltaic solar and wind capacity will continue to be added to the utility-scale power fleet in the U.S. at a brisk pace, attributable to declines in costs of renewable power plants and power storage, 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.

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”), were projected to result in renewables becoming increasingly cost effective compared with the alternatives when the costs of building new power capacity were considered. The EIA indicated that for 2024, of the approximately 62.8 gigawatts of new utility-scale electric-generating capacity that was planned to be added to U.S. power grids, approximately 71% was expected to come from solar and wind facilities.

Nuclear Power

Over the last several decades, the number of operating nuclear reactors has declined. Only four nuclear reactors have entered into commercial operation in the last thirty years, the most recent being the Vogtle Units 3 and 4, located in Georgia, which entered into commercial operations in July 2023 and April 2024, respectively. Suffering significant cost overruns—more than twice the initial estimates—and substantial delays, the Vogtle units have caused the industry to shift focus to smaller, more economical designs. 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.

The Regulatory Landscape

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. 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 economic incentives to renewable and other

23

energy project owners to the extent that was expected. Furthermore, the IRA may face challenges from the new administration.

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. In April 2024, the EPA issued final rules that require coal-fired power plants that are expected to operate beyond 2039 to reduce their carbon emissions by 90% prior to 2032. For new gas-fired power plants, the rules require a sliding scale of carbon capture up to 90% based on the operational load of the individual power plant. Rules for existing natural gas power plants have been delayed until 2025 in response to concern that such rules could affect grid reliability. More recently, President-elect Trump has expressed strong opposition to the EPA’s emissions-regulating rules and has pledged to abolish them.

In June 2023, President Biden signed a bill that raised the debt ceiling, which also 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 process. Such streamlining of the current permitting process for energy generating facilities could ease certain constraints on the power industry.

In May 2024, the Biden administration launched the Federal-State Modern Grid Deployment Initiative, a collaborative measure between the federal government and twenty-one states intended to prioritize efforts that support the adoption of modern grid solutions to expand grid capacity and build modern grid capabilities for both new and existing transmission and distribution lines.

During his campaign and subsequent to his election, President-elect Trump has indicated his intent to impose heavy tariffs on imports from several nations, including Mexico, Canada, and China. These measures aim to address broader policy goals but could introduce supply chain inefficiencies, challenge current trade agreements with certain nations, and affect the cost and availability of materials critical to project execution.

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. Electric-grid operators are warning that power-generating capacity is struggling to keep up with demand. 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.

PJM Interconnection LLC (“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. 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. Thermal power generation facilities are being retired at a rapid pace, 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 renewable energy facilities and the weather, PJM will need multiple megawatts of renewable power and accompanying battery storage, and improvements in the transmission network, to replace a single megawatt of retired thermal generation.

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.

Some 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 forecasted energy demands in its region. Capacity payments by PJM represent meaningful portions of the revenue streams of qualifying power plants.

Beginning in 2021, annual capacity auctions suffered delays that, once held, resulted in lower prices than previous auctions. The results for the most recent auction that was delayed until July 2024 for the 2025/2026 delivery year, represent a reversal

24

of the unfavorable trend. The auction resulted in a capacity price of approximately $269.92/MW-day for most of the PJM region, whereas the previous auction produced a capacity price of $28.92/MW-day. The significant increase in price was mainly driven by planned power generator retirements coupled with forecasted increases in peak power loads, indicating the market’s anticipation of a mismatch between the ability of the current grid to supply the growing demand for power. However, PJM’s market monitor alleged that flaws in the capacity market design inflated prices in the recent auction, allegations that PJM refutes. In response, PJM has delayed its next capacity auction, to be held for the 2026/2027 delivery year, in order to craft reforms.

Outlook for Natural Gas-Fired Power Plants

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

The current scramble for electricity, regardless of source, may be clarifying 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. 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 may continue to provide important new power construction opportunities for APC, especially across Ireland and the U.K.

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.

Whereas in the U.K., prior to the elections in July 2024, the government had expressed support for new gas-fired power plants to offset the retirement of coal-fired plants, the retirement of aging gas plants, and the intermittency of renewable energy plants. However, with the general election in July 2024, the Labour Party, led by Prime Minister Keri Starmer, has shifted focus toward accelerating the transition to renewable energy while still acknowledging the role of gas as a transitional fuel.

APC is actively pursuing business opportunities for natural gas-fired power generation projects with its existing and new clients. GPS has been providing top management guidance and project management expertise to APC. Currently, APC is undergoing a comprehensive operational review, in collaboration with GPS, to enhance project management processes and profitability.

Industrial Construction Services Outlook

Industrial field services typically represent the majority of TRC’s annual revenues with the remaining revenues contributed by projects consisting solely of metal fabrication. 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

25

recently choosing TRC to participate in major construction projects in the region. Other important factors and trends include low state corporate 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. Despite headwinds such as rising labor costs and skilled labor shortages, it is likely that the near-term 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 they appear to be sustaining high construction industry confidence for 2024 and the future beyond.

Comparison of the Results of Operations for the Three Months Ended October 31, 2024 and 2023

The following schedule compares our operating results for the three months ended October 31, 2024 and 2023 (dollars in thousands):

Three Months Ended October 31, 

    

2024

    

2023

    

$ Change

    

% Change

REVENUES

 

  

 

  

 

  

 

  

Power industry services

$

212,096

$

121,300

$

90,796

 

74.9

%

Industrial construction services

 

41,337

 

38,434

 

2,903

 

7.6

Telecommunications infrastructure services

 

3,575

 

4,021

 

(446)

 

(11.1)

Revenues

 

257,008

 

163,755

 

93,253

 

56.9

COST OF REVENUES

 

  

 

  

 

  

 

  

Power industry services

 

173,283

 

107,781

 

65,502

 

60.8

Industrial construction services

 

36,757

 

33,899

 

2,858

 

8.4

Telecommunications infrastructure services

 

2,641

 

2,840

 

(199)

 

(7.0)

Cost of revenues

 

212,681

 

144,520

 

68,161

 

47.2

GROSS PROFIT

 

44,327

 

19,235

 

25,092

 

130.4

Selling, general and administrative expenses

 

13,995

 

11,375

 

2,620

 

23.0

INCOME FROM OPERATIONS

 

30,332

 

7,860

 

22,472

 

285.9

Other income, net

 

6,646

 

3,733

 

2,913

 

78.0

INCOME BEFORE INCOME TAXES

 

36,978

 

11,593

 

25,385

 

219.0

Income tax expense

 

8,968

 

6,129

 

2,839

 

46.3

NET INCOME

$

28,010

$

5,464

$

22,546

412.6

%

Revenues

Consolidated revenues for the three months ended October 31, 2024 were $257.0 million, which represented an increase of $93.2 million, or 56.9%, from consolidated revenues of $163.8 million reported for the three months ended October 31, 2023. The overall improvement in revenues was due to increases in revenues between quarters for our power industry services and industrial construction services segments, as presented in the table above.

Power Industry Services

The revenues of the power industry services segment, representing the businesses of GPS and APC, increased by 74.9%, or $90.8 million, to $212.1 million for the three months ended October 31, 2024 compared with revenues of $121.3 million for the three months ended October 31, 2023 as the quarterly construction activities increased for the Midwest Solar and Battery Projects, the Trumbull Energy Center, the 405 MW Midwest Solar Project and the Louisiana LNG Facility. The increase in revenues between quarters was partially offset by decreased construction activities associated with the Guernsey Power Station project, the Shannonbridge Power Project and the ESB FlexGen Peaker Plants, as those projects have concluded. The revenues of this business segment represented approximately 82.5% of consolidated revenues for the quarter ended October 31, 2024 and 74.1% of consolidated revenues for the corresponding prior year quarter.

26

The primary drivers for this segment’s revenues for the three months ended October 31, 2023, were the construction of the Shannonbridge Power Project, the Trumbull Energy Center and the ESB FlexGen Peaker Plants.

Industrial Construction Services

The revenues of our industrial construction services segment, representing the business of TRC, increased by $2.9 million, or 7.6%, to $41.3 million for the three months ended October 31, 2024 compared to revenues of $38.4 million for the three months ended October 31, 2023. For the three months ended October 31, 2024 and 2023, the revenues of this segment represented 16.1% and 23.5% of consolidated revenues for the corresponding periods.

Telecommunications Infrastructure Services

The revenue results of this business segment, which represent the business of SMC, were $3.6 million for the three-month period ended October 31, 2024, a decrease of $0.4 million, or 11.1%, from the amount of revenues earned during the three months ended October 31, 2023.

Cost of Revenues

With the increase in consolidated revenues for the three months ended October 31, 2024 compared with last year’s third quarter ended October 31, 2023, the consolidated cost of revenues also increased between the quarters. These costs were $212.7 million and $144.5 million for the three-month periods ended October 31, 2024 and 2023, respectively, representing an increase of approximately 47.2%.

For the three-month period ended October 31, 2024, we reported a consolidated gross profit of approximately $44.3 million, which represented an increase from the gross profit reported for the three-month period ended October 31, 2023 in the amount of $19.2 million.

The gross profit percentage of corresponding consolidated revenues increased to 17.2% for the three-month ended October 31, 2024, from 11.7% of corresponding consolidated revenues in the comparable prior year period. The increase in the gross profit percentage during the current period was primarily due to the changing mix of projects, strong execution and certain positive project closeouts. Additionally, during the three-month period ended October 31, 2023, gross profit was negatively impacted by losses recorded on the Kilroot Project, which reduced margins by approximately $10.7 million. The gross profit percentages of corresponding revenues for the power industry services, industrial construction services and the telecommunications infrastructure services segments were 18.3%, 11.1% and 26.1%, respectively, for the quarter ended October 31, 2024.

The gross profit percentages of corresponding revenues for the power industry services, industrial construction services and the telecommunications infrastructure services segments were 11.1%, 11.8% and 29.4%, respectively, for the quarter ended October 31, 2023.

Selling, General and Administrative Expenses

These costs were $14.0 million and $11.4 million for the three months ended October 31, 2024 and 2023, respectively, and represented 5.4% and 6.9% of corresponding consolidated revenues, respectively.

Other Income, Net

Other income, net, for the three months ended October 31, 2024 was $6.6 million, which reflected income earned during the period on investments in the total amount of approximately $4.8 million, as the weighted average balances of investments are meaningfully higher this year, and earnings related to cash and cash equivalent balances.

Other income, net, for the three months ended October 31, 2023 was $3.7 million, which reflected primarily income earned during the period on investments in the total amount of approximately $4.0 million.

Income Taxes

We incurred income tax expense for the three months ended October 31, 2024 in the amount of approximately $9.0 million, which represents an effective income tax rate of 24.3%. This effective tax rate differs from the statutory federal tax rate of 21% due primarily to the typically unfavorable estimated effects of state income taxes and permanent differences. For the

27

three months ended October 31, 2023, we reported income tax expense in the amount of approximately $6.1 million, which represented an effective tax rate of 52.9% for the period. This effective tax rate differed from the statutory federal tax rate due primarily to the unrecognized tax loss benefit of the net operating loss incurred by the subsidiary of APC located in the U.K.

Net Income

For the three months ended October 31, 2024, our overall operating profit performance resulted in net income in the amount of $28.0 million, or $2.00 per diluted share. For the comparable period last year, we reported net income in the amount of $5.5 million, or $0.40 per diluted share.

Comparison of the Results of Operations for the Nine Months Ended October 31, 2024 and 2023

The following schedule compares our operating results for the nine months ended October 31, 2024 and 2023 (dollars in thousands):

Nine Months Ended October 31, 

    

2024

    

2023

    

$ Change

    

% Change

REVENUES

 

  

 

  

 

  

 

  

Power industry services

$

496,122

$

296,821

$

199,301

 

67.1

%

Industrial construction services

 

134,678

 

101,497

 

33,181

 

32.7

Telecommunications infrastructure services

 

10,905

 

10,461

 

444

 

4.2

Revenues

 

641,705

 

408,779

 

232,926

 

57.0

COST OF REVENUES

 

  

 

  

 

  

 

  

Power industry services

 

422,508

 

255,210

 

167,298

 

65.6

Industrial construction services

 

117,836

 

88,537

 

29,299

 

33.1

Telecommunications infrastructure services

 

7,985

 

7,831

 

154

 

2.0

Cost of revenues

 

548,329

 

351,578

 

196,751

 

56.0

GROSS PROFIT

 

93,376

 

57,201

 

36,175

 

63.2

Selling, general and administrative expenses

 

37,848

 

32,467

 

5,381

 

16.6

INCOME FROM OPERATIONS

 

55,528

 

24,734

 

30,794

 

124.5

Other income, net

 

17,044

 

7,222

 

9,822

 

136.0

INCOME BEFORE INCOME TAXES

 

72,572

 

31,956

 

40,616

 

127.1

Income tax expense

 

18,482

 

11,616

 

6,866

 

59.1

NET INCOME

$

54,090

$

20,340

$

33,750

 

165.9

%

Revenues

Consolidated revenues for the nine months ended October 31, 2024 were $641.7 million, which represented an increase of $232.9 million, or 57.0%, from consolidated revenues of $408.8 million reported for the nine months ended October 31, 2023. The overall improvement in revenues was due to increases in revenues for all three of our reportable segments, as presented in the table above.

Power Industry Services

The revenues of the power industry services segment, representing the businesses of GPS and APC, increased by 67.1%, or $199.3 million, to $496.1 million for the nine months ended October 31, 2024 compared with revenues of $296.8 million for the nine months ended October 31, 2023 as the construction activities increased for the Midwest Solar and Battery Projects, the Trumbull Energy Center, the 405 MW Midwest Solar Project and the Louisiana LNG Facility. The increase in revenues between periods was partially offset by decreased construction activities associated with the Guernsey Power Station project, the ESB FlexGen Peaker Plants, the Shannonbridge Power Project and the Kilroot Project, as those projects have concluded. The revenues of this business segment represented approximately 77.3% of consolidated revenues for the nine months ended October 31, 2024 and 72.6% of consolidated revenues for the nine months ended October 31, 2023.

The primary drivers for this segment’s revenues for the nine months ended October 31, 2023, were the construction activities of the Shannonbridge Power Project, the Trumbull Energy Center and the ESB FlexGen Peaker Plants.

28

Industrial Construction Services

The revenues of our industrial construction services segment, representing the business of TRC, increased by $33.2 million, or 32.7%, to $134.7 million for the nine months ended October 31, 2024 compared to revenues of $101.5 million for the nine months ended October 31, 2023 as the amounts of field services construction activities increased meaningfully between periods, partially offset by decreased supporting vessel fabrication work between periods. For the nine months ended October 31, 2024 and 2023, the revenues of this segment represented 21.0% and 24.8% of consolidated revenues for the corresponding periods.

Telecommunications Infrastructure Services

The revenue results of this business segment, which represent the business of SMC, were $10.9 million for the nine-month period ended October 31, 2024, an increase of $0.4 million, or 4.2%, from the amount of revenues earned during the nine months ended October 31, 2023.

Cost of Revenues

With the increase in consolidated revenues for the nine months ended October 31, 2024 compared with the nine months ended October 31, 2023, the consolidated cost of revenues also increased between the quarters. These costs were $548.3 million and $351.6 million for the nine-month periods ended October 31, 2024 and 2023, respectively, representing an increase of approximately 56.0%.

For the nine-month period ended October 31, 2024, we reported a consolidated gross profit of approximately $93.4 million, which represented a gross profit percentage of approximately 14.6% of corresponding consolidated revenues. For the nine-month period ended October 31, 2023, we reported a consolidated gross profit of approximately $57.2 million, which represented a gross profit percentage of approximately 14.0% of corresponding consolidated revenues. The gross profit percentage increased between periods primarily due to the changing mix of projects and contract types. Additionally, during the nine-month periods ended October 31, 2024 and 2023, gross profit was negatively impacted by losses recorded on the Kilroot Project, which reduced margins by approximately $2.6 million and $11.5 million, respectively. The gross profit percentages of corresponding revenues for the power industry services, industrial construction services and the telecommunications infrastructure services segments were 14.8%, 12.5% and 26.8%, respectively, for the nine months ended October 31, 2024.

The gross profit percentages of corresponding revenues for the power industry services, industrial construction services and the telecommunications infrastructure services segments were 14.0%, 12.8% and 25.1%, respectively, for the nine months ended October 31, 2023.

Selling, General and Administrative Expenses

These costs were $37.8 million and $32.5 million for the nine months ended October 31, 2024 and 2023, respectively, and represented 5.9% and 7.9% of corresponding consolidated revenues, respectively.

Other Income, Net

Other income, net, for the nine months ended October 31, 2024 was $17.0 million, which reflected income earned during the period on investments in the total amount of approximately $14.0 million, as the weighted average balances of investments are meaningfully higher this year, and earnings related to cash and cash equivalent balances.

Other income, net, for the nine months ended October 31, 2023 was $7.2 million, which reflected income earned during the period on investments in the total amount of approximately $9.7 million, partially offset by the wire-transfer fraud loss of $3.0 million that occurred and was recorded in the first quarter of Fiscal 2024.

Income Taxes

We incurred income tax expense for the nine months ended October 31, 2024 in the amount of approximately $18.5 million, which represents an effective income tax rate of 25.5%. This effective tax rate differs from the statutory federal tax rate of 21% due primarily to the typically unfavorable estimated effects of state income taxes. For the nine months ended October 31, 2023, we reported income tax expense in the amount of approximately $11.6 million, which represented

29

an effective tax rate of 36.3% for the period. This effective tax rate differed from the statutory federal tax rate due primarily to the unrecognized tax loss benefit of the net operating loss incurred by the subsidiary of APC located in the U.K.

Net Income

For the nine months ended October 31, 2024, our overall operating profit performance resulted in net income in the amount of $54.1 million, or $3.91 per diluted share. For the comparable period last year, we reported net income in the amount of $20.3 million, or $1.50 per diluted share.

Liquidity and Capital Resources as of October 31, 2024

At October 31 and January 31, 2024, our balances of cash and cash equivalents were $175.3 million and $197.0 million, respectively, which represented a decrease of $21.7 million during the current fiscal year.

The net amount of cash provided by operating activities for the nine months ended October 31, 2024 was $123.0 million. Our net income for the nine months ended October 31, 2024, adjusted favorably by the net amount of non-cash income and expense items, represented a source of cash in the total amount of $66.6 million. The temporary increase in contract liabilities of $89.6 million represented a source of cash, primarily due to the net effect of the early phase of construction activities on certain GPS projects. The increase in the combined level of accounts payable and accrued expenses in the amount of $43.7 million represented a meaningful source of cash during the period as well. The decrease in contract assets of $3.6 million and the decrease of other assets of $4.5 million represented sources of cash during the period. The increase of accounts receivable in the amount of $85.1 million, which represented a use of cash during the period, was due primarily to the increase in revenues during the period, but also related to the Kilroot Project.

During the nine months ended October 31, 2024, our primary source of cash from investing activities was the net maturities of CDs issued by the Bank, in the amount of $17.5 million. We used $100.8 million, net of maturities, to invest in available-for-sale securities consisting of U.S. Treasury notes and a U.S. corporate debt security. We also used $3.3 million to fund our remaining capital contribution obligation to a solar energy project and $5.2 million for the purchases of property, plant and equipment.

For the nine months ended October 31, 2024, we used $17.6 million cash in financing activities, including $13.3 million used for the payment of regular cash dividends and $0.6 million used to repurchase shares of common stock pursuant to our share repurchase program. We also used $3.7 million for share-based award settlements, which represented the net of payments of $10.1 million for withholding taxes reimbursed by shares of common stock and $6.4 million of proceeds from the exercise of stock options during the period. As of October 31, 2024, there were no restrictions with respect to intercompany payments between the holding company, GPS, TRC, APC and SMC.

At October 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 notes 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. Other investments of our available cash, which included CDs, U.S. Treasury notes and a corporate debt security, totaled approximately $330.9 million as of October 31, 2024, are classified as current assets.

In order to monitor the actual and necessary levels of liquidity for our business, we focus on net liquidity, or working capital, in addition to our cash balances. During the nine months ended October 31, 2024, our net liquidity increased by $36.1 million to $281.0 million from $244.9 million as of January 31, 2024, due primarily to our net income for the period, partially offset by 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 investments, our levels of working capital are not subjected to the volatility that affects our levels of cash and cash equivalents.

On May 24, 2024, we executed a New Credit Agreement with the Bank, which supersedes the Expired Credit Agreement, as amended, that was executed on May 15, 2017 and expired on May 31, 2024. The New Credit Agreement reduces the base lending commitment amount from $50.0 million to $35.0 million, increases the letter of credit fees to be consistent with current market conditions, and establishes the interest rate for revolving loans at SOFR plus 1.85%. In addition to the base commitment, the facility includes an accordion feature that allows for an additional commitment amount of $30.0 million, subject to certain conditions, that represents an increase from the $10.0 million accordion provided by the Expired

30

Credit Agreement. We may 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 New Credit Agreement. Further, on May 31, 2024, we completed the negotiation of a companion facility, in the amount of $25.0 million, pursuant to which APCL may cause the Bank’s European entity to issue letters of credit on its behalf that will be secured by a blanket parent company guarantee issued by the Company to the Bank.

Together, the New Credit Agreement, the companion facility, and the parent company guarantee are hereinafter referred to as the “Credit Facilities.” The Credit Facilities include customary terms, covenants and events of default for credit facilities of this size and nature. Despite the reduction in the base amount of the credit commitment provided by the New Credit Agreement, the increased accordion amount and the addition of the companion facility provide the Company with greater flexibility in managing its credit requirements, at a potentially lower overall cost.

At October 31, 2024 and January 31, 2024, we did not have any borrowings outstanding under the New Credit Agreement and Expired Credit Agreement, respectively. At October 31, 2024, there were no outstanding letters of credit issued under the Credit Facilities.

We have pledged the majority of the Company’s assets to secure our 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 New Credit Agreement requires that the Company comply with certain financial covenants at its fiscal year-end and at each fiscal quarter-end. The New Credit Agreement 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 October 31, 2024, we were in compliance with the covenants and other requirements of the New Credit Agreement.

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 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 October 31, 2024, the estimated amounts of the Company’s unsatisfied bonded performance obligations, covering all of its subsidiaries, was approximately $0.3 billion. As of October 31, 2024, the outstanding amount of bonds covering other risks, including warranty obligations and contract payment retentions related to completed activities, was $22.9 million.

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

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 associated with those investments. In Fiscal 2024, we made an investment of approximately $5.1 million cash in a solar tax credit entity. During the nine months ended October 31, 2024, we made the final $3.3 million cash payment committed to this solar fund. 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 New 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, in addition to supporting our operations with necessary working capital.

31

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.

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

The tables following immediately below present the determinations of EBITDA for the three and nine months ended October 31, 2024 and 2023, respectively (amounts in thousands).

Three Months Ended

October 31, 

    

2024

    

2023

Net income, as reported

$

28,010

$

5,464

Income tax expense

 

8,968

 

6,129

Depreciation

 

433

 

489

Amortization of intangible assets

 

98

 

98

EBITDA

$

37,509

$

12,180

    

Nine Months Ended

October 31, 

    

2024

    

2023

Net income, as reported

$

54,090

$

20,340

Income tax expense

 

18,482

 

11,616

Depreciation

 

1,376

 

1,524

Amortization of intangible assets

 

293

 

294

EBITDA

$

74,241

$

33,774

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.

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

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; income tax reporting; and the financial reporting associated with any significant claims or legal matters to be most critical to the understanding of our financial position and results of operations. An expanded discussion of our critical accounting policies

32

is included in Item 7 of Part II of our Annual Report. During the nine months ended October 31, 2024, there have been no material changes in the way we apply the critical accounting policies described therein.

Recently Issued Accounting Pronouncements

See Note 1 to the accompanying condensed consolidated financial statements for discussion on recently issued accounting pronouncements.

ITEM 3. 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; changes in foreign currency exchange rates; fluctuations in prices for commodities including steel products, copper, lumber, concrete and fuel; and global supply disruptions, among other market risks.

In the “Risk Factors” section of our Annual Report, we 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.

There have been no material changes to the Company’s market risks during the nine months ended October 31, 2024. For a broader discussion of the Company’s exposure to market risks, refer to the Company’s market risk disclosures set forth in Part II, Item 7A, “Quantitative and Qualitative Disclosures About Market Risk” of the Annual Report.

ITEM 4. CONTROLS AND PROCEDURES

Evaluation of disclosure controls and procedures. Our management, with the participation of our chief executive officer and chief financial officer, evaluated the effectiveness of our disclosure controls and procedures (as defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934 (the “Exchange Act”)) as of October 31, 2024. Management recognizes that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving their objectives, and management necessarily applies its judgment in evaluating the cost-benefit relationship of possible controls and procedures. Based on the evaluation of our disclosure controls and procedures as of October 31, 2024, our chief executive officer and chief financial officer concluded that, as of such date, our disclosure controls and procedures 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 the Company and its consolidated subsidiaries is made known to management, including the chief executive officer and chief financial officer, to allow timely decisions regarding required disclosure in the reports.

Changes in internal controls over financial reporting. There have been no significant changes in our internal control over financial reporting (as defined in Rules 13a-15 and 15d-15 under the Exchange Act) during the fiscal quarter ended October 31, 2024, that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.

PART II

ITEM 1. LEGAL PROCEEDINGS

In the normal course of business, we may have pending claims and legal proceedings. It is our opinion, based on information available at this time, that any current claim or proceeding will not have a material effect on our condensed consolidated financial statements.

ITEM 1A. RISK FACTORS

There have been no material changes to the risk factors disclosed in our Annual Report.

33

ITEM 2. UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS

Our board of directors has authorized management to spend up to $125 million for the repurchase of shares of our common stock in the open market or through investment banking institutions, privately-negotiated transactions, or direct purchases (the “Share Repurchase Plan”). 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 the Share Repurchase Plan, we have allowed, and may in the future allow, the repurchase of our common stock during trading blackout periods by an investment banking firm or other institution agent acting on our behalf pursuant to predetermined parameters.

Information related to our share repurchases for the three months ended October 31, 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)

August 1 - 31, 2024

5,700

$

69.14

5,700

$

23,373

September 1 - 30, 2024

114,296

$

94.92

$

23,373

October 1 - 31, 2024

1,133

$

122.15

$

23,373

Total

 

121,129

 

5,700

For the month ended September 30, 2024, we accepted 114,296 shares of our common stock at the average price per share of $94.92 for the exercise price and/or tax withholding in connection with stock option exercises and restricted stock unit settlements that occurred during the month. For the month ended October 31, 2024, we accepted 1,133 shares of our common stock at the average price per share of $122.15 for the exercise price and/or tax withholding in connection with stock option exercises and restricted stock unit settlements that occurred during the month.

ITEM 3.  DEFAULTS UPON SENIOR SECURITIES

None

ITEM 4. MINE SAFETY DISCLOSURES

Not Applicable

ITEM 5. OTHER INFORMATION

During the quarter ended October 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 6. EXHIBITS

Exhibit No.

    

Title

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

10.1

Second Amended and Restated Replacement Credit Agreement, dated May 24, 2024, 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 31, 2024).

10.2

Master Issuance and Indemnity Agreement, dated May 31, 2024, between Atlantic Projects Company Limited and Bank of America, N.A. (incorporated by reference to Exhibit 10.2 to the Registrant’s Current Report on Form 8-K filed on May 31, 2024).

34

10.3

Guarantee of Payment Agreement, dated May 24, 2024, between Argan, Inc. and Bank of America, N.A. (incorporated by reference to Exhibit 10.3 to the Registrant’s Current Report on Form 8-K filed on May 31, 2024).

10.4

Employment Agreement between Argan, Inc. and Joshua S. Baugher effective September 16, 2024 (incorporated by reference to Exhibit 10.1 to the Registrant’s Current Report on Form 8-K filed on September 18, 2024).

10.5

Employment Agreement between Argan, Inc. and David H. Watson effective September 16, 2024 (incorporated by reference to Exhibit 10.2 to the Registrant’s Current Report on Form 8-K filed on September 18, 2024).

10.6

Employment Agreement between Argan, Inc. and Charles Collins IV effective September 16, 2024 (incorporated by reference to Exhibit 10.3 to the Registrant’s Current Report on Form 8-K filed on September 18, 2024).

31.1

 

Certification of Chief Executive Officer, pursuant to Rule 13a-14(c) under the Securities Exchange Act of 1934.

31.2

 

Certification of Chief Financial Officer, pursuant to Rule 13a-14(c) under the Securities Exchange Act of 1934.

32.1

 

Certification of Chief Executive Officer, pursuant to 18 U.S.C. Section 1350. *

32.2

 

Certification of Chief Financial Officer, pursuant to 18 U.S.C. Section 1350. *

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 – the cover page interactive data file does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.

*The certification is being furnished and shall not be considered filed as part of this report.

SIGNATURES

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

 

ARGAN, INC.

 

 

December 5, 2024

By:  

/s/ David H. Watson

 

 

David H. Watson

 

 

President and Chief Executive Officer

December 5, 2024

By:  

/s/ Joshua S. Baugher

 

 

Joshua S. Baugher

 

 

Senior Vice President, Chief Financial Officer and

 

 

Treasurer

35

EX-31.1 2 agx-20241031xex31d1.htm EX-31.1

Exhibit 31.1

SARBANES-OXLEY ACT SECTION 302(a) CERTIFICATION

I, David H. Watson, certify that:

1.    I have reviewed this Quarterly Report on Form 10-Q of Argan, Inc. (the “Registrant”) for the period ended October 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 that has materially affected, or is reasonably likely to materially affect, the Registrant’s internal control over financial reporting; and

5.    The Registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the Registrant’s auditors and 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: December 5, 2024

By:

/s/ David H. Watson

 

 

David H. Watson

President and Chief Executive Officer

 

 

(Principal Executive Officer)


EX-31.2 3 agx-20241031xex31d2.htm EX-31.2

Exhibit 31.2

SARBANES-OXLEY ACT SECTION 302(a) CERTIFICATION

I, Joshua S. Baugher, certify that:

1.    I have reviewed this Quarterly Report on Form 10-Q of Argan, Inc. (the “Registrant”) for the period ended October 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 that has materially affected, or is reasonably likely to materially affect, the Registrant’s internal control over financial reporting; and

5.    The Registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the Registrant’s auditors and 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: December 5, 2024

By:

/s/ Joshua S. Baugher

 

 

Joshua S. Baugher

Senior Vice President, Chief Financial Officer and Treasurer

 

 

(Principal Financial Officer)


EX-32.1 4 agx-20241031xex32d1.htm EX-32.1

Exhibit 32.1

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Quarterly Report of Argan, Inc., a Delaware corporation (the “Company”), on Form 10-Q for the period ended October 31, 2024, 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.

Date: December 5, 2024

By:

/s/ David H. Watson

 

 

David H. Watson

President and Chief Executive Officer

 

 

(Principal Executive Officer)


EX-32.2 5 agx-20241031xex32d2.htm EX-32.2

Exhibit 32.2

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Quarterly Report of Argan, Inc., a Delaware corporation (the “Company”), on Form 10-Q for the period ended October 31, 2024, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Joshua S. Baugher, Senior Vice President and Chief Financial 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.

Date: December 5, 2024

By:

/s/ Joshua S. Baugher

 

 

Joshua S. Baugher

Senior Vice President, Chief Financial Officer and Treasurer

 

 

(Principal Financial Officer)


GRAPHIC 6 agx-20241031x10q001.jpg GRAPHIC begin 644 agx-20241031x10q001.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" Y .P# 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#]4ZY3XD?% M3PG\(O#LVN>+]=L]!TR(GQ M$I GWYY3PD:^Y.*_*+]IFZ\5?M-^"8/$MQ8V&:^/?!'[1/B+X>VW]@>(M-.JV4*F+R+L%)D3IMY'S# MV-1ZUJ7P;\7LUP+?5O"UY)RRV\8EB!_W?_KUZ>6T,PR[%55G6%E6I2?N3HVE M&WG%/G^>OIU/#HX[,*-6?UJ+E%_"X)-6]/B_,_57X'_\%3_A'\6+ZWTO67N_ M VKS$(B:OM-N['L)E.!_P+;7V/:W4-];QW%O*D\$BADDC8,K ]"".M?S8:KX M3\(H&.G>,1,,9"W%BZG]*^OO^"??[=>H?![QCIWP^\8:T^K>!=1E6WM;NX+9 MTV5CA<%O^69)P1VZ]*^DKY?0Q$'5P"GIO&4)Q^YRBCZ*AC(U=+/YIK\T?LM1 M34=9$5U(96&01T(IU?,GHC!*AD,8=3(!DKGD#UQ3Z_.GX;?M6MKG_!3KQ-H! MOBWA^^M3H-LF_P#=F: ;@P'3)._\J_1:NW%86>%<5/[23^\B,N8****XBPHH MHH **** "BBB@ HHHH ***H:[J%SI6D75W:6$NJ7,*%DLX6"O*?[H)X!^M-: M@7Z*^%/$G_!6SP!X1\17^@ZOX+\2V6KV$[6MS:2)'OCE4X*GGKFOL?X?>*K_ M ,9^&;?5=1\/7OAB>?D:?J#*TRK@$%MIP#ST[8KKK8.OAXJ=6-D]O,A24MCI M****XRPHHHH **** /SZ_P""C6MM\2?&2?"J*X$4=MX=DU5USP9YI3#"2/\ M9"2?]]U^V9I1NXZ ,K<]B5->41_$+X2_&O381JTU@MSMQ] MGU0_9[B$]PLF1G_@+5^?YC7A2QU3Z_A7B<)*R:C?FA)+RU5T[[I-/?<_.LUJ M-8BK[>DZM&35[;PDE;Y76O3?,(-NO>&+FX? M:YXF^#-P&:T\+:P'[!+KRA_,UZ7J7[/WPE!,_P#PDK6,/7:NK0%1^+ G]:Y3 M4?"_P%\*AFN-48GANFU'*HXY_P!R#E;\';\3 MS\+/ QTPRK>BYO\ /]3R/5]=\+R9&E>&7MO1KJ]>4_D,"L75M*O;:%+VXL'L MHI/]4K+Y>X>J@\D>]>CZO\8]&TG=#X%\'6&@#&!J-X@NKSZ@MD(?IGZUSUQX M6U;5=*F\5^*;N>WL9B1#+=,3<7TG]V)3R1ZN> /4\5^N87$52,I?''X@0_"WX1^*_%,S M;?[-T^66,9Y:3:0@'ON(KY@_X)$Z7/I_[(Z32AA#>:[>SP;O[@V1\?\ D:N MZ_;-FD\<:S\+_A-:N2_BK7H[F_13R+&U_>RM],A ?K7S7L;XMTY[)N_RU9]/ M?W+GXK:;XF\1_"7XZ6/B35X9K/Q#IFKQZG*?#FEZQ9R++:W]M'(M/2 M3Y!A1+'\C#ZD &OO?_@F-\4_^%E_LG^'K>>;S=0\.R2:+/DY($>#%_Y":.OI MLZ2Q>"HXV"\G\_\ )HQI>[)Q9[OK7QW^''AO5+C3=6\>>'-,U&V;9-:7FJ0Q M2QMZ,K,"*35/CM\/-&UC0]*O?&>C0:AK:JVFP&\0M=*WW2F#C!['OVK\M?\ M@LU:PP?&_P &RQQ)')+HC>8ZJ 7Q,<9/?K77_#[_ ()K^)OB]IGPC^)G_"P4 MW26UI=:C:ZA"V^WBB8&..UV#&-J@88CDDY/2O-CEF&CAJ>(K57%2OTZE\\N9 MI(_37QM\0O#/PWT@ZIXIU[3_ _IX.T7&H7"PJQ]%R?F/L,FN/\ "O[47PC\ M;+,='^(OAVY\G[XDOTA8?A(5)'N*_)7XF>/]3_:._P""AOA[0O$T\EUX M1&$$BPR1F,'&,X\UA]*TIY-#VE*A4D^::;TV77YB]H[-KH?JYH/BO1/%5O+/ MHNL:?K$$3;9);"Z2=4/H2A(!KSSQ5^U?\'O!.K/IFM?$;0+._1MKP?:Q(R'T M;9G:?8U\/_$>PU3P)_P3HT+6O@SX4N?#UQXN6WE\1-HK32RJ@5D=QDLRJQ!S MCH&KK_A'I>FZO_P3$\1CQ=X)L?#5U:Z'?I&U_;B)[R6-&,5S\X#;V8*0>YZ5 MR++Z<5SRDVN;EMHGZOQ]X>%/&>@^.]#BUGP[K%EK>E2Y"7EA.LT9(ZC< MI/([CJ*YI?C_ /#-M3_LT?$#PU_:'F^1]D_M6#S?,SC9MW9W9XQ7YH?\$6O% M.II\3?'_ (<^UR'1IM'2_-HS$H)TG1 X'8[9&!QUX]!7B'[7.D>=_P %#/$5 MA83MI+W&OV2)<6J@-"SQPY=1TW9.?K79#)8O&5,+*>D5=,EU'RJ2/V5\7_M& M_##P#XEC\/>(?'6B:1K3D+]BN;M5=2>F_P#N?\"Q7HD,T=Q$DL3K)$X#*Z'( M8'H0>]?C[_P5+_9M\&? _2/A_J?ARUN/[7U*2YBU/4;NX>:>^=0K>;(6)^8E MCTQ7WS_P3R\17WBC]COX/QA\4/! M_P /I;:/Q/XHTCP])<@M"NIWL=N9 ,9*[R,XR.E?@Y^UI_R>UX]_[&I__1PK M]%?^"QUI#)^SAH$[1*TT7B"$)(1\R@Q2YP:^]S&@L4\%1D[PYJW\._BOX/^+6ERZCX M.\1Z?XBLXG\N22QF#^6WHPZJ?J*_,S]B/]F+PE\8OV./%6O^,6O-<-E_:(TK M3Y+ATMM.D2+<9D12 9&(7+-G@8K@O^"0?B:\T+]I;7M&6Y*:7>:%<27,;-A2 MT,L>QS[@._YFO)J9325.NX3;E2\M"U4=U=;GZ]^-_B%X9^&NC-JWBK7M/\/Z M<#M^T:A<+$K'T7)^8^PR:Q?AU\=OA[\7'FC\'>,-)\030C,D%G< RJ/4H<-C MWQBOS7_9^^(Q_;?_ ."B-SK/B<#4O"7AZ"[N=#T:X^:WBAB81PML/!;7;T'[1O5+0_5.BD7.T;L;L\FQD()DV_P 0C< D?W6>OS8\5_LI^&?& _MCPCJB M:='<#S%C7][;-G^Z1RH]N:_=:]LK?4K.:TNH4N+:=#'+%(NY74C!!'<$5^7/ M[4G_ 3_ /B#\(]QK:)W^&5MKZ/5;7L]#Y?,!J\DWNNDK;7\_D?&,_[(GC** M0B.YTV9>SB?&?P(K4T;]CG79Y =4UJQLXN_DAI6_D!^M8VK?M'_$WP[=RZ?J ML<>GW\1VO#=V/ER*?=6P:XWQ)\;O&GBJ)HKW79U@88,5N?*4_E7U]'"^(>*2 MIU,51IQ_F23?R7+;\CQU2SR?NSJ0CYI7?Y'L6K:;\+/@/#N,8\6>)5&8X9V# MJC>K*/E4?7)KQ^:]\6_M _$33=.A234]9U*=+2QLH1A(]QP%4?PJ.I/H"33? MA?\ !3QS\:]=CTWPAX=OM;N97PTT49\I,]WD/RC\37[$?L,?\$_=+_9H@7Q1 MXEDAUGQ]<1;?-09BL%/5(\]6/0M7O87+<+PYS8O%5Y8G&-6YYN[7E%;0CZ:L M]K Y8J,O:5).<_YG^271>A]$_ #X46OP/^#?A/P1:$.ND6*0RR@8\V8_-*__ M )V8_C7RYKGA;Q[^T+^UYXT\0> O&EOX/@\ VD/AZ&]GT];P233*9)P@8X! M'RJ3[8K[&\(IO"FHQ^%);&#Q \>VTEU)6:!&)&68+R<#) ]<5X1^R#\!O MB/\ &WU[3?%6N:'XDL]9U*?6+G4+:&2.[:YEQNSDX*Y'X9KQJ%7EC4K.2YW MT>N[U>UO^'/H9+51Z'R7_P %"_V;OC!+\%/^$M\;?$6Q\;VGAVX61;:#2$M9 M(DD(1GWKU&=O'O7*?\$9_BI_8_Q.\8> ;F;$&M6*ZE:(QX\Z X<#W9),_2.O MT5_:@^&_B[XP?"W5O!?AF?1[.#6;=K:\N=521S&N0045>">.]?"_P>_X)9?% MGX)?$K0?&WAWX@Z FJZ1/YT:R6LNR12"KQMS]UE9E/UKZ+#8VC7RZIAL1-1; MVTMYK9=S-Q:G='#?\%G_ /DM7@C_ + ;_P#HXU^E'[)__)MGPX_[ MO_ .@U M\N?MB?L%?$?]K3QUI.OW/B/P[H4>FV"V<<$4,TA" M/$OPU^%>B>%/$TVFW5QH]NEG#$O&OPKO+75_'-_JD.NR^"]VV4M#()))]WW4B;;R M6Q@MQFNS_:,_9;^*7[V37S]^VI>?%3X)?MPZMXU\%ZK)>:MJ<.+$:81=S1V^Q0T,D*Y90,#J,' - M43^WM^UQX31;_5='O!91_-(U]XZOT[: M;:F5XW:9^C/[17QM\.?L/_L^6,]CI_V@64,>E:+IN[ ED5<+N/H -S'O^-?) M7PV\/ZK^U+^S#\3?CA\5]7;Q+?)I>J+H.A%RNGZ48H7 E6$'!DST9LD<'K73 M)]J_X*L?LHXO< MMWD]%H>-_P#!%[_DN_CC_L6S_P"E4->:_M5?\I)M5_[&/3O_ $""OK#]D7_@ MG/\ $W]GSXQ7FN7'C>SL?#KQ_9YQI8)GOX1*D@C.X?NP2BY/)QD#K47Q5_X) MK?$CXD_M#ZE\5!XN\/6ES<:G%?Q67V>4JHBVA%)SZ(,_4UZ?U_"+'U*WM%RR MA;KOH1RRY4K&?_P6M_Y%;X8_]?EY_P"@1U[O^P)XUT+X>?L$>"O$'B35+;1M M&LHKMY[R[D"1H/MDH&2?4D#%4?VX_P!CSQS^UQ:^$+2UUW1-#M]&1Y9C+%([ M23N%#;<'A1MX[USFO?L(>-];_8;M?@E<>(M+.L:-J8O].O+=72&Y3?(_ES \ MCF9\$UX]_P"QJ?\ ]'"OT:_X+%_\FT:+_P!C M!!_Z*EKR/XC_ /!*7XH?$GXEZWXWO_'OA^'5=5OWU&18K27:CLV[ YZ U]'? MM5_LQ_%/]JCX0^'?".J:UX:TB^L[W[9?7=O%,R3,J%4V*3\N=S$_08KZFMC, M-*KA)JHK4]]^R\O(YU&24M-SSS_@FM_R83XN_P"NFJ_^B*^1/^"6EC)J?[4& MOV<) EN/#.I0H3V9GB _G7Z$?LU?LL^/O@!^SMXM^'!UK0]3N]0\]K"\$4JI M&TR;'\P9R<#D8KRO]C__ ()V^//V8OC=;^-KCQ1H>L67%S%!:*NYIY' 0#USTQ7P%^V3_P $ MO(_C/XWO?'/P\U2UT'7-0?SM0TZ[4B">;O*C#[C-U/8GGO71?L]_L5?%6SM] M*LOC+\3+KQ#X7TET>U\+VDS/!*5QM$TA +H,#Y:Y\RJ83,%#%*IRRM9JVOR* M@I0]VQ].?$G]HOX;?"'4--L?%_B_3-"N]1 :VANI@&=20:A: M0W5K,EQ;3()(Y8VW*ZD9!![@BO@#]N?_ ()T>*?VCOBY9>,/"NO6%G#+:PV= MU:7^X"W$8VAH\=1CMZU]L?"3P$OPM^%_A7P@MY)J T/3;?3_ +5)]Z7RXPNX M_7%>'7HX:%"G.E4O-[KL:IR;::.MHHHKSBSCO&GP=\#?$5-OB?PEH^N#UOK- M)#^9%<)IW[%7P,TN\%U;_"_PVLP.06L48 ^P(KVRBMHUZL%:,FEZD\J?0S-! M\,Z1X6LEM-'TRTTNU48$5I"L:@?0"M.BBLFV]64%%%%( HHHH **** /@KPU M^SW\6?V8OVE/&_Q$\/\ ABT^+GAOQ2S/)#]OCMM3L\N7 4S?*<9((!^8 =,5 M[+KGQ?\ BWXUTNXTC0_@'?:?=741B-[XJU>SCL[ EX-101.SCH 7 agx-20241031.xsd EX-101.SCH 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink 995200100 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS link:presentationLink link:calculationLink link:definitionLink 995200200 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 995200400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 99940302 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details) link:presentationLink link:calculationLink link:definitionLink 99940602 - Disclosure - INTANGIBLE ASSETS - Components of Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 99940603 - Disclosure - INTANGIBLE ASSETS - Finite Lived Intangible Future Amortization Schedule (Details) link:presentationLink link:calculationLink link:definitionLink 99941101 - Disclosure - INCOME TAXES - Income Tax Expense Reconciliation (Details) link:presentationLink link:calculationLink link:definitionLink 99941201 - Disclosure - EARNINGS PER SHARE (Details) link:presentationLink link:calculationLink link:definitionLink 99941601 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details) link:presentationLink link:calculationLink link:definitionLink 99941602 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) link:presentationLink link:calculationLink link:definitionLink 995200090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 995200205 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS(Parenthetical) link:presentationLink link:calculationLink link:definitionLink 995200300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 995210101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION link:presentationLink link:calculationLink link:definitionLink 995210301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS link:presentationLink link:calculationLink link:definitionLink 995210501 - Disclosure - ACCOUNTS RECEIVABLE link:presentationLink link:calculationLink link:definitionLink 995210601 - Disclosure - INTANGIBLE ASSETS link:presentationLink link:calculationLink link:definitionLink 995210701 - Disclosure - FINANCING ARRANGEMENTS link:presentationLink link:calculationLink link:definitionLink 995210801 - Disclosure - COMMITMENTS link:presentationLink link:calculationLink link:definitionLink 995210901 - Disclosure - LEGAL CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 995211001 - Disclosure - STOCK-BASED COMPENSATION link:presentationLink link:calculationLink link:definitionLink 995211101 - Disclosure - INCOME TAXES link:presentationLink link:calculationLink link:definitionLink 995211201 - Disclosure - EARNINGS PER SHARE link:presentationLink link:calculationLink link:definitionLink 995211401 - Disclosure - CUSTOMER CONCENTRATIONS link:presentationLink link:calculationLink link:definitionLink 995211501 - Disclosure - SEGMENT REPORTING link:presentationLink link:calculationLink link:definitionLink 99920102 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies) link:presentationLink link:calculationLink link:definitionLink 99930303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 99930603 - Disclosure - INTANGIBLE ASSETS (Tables) link:presentationLink link:calculationLink link:definitionLink 99931003 - Disclosure - STOCK-BASED COMPENSATION (Tables) link:presentationLink link:calculationLink link:definitionLink 99931103 - Disclosure - INCOME TAXES (Tables) link:presentationLink link:calculationLink link:definitionLink 99931203 - Disclosure - EARNINGS PER SHARE (Tables) link:presentationLink link:calculationLink link:definitionLink 99931503 - Disclosure - SEGMENT REPORTING (Tables) link:presentationLink link:calculationLink link:definitionLink 99940201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details) link:presentationLink link:calculationLink link:definitionLink 99940202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Termination (Details) link:presentationLink link:calculationLink link:definitionLink 99940205 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 40205 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations Default (Details) link:presentationLink link:calculationLink link:definitionLink 99940301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 99940303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details) link:presentationLink link:calculationLink link:definitionLink 99940401 - Disclosure - FAIR VALUE MEASUREMENTS - Financial Instruments on a Recurring Basis (Details) link:presentationLink link:calculationLink link:definitionLink 99940501 - Disclosure - ACCOUNTS RECEIVABLE (Details) link:presentationLink link:calculationLink link:definitionLink 99940601 - Disclosure - INTANGIBLE ASSETS - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 99940701 - Disclosure - FINANCING ARRANGEMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 99940801 - Disclosure - COMMITMENTS - Performance Bonds and Guarantees (Details) link:presentationLink link:calculationLink link:definitionLink 99940802 - Disclosure - COMMITMENTS - Warranties (Details) link:presentationLink link:calculationLink link:definitionLink 99941001 - Disclosure - STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details) link:presentationLink link:calculationLink link:definitionLink 99941002 - 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 99941003 - Disclosure - STOCK-BASED COMPENSATION - Summary of changes in the maximum number of shares of common stock (Details) link:presentationLink link:calculationLink link:definitionLink 99941004 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 99941102 - Disclosure - INCOME TAXES - Net Operating Loss Carryback (Details) link:presentationLink link:calculationLink link:definitionLink 99941103 - Disclosure - INCOME TAXES - Research and Development Tax Credits and Income Tax Refunds (Details) link:presentationLink link:calculationLink link:definitionLink 99941104 - Disclosure - INCOME TAXES - Solar Energy Projects (Details) link:presentationLink link:calculationLink link:definitionLink 99941301 - Disclosure - STOCKHOLDERS' EQUITY (Details) link:presentationLink link:calculationLink link:definitionLink 99941302 - Disclosure - STOCKHOLDERS' EQUITY - Dividends Paid (Details) link:presentationLink link:calculationLink link:definitionLink 99941401 - Disclosure - CUSTOMER CONCENTRATIONS (Details) link:presentationLink link:calculationLink link:definitionLink 99941501 - Disclosure - SEGMENT REPORTING (Details) link:presentationLink link:calculationLink link:definitionLink 995210201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS link:presentationLink link:calculationLink link:definitionLink 995210401 - Disclosure - FAIR VALUE MEASUREMENTS link:presentationLink link:calculationLink link:definitionLink 995211601 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION link:presentationLink link:calculationLink link:definitionLink 99930203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables) link:presentationLink link:calculationLink link:definitionLink 99930403 - Disclosure - FAIR VALUE MEASUREMENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 99931303 - Disclosure - STOCKHOLDERS' EQUITY (Tables) link:presentationLink link:calculationLink link:definitionLink 99931403 - Disclosure - CUSTOMER CONCENTRATIONS (Tables) link:presentationLink link:calculationLink link:definitionLink 99931603 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables) link:presentationLink link:calculationLink link:definitionLink 99940203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Assets and Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 99940204 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Variable Consideration (Details) link:presentationLink link:calculationLink link:definitionLink 99940304 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Investments (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 8 agx-20241031_cal.xml EX-101.CAL EX-101.DEF 9 agx-20241031_def.xml EX-101.DEF EX-101.LAB 10 agx-20241031_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 Quarterly 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 Current Reporting Status Entity Interactive Data Current Entity Filer Category Entity Filer Category Entity Small Business Entity Emerging Growth Company Entity Shell Company Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding 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 CONDENSED 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 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 Net income Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract] OTHER COMPREHENSIVE INCOME, NET OF TAXES 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 losses on available-for-sale securities Comprehensive Income (Loss), Net of Tax, Attributable to Parent COMPREHENSIVE INCOME EARNINGS PER SHARE NET INCOME PER SHARE 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 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 CONDENSED 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 Goodwill Goodwill 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 8 and 9) 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,569,104 and 13,242,520 shares outstanding at October 31, 2024 and January 31, 2024, respectively Additional Paid in Capital, Common Stock Additional paid-in capital Retained Earnings (Accumulated Deficit) Retained earnings Treasury Stock, Value Treasury stock, at cost - 2,259,185 and 2,585,769 shares at October 31, 2024 and January 31, 2024, 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 CONDENSED 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 Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest Balances Balances Shares, Outstanding Balances (in shares) Balances (in shares) Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Net income Net income 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 Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period Shares, Exercised Stock option exercises and restricted stock unit settlements (in shares) Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture Stock option exercises and restricted stock unit settlements, net Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture Stock option exercises and restricted stock unit settlements, net (in shares) Stock Repurchased During Period, Value Common stock repurchases Stock Repurchased During Period, Shares Common stock repurchases (in shares) Common stock repurchases (in shares) Dividends, Common Stock, Cash Cash dividends CONDENSED 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 operating activities Increase (Decrease) in Accrued Interest Receivable, Net Changes in accrued interest on investments Share-based Compensation Stock compensation expense Operating Lease, Expense Lease expense Depreciation Depreciation Deferred Income Tax Expense (Benefit) Deferred income tax expense Amortization of Intangible Assets Amortization of intangibles Amortization of intangible assets 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 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 Proceeds from Sale and Maturity of Marketable Securities Maturities 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 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 Amount of cash inflow from share-based award settlements, net of withholding taxes paid. Proceeds From Share-Based Award Settlements, Net Of Withholding Taxes Paid Settlements of share-based awards, net of withholding taxes paid 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 (DECREASE) INCREASE 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 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, 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 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] EARNINGS PER SHARE 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 Consolidation, Policy [Policy Text Block] Description of the Business Basis of Accounting, Policy [Policy Text Block] Basis of Presentation and Significant Accounting Policies 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 Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Schedule of revenues recognized contract liabilities 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 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 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 Effective Income Tax Rate Reconciliation [Table Text Block] Schedule of actual income tax expense amounts Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Schedule of basic and diluted earnings per share STOCKHOLDERS' EQUITY Dividends Declared [Table Text Block] Schedule of dividends paid Schedules of Concentration of Risk, by Risk Factor [Table Text Block] schedule of the percentage of consolidated revenues 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 Disaggregation of Revenues [Table] Geographical [Axis] Geographical [Domain] United States United States Republic of Ireland Republic of Ireland United Kingdom United Kingdom 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 Atlantic Projects Company Limited Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction 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 The notice period given to owners breaches of contract to decide as contract termination. Notice Period Of Breach of Contract, Owners, To Be Considered as Contract Termination Termination period Proceeds from Lines of Credit Amounts drawn against this letter of credit Contract with Customer, Liability, Revenue Recognized Revenues recognized from 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] Range [Axis] Range [Domain] Minimum Minimum Maximum Maximum 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 Held-to-maturity Securities Cash and Cash Equivalents [Line Items] Cash and Cash Equivalents Dividends earned but not yet received by the entity on its investments. Accrued Investment Income, Dividend Receivable Accrued dividends Represents the maturity period of investments. Investment Maturity Period Maturity period Interest Receivable Accrued interest 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) 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, 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] 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 within one year Amortized cost, Due within one year 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 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 One to Three Amortized cost, Due in one to three 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 third fiscal year though five 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 Three to Five Amortized Cost, Due in three to five 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 Within One Year Gross Unrealized Gains, Due within one year 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 Three Gross Unrealized Gains, Due in one to three 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 Three Through Five Gross Unrealized Gains, Due in three to five 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 within one year Gross Unrealized Losses, Due within one year 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 third fiscal year following current fiscal year. Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax after Year One Through Three Gross Unrealized Losses, Due in one to three 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 third and five fiscal year following current fiscal year. Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax after Year Three Through Five Gross Unrealized Losses, Due in three to five 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 within one year Fair Value, Due in within one year 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 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 One to Three Fair Value, Due in one to three 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 third fiscal year through 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). Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year Three to Five Fair Value, Due in three to five years Investment Income, Nonoperating Earnings on investments Fair Value, Recurring and Nonrecurring [Table] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Domain] Level 1 Inputs Level 1 Inputs Level 2 Inputs Level 2 Inputs Measurement Frequency [Axis] Measurement Frequency [Domain] Fair value, recurring Fair value, recurring Money market funds Money market funds US Treasury Securities [Member] U.S. Treasury notes Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Fair value of assets and liabilities measured on recurring and nonrecurring basis Cash and Cash Equivalents, Fair Value Disclosure 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] Represents information pertaining to overseas project. Overseas Project [Member] Overseas Project Accounts, Notes, Loans and Financing Receivable [Line Items] ACCOUNTS AND NOTES RECEIVABLE Amounts due from billable services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the Company and, at a minimum, one other party. An example would be amounts billed to customers under contracts or programs but not paid as of the balance sheet date. Billable Contracts Receivables Billable amounts Accounts Receivable, Credit Loss Expense (Reversal) Provision for credit losses Financing Receivable, Allowance for Credit Loss, Current Allowance for uncollectible accounts Schedule of Finite-Lived Intangible Assets [Table] Business Acquisition [Axis] Business Acquisition, Acquiree [Domain] The Gemma Power System, LLC. GPS. The Roberts Company Inc. TRC. Finite-Lived Intangible Assets [Line Items] Indefinite-Lived Intangible Assets Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] Trade name Customer relationships 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 Asset, Expected Amortization, Remainder of Fiscal Year 2025 (remainder) Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months 2026 Finite-Lived Intangible Assets, Amortization Expense, Year Two 2027 Finite-Lived Intangible Assets, Amortization Expense, Year Three 2028 Finite-Lived Intangible Assets, Amortization Expense, Year Four 2029 Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). Finite-Lived Intangible Assets, Amortization Expense, after Year Four Thereafter Line of Credit Facility [Table] Credit Facility [Axis] Credit Facility [Domain] Line of Credit [Member] Revolving Credit Facility Scenario [Axis] Scenario, Unspecified [Domain] Represents information pertaining to letters of credit expire on May 31, 2024. Expires on May 31, 2024 Represents information pertaining to letters of credit expire on May 31, 2027. Expires on May 31, 2027 [Member] Expires on May 31, 2027 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 Debt Instrument, Variable Interest Rate, Type [Extensible Enumeration] 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 Gemma power systems. GPS Guarantor Obligations, Nature [Axis] Guarantor Obligations, Nature [Domain] Financial guarantee Represents information pertaining to remaining bonded performance obligations. Remaining Bonded Performance Obligations Unsatisfied bonded performance obligations The aggregate amount of bonds covering other risks including warranty obligations. Bonds Outstanding Covering Other Risks Outstanding amount of bonds covering other risks including warranty obligations Guarantor Obligations, Maximum Exposure, Undiscounted Guarantor obligation maximum exposure 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 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, Outstandings, 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 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 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, Forfeited 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) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period Granted (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 Granted, 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) Represents information pertaining to performance-based restricted stock units. Performance-based restricted stock units 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 the information pertaining to Renewable Performance Based Restricted Stock Units. Renewable Performance-Based Restricted Stock Units Renewable energy performance-based restricted stock units Represents the information pertaining to Time based Restricted Stock Units. Time Based Restricted Stock Units Time-based restricted stock units 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 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 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 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 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 Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount State income taxes, net of federal tax effect The amount of unrecognized tax loss benefit. Unrecognized tax loss benefit Unrecognized tax loss benefit 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 Executive compensation limitation Effective Income Tax Rate Reconciliation, Nondeductible Expense, Meals and Entertainment, Amount Meals and entertainment expense Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount Foreign tax rate differential 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 Deferred Income Taxes and Other Tax Receivable, Current Income tax receivable Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount Federal research and development tax credits 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 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 Investment Income [Table] Net Investment Income [Line Items] Solar Energy Projects Amount of cash investment commitments. Cash Investment Commitments Remaining cash investment commitments Equity Method Investments Investment account balances Amount of amortization of equity investments in solar energy projects. Amortization of Equity Investments in Solar Energy Projects Amortization related to STC investment 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] EARNINGS PER SHARE Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements Effects of stock awards Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Antidilutive common stock Share Repurchase Program [Table] Share Repurchase Program [Line Items] Share repurchases The percentage increase in common stock dividend per share. Percentage Increase In Common Stock Dividend Per Share Percentage increase in common stock dividend Equity impact of the value of stock that has been repurchased including excise tax 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. Stock Repurchased Including Excise Tax During Period, Value Common stock repurchased Share Price Share price Dividends Payable [Table] Dividends [Axis] Dividends [Domain] Represents information relating to O 2025 Q3 Dividends. O 2025 Q3 Dividends [Member] 2025 Q3 dividend Represents information pertaining to O 2025 Q2 dividends. O 2025 Q2 Dividends [Member] 2025 Q2 dividend Represents information pertaining to O 2025 Q1 dividends. O 2025 Q1 Dividends [Member] 2025 Q1 dividend Represents information pertaining to O 2024 Q4 dividends. O 2024 Q4 Dividends [Member] 2024 Q4 dividend Represents information pertaining to O 2024 Q3 dividends. O 2024 Q3 Dividends [Member] 2024 Q3 dividend Represents information relating to O 2024 Q2 dividend. O 2024 Q2 Dividends [Member] 2024 Q2 dividend Represents information relating to O 2024 Q1 dividend. O 2024 Q1 Dividends [Member] 2024 Q1 dividend Dividends Payable [Line Items] Dividends Payable, Date of Record Record date Dividends Payable, Date to be Paid Payment date Common Stock, Dividends, Per Share, Cash Paid Amount Per Share Concentration Risk [Table] Power industry services. Power Industry Services Represents information pertaining to industrial construction services. Industrial Construction Services [Member] Industrial Construction Services Telecommunication Infrastructure Services. Telecommunication Infrastructure 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 Major customer four. Major Customer Four 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] Segments [Axis] Segments [Domain] Telecommunications infrastructure services. Telecommunications Infrastructure Services 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 EX-101.PRE 11 agx-20241031_pre.xml EX-101.PRE XML 13 R1.htm IDEA: XBRL DOCUMENT v3.24.3
Document and Entity Information - shares
9 Months Ended
Oct. 31, 2024
Nov. 29, 2024
Document And Entity Information    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Oct. 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 Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   13,575,116
Entity Central Index Key 0000100591  
Document Fiscal Year Focus 2025  
Current Fiscal Year End Date --01-31  
Document Fiscal Period Focus Q3  
Amendment Flag false  
XML 14 R2.htm IDEA: XBRL DOCUMENT v3.24.3
CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS        
REVENUES $ 257,008 $ 163,755 $ 641,705 $ 408,779
Cost of revenues 212,681 144,520 548,329 351,578
GROSS PROFIT 44,327 19,235 93,376 57,201
Selling, general and administrative expenses 13,995 11,375 37,848 32,467
INCOME FROM OPERATIONS 30,332 7,860 55,528 24,734
Other income, net 6,646 3,733 17,044 7,222
INCOME BEFORE INCOME TAXES 36,978 11,593 72,572 31,956
Income tax expense 8,968 6,129 18,482 11,616
NET INCOME 28,010 5,464 54,090 20,340
OTHER COMPREHENSIVE INCOME, NET OF TAXES        
Foreign currency translation adjustments (957) (882) (1,933) (627)
Net unrealized losses on available-for-sale securities (659) (427) (169) (1,147)
COMPREHENSIVE INCOME $ 26,394 $ 4,155 $ 51,988 $ 18,566
NET INCOME PER SHARE        
Basic (in dollars per share) $ 2.07 $ 0.41 $ 4.04 $ 1.52
Diluted (in dollars per share) $ 2.00 $ 0.40 $ 3.91 $ 1.50
WEIGHTED AVERAGE SHARES OUTSTANDING        
Basic (in shares) 13,530 13,328 13,398 13,381
Diluted (in shares) 14,034 13,559 13,830 13,549
CASH DIVIDENDS PER SHARE $ 0.375 $ 0.300 $ 0.975 $ 0.800
XML 15 R3.htm IDEA: XBRL DOCUMENT v3.24.3
CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Oct. 31, 2024
Jan. 31, 2024
CURRENT ASSETS    
Cash and cash equivalents $ 175,349 $ 197,032
Investments 330,933 215,373
Accounts receivable, net 131,660 47,326
Contract assets 44,620 48,189
Other current assets 34,579 39,259
TOTAL CURRENT ASSETS 717,141 547,179
Property, plant and equipment, net 14,147 11,021
Goodwill 28,033 28,033
Intangible assets, net 1,924 2,217
Deferred taxes, net 1,254 2,259
Right-of-use and other assets 6,365 7,520
TOTAL ASSETS 768,864 598,229
CURRENT LIABILITIES    
Accounts payable 87,085 39,485
Accrued expenses 78,393 81,721
Contract liabilities 270,686 181,054
TOTAL CURRENT LIABILITIES 436,164 302,260
Noncurrent liabilities 3,996 5,030
TOTAL LIABILITIES 440,160 307,290
COMMITMENTS AND CONTINGENCIES (see Notes 8 and 9)
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,569,104 and 13,242,520 shares outstanding at October 31, 2024 and January 31, 2024, respectively 2,374 2,374
Additional paid-in capital 168,441 164,183
Retained earnings 266,334 225,507
Treasury stock, at cost - 2,259,185 and 2,585,769 shares at October 31, 2024 and January 31, 2024, respectively (102,746) (97,528)
Accumulated other comprehensive loss (5,699) (3,597)
TOTAL STOCKHOLDERS' EQUITY 328,704 290,939
TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY $ 768,864 $ 598,229
XML 16 R4.htm IDEA: XBRL DOCUMENT v3.24.3
CONDENSED CONSOLIDATED BALANCE SHEETS(Parenthetical) - $ / shares
Oct. 31, 2024
Jan. 31, 2024
CONDENSED 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,569,104 13,242,520
Treasury stock, shares 2,259,185 2,585,769
XML 17 R5.htm IDEA: XBRL DOCUMENT v3.24.3
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
$ in Thousands
Common Stock
Additional Paid-in Capital
Retained Earnings
Treasury Stock
Accumulated Other Comprehensive Loss
Total
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     20,340     20,340
Foreign currency translation loss         (627) (627)
Net unrealized losses on available-for-sale securities         (1,147) (1,147)
Stock compensation expense   3,416       3,416
Stock option exercises and restricted stock unit settlements, net   (2,470)   3,577   1,107
Stock option exercises and restricted stock unit settlements, net (in shares) 103,598          
Common stock repurchases       (8,467)   $ (8,467)
Common stock repurchases (in shares) (212,441)         (212,441)
Cash dividends     (10,686)     $ (10,686)
Balances at Oct. 31, 2023 $ 2,374 163,154 217,486 (93,531) (4,650) 284,833
Balances (in shares) at Oct. 31, 2023 13,332,747          
Balances at Jul. 31, 2023 $ 2,374 162,323 216,009 (92,329) (3,341) 285,036
Balances (in shares) at Jul. 31, 2023 13,353,653          
Net income     5,464     5,464
Foreign currency translation loss         (882) (882)
Net unrealized losses on available-for-sale securities         (427) (427)
Stock compensation expense   1,198       1,198
Stock option exercises and restricted stock unit settlements, net   (367)   527   160
Stock option exercises and restricted stock unit settlements, net (in shares) 21,747          
Common stock repurchases       (1,729)   (1,729)
Common stock repurchases (in shares) (42,653)          
Cash dividends     (3,987)     (3,987)
Balances at Oct. 31, 2023 $ 2,374 163,154 217,486 (93,531) (4,650) 284,833
Balances (in shares) at Oct. 31, 2023 13,332,747          
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          
Net income     54,090     54,090
Foreign currency translation loss         (1,933) (1,933)
Net unrealized losses on available-for-sale securities         (169) (169)
Stock compensation expense   3,390       $ 3,390
Stock option exercises and restricted stock unit settlements (in shares)           800,000
Stock option exercises and restricted stock unit settlements, net   868   (4,572)   $ (3,704)
Stock option exercises and restricted stock unit settlements, net (in shares) 337,884          
Common stock repurchases       (646)   $ (646)
Common stock repurchases (in shares) (11,300)         (11,300)
Cash dividends     (13,263)     $ (13,263)
Balances at Oct. 31, 2024 $ 2,374 168,441 266,334 (102,746) (5,699) 328,704
Balances (in shares) at Oct. 31, 2024 13,569,104          
Balances at Jul. 31, 2024 $ 2,374 165,902 243,519 (99,644) (4,083) 308,068
Balances (in shares) at Jul. 31, 2024 13,497,550          
Net income     28,010     28,010
Foreign currency translation loss         (957) (957)
Net unrealized losses on available-for-sale securities         (659) (659)
Stock compensation expense   1,175       1,175
Stock option exercises and restricted stock unit settlements, net   1,364   (2,643)   (1,279)
Stock option exercises and restricted stock unit settlements, net (in shares) 77,254          
Common stock repurchases       (459)   (459)
Common stock repurchases (in shares) (5,700)          
Cash dividends     (5,195)     (5,195)
Balances at Oct. 31, 2024 $ 2,374 $ 168,441 $ 266,334 $ (102,746) $ (5,699) $ 328,704
Balances (in shares) at Oct. 31, 2024 13,569,104          
XML 18 R6.htm IDEA: XBRL DOCUMENT v3.24.3
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
CASH FLOWS FROM OPERATING ACTIVITIES    
Net income $ 54,090 $ 20,340
Adjustments to reconcile net income to net cash provided by operating activities    
Changes in accrued interest on investments 2,992 (1,876)
Stock compensation expense 3,390 3,416
Lease expense 2,415 1,335
Depreciation 1,376 1,524
Deferred income tax expense 1,060 497
Amortization of intangible assets 293 294
Other 1,006 287
Changes in operating assets and liabilities    
Accounts receivable (85,084) 168
Contract assets 3,569 (613)
Other assets 4,514 (2,977)
Accounts payable and accrued expenses 43,707 9,960
Contract liabilities 89,632 59,908
Net cash provided by operating activities 122,960 92,263
CASH FLOWS FROM INVESTING ACTIVITIES    
Purchases of short-term investments (135,000) (115,000)
Maturities of short-term investments 117,500 159,750
Purchases of available-for-sale securities (110,045) (104,492)
Maturities of available-for-sale securities 9,230  
Purchases of property, plant and equipment (5,218) (2,143)
Investments in solar energy projects (3,312)  
Net cash used in investing activities (126,845) (61,885)
CASH FLOWS FROM FINANCING ACTIVITIES    
Common stock repurchases (646) (8,467)
Payments of cash dividends (13,263) (10,686)
Settlements of share-based awards, net of withholding taxes paid (3,704) 1,107
Net cash used in financing activities (17,613) (18,046)
EFFECTS OF EXCHANGE RATE CHANGES ON CASH (185) (710)
NET (DECREASE) INCREASE IN CASH AND CASH EQUIVALENTS (21,683) 11,622
CASH AND CASH EQUIVALENTS, BEGINNING OF PERIOD 197,032 173,947
CASH AND CASH EQUIVALENTS, END OF PERIOD 175,349 185,569
NON-CASH INVESTING AND FINANCING ACTIVITIES    
Right-of-use assets obtained in exchange for lease obligations 1,995 706
SUPPLEMENTAL CASH FLOW INFORMATION    
Cash paid for income taxes, net of refunds 15,133 7,022
Cash paid for operating leases $ 2,404 $ 1,340
XML 19 R7.htm IDEA: XBRL DOCUMENT v3.24.3
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION
9 Months Ended
Oct. 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 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 on-site 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 condensed consolidated financial statements include the accounts of Argan and its wholly-owned subsidiaries. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 15, 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.

The Company’s fiscal year ends on January 31 each year. The condensed consolidated balance sheet as of October 31, 2024, the condensed consolidated statements of earnings and stockholders’ equity for the three and nine months ended October 31, 2024 and 2023, and the condensed consolidated statements of cash flows for the nine months ended October 31, 2024 and 2023 are unaudited. The condensed consolidated balance sheet as of January 31, 2024 has been derived from audited consolidated financial statements. These condensed consolidated financial statements have been prepared pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (the “SEC”). Certain information and note disclosures normally included in annual financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations, although the Company believes that the disclosures made are adequate to make the information not misleading. The accompanying condensed consolidated financial statements and notes should be read in conjunction with the consolidated financial statements, the notes thereto, and the independent registered public accounting firm’s report thereon, that are included in the Company’s Annual Report on Form 10-K for the fiscal year ended January 31, 2024 (“Fiscal 2024”).

In the opinion of management, the accompanying condensed consolidated financial statements contain all adjustments, which are of a normal and recurring nature, considered necessary for a fair statement of the financial position of the Company as of October 31, 2024, and its earnings and cash flows for the interim periods presented. The results of operations for any interim period are not necessarily indicative of the results of operations for any other interim period or for a full fiscal year.

Recently Issued Accounting Pronouncements

In November 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, by 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 plans to adopt the provisions of ASU 2023-07 as of January 31, 2025. The Company does not expect the adoption of this ASU to have an impact on its financial position, results of operations or cash flows.

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.

In November 2024, the FASB issued ASU 2024-03, Income Statement—Reporting Comprehensive Income—Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses, which requires public business entities to disclose specific information about certain costs and expenses. The amendments in this update are effective for fiscal years beginning after December 15, 2026, and interim periods within fiscal years beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating the effects, if any, that the adoption of ASU 2024-03 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 condensed consolidated financial statements.

XML 20 R8.htm IDEA: XBRL DOCUMENT v3.24.3
REVENUES FROM CONTRACTS WITH CUSTOMERS
9 Months Ended
Oct. 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 the three and nine months ended October 31, 2024 and 2023, disaggregated by the geographic area where the corresponding projects were located:

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

United States

$

239,489

$

92,066

$

559,069

$

239,866

Republic of Ireland

 

16,981

 

68,359

 

74,039

 

139,014

United Kingdom

 

538

 

3,330

 

8,597

 

29,899

Consolidated Revenues

$

257,008

$

163,755

$

641,705

$

408,779

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 15 to the condensed consolidated financial statements.

Contract Termination

For APC’s project to construct a gas-fired power facility in Northern Ireland (the “Kilroot Project”), an estimated loss of approximately $12.6 million has been recognized, of which $2.6 million was recorded during the nine-month period ended October 31, 2024 and the remainder was recorded in the prior fiscal year.

APC provided 14 days’ notice to terminate as a result of project owner breaches of the contract. Those breaches were not resolved during that 14-day period, as a result of which the contract terminated on May 3, 2024. Subsequently, the project owner made a draw for the full amount of a $9.2 million irrevocable letter of credit, or on-demand performance bond,

issued by the Company’s bank. This amount is now part of the open and disputed claims related to this project because APC and the Company believe the project owner initiated the draw without cause and, therefore, the amount should be refunded. This amount is included in accounts receivable as of October 31, 2024.

APC has significant billable receivables, unresolved contract variations and claims for extensions of time, among other issues, related to the Kilroot Project. The project owner has asserted counterclaims that APC disputes. APC will continue to pursue all of its rights under the contract, and will do so through legal means if necessary.

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 can result in large contract liability or contract asset balances early in contract lives that decline over the terms of the corresponding contracts. During the nine months ended October 31, 2024 and 2023, there were no unusual or one-time adjustments to these balances.

The Company recognized the following revenues that were included in the contract liabilities balances at the beginning of the respective period:

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

Revenues recognized from contract liabilities

$

132,068

$

53,783

$

175,630

$

94,198

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 October 31, 2024 and January 31, 2024 were $19.6 million and $21.2 million, respectively.

Variable Consideration

Variable consideration includes unapproved change orders where the Company has project-owner directive for additional work or other scope changes, but has not yet obtained approval for the associated price or the corresponding additional effort. These amounts are included in the transaction price when it is considered probable that the applicable costs, including those for additional effort, 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 claims based on management’s judgment regarding all reasonably available information. At October 31, 2024 and January 31, 2024, the aggregate amounts of such contract variations, that primarily related to an overseas project, and that were included in the corresponding transaction prices pending customer approvals, were $9.9 million and $8.4 million, respectively.

Remaining Unsatisfied Performance Obligations (“RUPO”)

At October 31, 2024, the Company had RUPO of $0.8 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 26% of the RUPO amount at October 31, 2024 will be included in the amount of consolidated revenues that will be recognized during the remainder of the fiscal year ending January 31, 2025 (“Fiscal 2025”). Most of the remaining amount of the RUPO amount at October 31, 2024 is expected to be recognized in revenues during the fiscal years ending January 31, 2026 (“Fiscal 2026”) and January 31, 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. 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 21 R9.htm IDEA: XBRL DOCUMENT v3.24.3
CASH, CASH EQUIVALENTS AND INVESTMENTS
9 Months Ended
Oct. 31, 2024
CASH, CASH EQUIVALENTS AND INVESTMENTS  
CASH, CASH EQUIVALENTS AND INVESTMENTS

NOTE 3 – CASH, CASH EQUIVALENTS AND INVESTMENTS

Cash Equivalents

At October 31, 2024 and January 31, 2024, 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 October 31, 2024 and January 31, 2024 were $0.4 million and $0.7 million, respectively.

Investments

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

    

October 31, 

January 31, 

2024

    

2024

Short-term investments

$

124,490

$

109,489

Available-for-sale securities

206,443

105,884

Total investments

$

330,933

$

215,373

Short-Term Investments

Short-term investments as of October 31, 2024 and January 31, 2024 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. The balances of accrued interest on the CDs at October 31, 2024 and January 31, 2024 were $2.0 million and $4.5 million, respectively. Interest income is recorded when earned and is included in other income, net, in the condensed consolidated statements of earnings. At October 31, 2024 and January 31, 2024, the weighted average annual interest rates of the outstanding CDs were 4.8% and 5.4%, respectively.

Available-For-Sale Securities

The Company’s available-for-sale (“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 October 31, 2024 and January 31, 2024:

October 31, 2024

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due within one year

$

50,323

$

$

161

$

32

$

50,452

Due in one to three years

72,751

488

96

73,143

Due in three to five years

73,274

425

784

72,915

U.S. corporate debt security:

Due in one to three years

10,046

113

9,933

Totals

$

206,394

$

$

1,074

$

1,025

$

206,443

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

$

96,217

$

$

568

$

230

$

96,555

U.S. corporate debt security:

Due in one to three years

9,406

77

9,329

Totals

$

105,623

$

$

568

$

307

$

105,884

As of October 31, 2024 and January 31, 2024, interest receivable in the amounts of $1.3 million were included in the balances of AFS securities. For the three and nine months ended October 31, 2024 and 2023, 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.

The Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of October 31, 2024 and 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 investments before recovery of their corresponding amortized cost bases.

Earnings on Investments

Earnings on investments for the three and nine months ended October 31, 2024 were $4.8 million and $14.0 million, respectively, and they were $4.0 million and $9.7 million for the three and nine months ended October 31, 2023, respectively. Earnings on investments are included in other income, net, in the condensed 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 October 31, 2024 and January 31, 2024, approximately 2% and 12%, respectively, of the Company’s cash and cash equivalents were held by 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 22 R10.htm IDEA: XBRL DOCUMENT v3.24.3
FAIR VALUE MEASUREMENTS
9 Months Ended
Oct. 31, 2024
FAIR VALUE MEASUREMENTS  
FAIR VALUE MEASUREMENTS

NOTE 4 – FAIR VALUE MEASUREMENTS

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

October 31, 2024

January 31, 2024

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Cash equivalents:

Money market fund

$

91,995

$

$

$

126,646

$

$

Available-for-sale securities:

U.S. Treasury notes

196,510

96,555

U.S. corporate debt security

9,933

9,329

Totals

$

91,995

$

206,443

$

$

126,646

$

105,884

$

XML 23 R11.htm IDEA: XBRL DOCUMENT v3.24.3
ACCOUNTS RECEIVABLE
9 Months Ended
Oct. 31, 2024
ACCOUNTS RECEIVABLE  
ACCOUNTS RECEIVABLE

NOTE 5 – ACCOUNTS RECEIVABLE

Accounts receivable include amounts that have been billed and amounts that are billable to customers. As of October 31, 2024, there were billable amounts related to an overseas project in the total amount of $24.1 million, including the expected refund of the letter of credit draw identified in Note 2.

The Company may extend credit to a customer without requiring tangible collateral based on an evaluation of the customer’s financial condition and other factors. Customer payments on other construction, fabrication and field service contracts are generally due within 30 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts and notes receivable is expected to 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 the three and nine months ended October 31, 2024 were $0.2 million and $0.7 million, respectively. The amounts of the provision for credit losses for the three and nine months ended October 31,

2023 were insignificant. The allowance for credit losses at October 31, 2024 and January 31, 2024 was $2.5 million and $1.8 million, respectively.

XML 24 R12.htm IDEA: XBRL DOCUMENT v3.24.3
INTANGIBLE ASSETS
9 Months Ended
Oct. 31, 2024
INTANGIBLE ASSETS  
INTANGIBLE ASSETS

NOTE 6 – INTANGIBLE ASSETS

At both October 31, 2024 and January 31, 2024, the goodwill balances related primarily to the GPS and TRC reporting units, and were $18.5 million and $9.5 million, respectively. Management does not believe that any events or circumstances occurred or arose since January 31, 2024, that required an updated assessment of the goodwill balances of either the GPS or TRC reporting units.

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

October 31, 2024

January 31, 2024

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade name

15 years

$

4,499

$

2,674

$

1,825

$

4,499

$

2,450

$

2,049

Customer relationships

10 years

916

817

99

916

748

168

Totals

$

5,415

$

3,491

$

1,924

$

5,415

$

3,198

$

2,217

The following is a schedule of future amounts of amortization related to purchased intangibles:

    

Amortization

Years Ending January 31,

Expense

2025 (remainder)

    

$

98

2026

 

376

2027

 

300

2028

 

300

2029

300

Thereafter

 

550

Total

$

1,924

XML 25 R13.htm IDEA: XBRL DOCUMENT v3.24.3
FINANCING ARRANGEMENTS
9 Months Ended
Oct. 31, 2024
FINANCING ARRANGEMENTS  
FINANCING ARRANGEMENTS

NOTE 7 – FINANCING ARRANGEMENTS

On May 24, 2024, the Company and the Bank executed the Second Amended and Restated Replacement Credit Agreement with an expiration date of May 31, 2027 (the “New Credit Agreement”). The New Credit Agreement supersedes the now expired credit agreement, as amended, that was executed on May 15, 2017 with an expiration date of May 31, 2024 (the “Expired Credit Agreement”), reduces the base lending commitment amount from $50.0 million to $35.0 million, increases the letter of credit fees to be consistent with current market conditions, and establishes the interest rate for revolving loans at the Secured Overnight Financing Rate (“SOFR”) plus 1.85%. In addition to the base commitment, the new facility includes an accordion feature that allows for an additional commitment amount of $30.0 million, subject to certain conditions, that represents an increase from the $10.0 million accordion provided by the Expired Credit Agreement. The Company may 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 New Credit Agreement. Further, on May 31, 2024, the Company completed the negotiation of a companion facility, in the amount of $25.0 million, pursuant to which APC, the Company’s Irish subsidiary, may cause the Bank’s European entity to issue letters of credit on its behalf that will be secured by a blanket parent company guarantee issued by Argan to the Bank.

At October 31, 2024 and January 31, 2024, the Company did not have any borrowings outstanding under the New Credit Agreement or the Expired Credit Agreement, respectively. At October 31, 2024, there were no outstanding letters of credit issued under the credit facilities.

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 New Credit Agreement requires that the Company comply with certain financial covenants at its fiscal year-end and at each fiscal quarter-end. The New Credit Agreement 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 October 31, 2024, the Company was in compliance with the covenants and other requirements of the New Credit Agreement.

XML 26 R14.htm IDEA: XBRL DOCUMENT v3.24.3
COMMITMENTS
9 Months Ended
Oct. 31, 2024
COMMITMENTS  
COMMITMENTS

NOTE 8 – COMMITMENTS

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 become available and monetary damages or other costs or losses are determined to be probable, the Company would record such losses.

As of October 31, 2024, the estimated amounts of the Company’s unsatisfied bonded performance obligations, covering all of its subsidiaries, was approximately $0.3 billion. As of October 31, 2024, the outstanding amount of bonds covering other risks, including warranty obligations and contract payment retentions related to completed activities, was $22.9 million. Not all of our projects require bonding.

The Company also provided a financial guarantee, subject to certain terms and conditions, up to the amount of $3.6 million in support of business development efforts. An estimated loss related to this guarantee was recorded during the year ended January 31, 2022 (“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 requirements 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 assurance-type warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the condensed consolidated balances sheets. The liability amounts may be periodically adjusted to reflect changes in the estimated size and number of expected warranty claims.

XML 27 R15.htm IDEA: XBRL DOCUMENT v3.24.3
LEGAL CONTINGENCIES
9 Months Ended
Oct. 31, 2024
LEGAL CONTINGENCIES  
LEGAL CONTINGENCIES

NOTE 9 – LEGAL CONTINGENCIES

In the normal course of business, the Company may have pending claims and legal proceedings. The Company maintains accrued expense balances for the estimated amounts of legal costs expected to be billed related to any significant matter. In the opinion of management, based on information available at this time, there were no current claims and proceedings that were expected to have a material adverse effect on the condensed consolidated financial statements as of October 31, 2024.

XML 28 R16.htm IDEA: XBRL DOCUMENT v3.24.3
STOCK-BASED COMPENSATION
9 Months Ended
Oct. 31, 2024
STOCK-BASED COMPENSATION  
STOCK-BASED COMPENSATION

NOTE 10 – STOCK-BASED COMPENSATION

Expense amounts related to stock awards for the three and nine months ended October 31, 2024 were $1.2 million and $3.4 million, respectively, and they were $1.2 million and $3.4 million for the three and nine months ended October 31, 2023, respectively. At October 31, 2024, there was $5.9 million in unrecognized compensation costs related to outstanding stock awards that the Company expects to recognize over the next three years.

Stock Options

A summary of stock option activity for the nine months ended October 31, 2024 is presented below (shares in thousands):

Weighted-

Weighted-

Weighted-

Average

Average

Average Exercise

Remaining

Grant-Date

Price

Contractual

Fair Value

    

Shares

    

Per Share

    

Term (years)

    

Per Share

Outstanding, February 1, 2024

 

1,365

$

44.95

 

4.67

$

10.43

Granted

6

$

61.22

Exercised

(800)

$

44.59

Forfeited

(13)

$

46.72

Outstanding, October 31, 2024

558

$

45.61

 

4.70

$

10.26

Exercisable, October 31, 2024

 

500

$

46.22

4.30

$

10.51

Vested or expected to vest, October 31, 2024

 

558

$

45.61

 

4.70

$

10.26

The changes in the number of non-vested options to purchase shares of common stock for the nine months ended October 31, 2024 is presented below (shares in thousands):

    

Weighted-

Average

Grant-Date

Fair Value

Shares

    

Per Share

Non-vested, February 1, 2024

 

92

$

7.85

Granted

 

6

$

13.89

Vested

 

(33)

$

8.44

Forfeited

(7)

$

7.67

Non-vested, October 31, 2024

 

58

$

8.15

The total intrinsic value amounts related to the stock options exercised during the nine months ended October 31, 2024 and 2023 were $24.1 million and $1.5 million, respectively. As of October 31, 2024, the aggregate intrinsic values of the underlying common stock outstanding and exercisable stock options that were “in-the-money” were $48.2 million and $42.9 million, respectively.

Restricted Stock Units

The Company’s stock awards include total stock return performance-based restricted stock units (“PRSUs”), earnings per share performance-based restricted stock units (“EPRSUs”), renewable energy performance-based restricted stock units (“RRSUs”), and time-based restricted stock units (“TRSUs”). During the nine months ended October 31, 2024, the Company awarded PRSUs covering a target of 5,000 shares of common stock, EPRSUs covering a target of 10,000 shares of common stock, RRSUs covering a target of 5,000 shares of common stock and TRSUs covering 42,050 shares of common stock. The Company issued 3,988 shares of common stock based on the amount of cash dividends deemed paid on shares that were earned pursuant to the awards that were settled during the period. The number of shares of common stock to be issued under certain awards may exceed the number of target shares if certain performance goals are exceeded.

The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for the nine months ended October 31, 2024, are presented below (shares in thousands):

    

    

Weighted-

Average

Grant-Date

Fair Value

Shares

Per Share

Outstanding, February 1, 2024

 

348

$

30.21

Granted

 

81

$

43.82

Issued

(70)

$

42.58

Forfeited

(64)

$

27.04

Outstanding, October 31, 2024

 

295

$

31.69

Shares Withheld and Treasury Stock

For the nine months ended October 31, 2024, the Company accepted 532,860 shares of common stock at the average price per share of $73.92 for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements. For the nine months ended October 31, 2023, the Company accepted 29,058 shares of common stock at the average price per share of $47.16 for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements. For the nine months ended October 31, 2024 and 2023, the Company used 337,884 shares and 132,656 shares of treasury stock, respectively, to settle stock option exercises and other share-based awards.

XML 29 R17.htm IDEA: XBRL DOCUMENT v3.24.3
INCOME TAXES
9 Months Ended
Oct. 31, 2024
INCOME TAXES  
INCOME TAXES

NOTE 11 – INCOME TAXES

The Company’s income tax amounts for the nine months ended October 31, 2024 and 2023 differed from corresponding amounts computed by applying the federal corporate income tax rate of 21% to the income before income taxes for the periods as presented below:

    

Nine Months Ended October 31, 

    

2024

    

2023

Computed expected income tax expense

$

15,240

$

6,711

Difference resulting from:

State income taxes, net of federal tax effect

 

2,297

 

2,023

Unrecognized tax loss benefit

921

3,255

Executive compensation limitation

917

672

Meals and entertainment expense

616

385

Foreign tax rate differential

(556)

(1,699)

Other permanent differences and adjustments, net

(953)

269

Income tax expense

$

18,482

$

11,616

Net Operating Loss (“NOL”) Carryback

As a result of the tax changes enacted by the Coronavirus, Aid, Relief and Economic Security Act signed into law in March 2020 (the “CARES Act”), the Company made a filing during the year ended January 31, 2021 with the Internal Revenue Service (the “IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 (“Fiscal 2016”) and 2015 (“Fiscal 2015”) in the total amount of approximately $12.7 million. At the instruction of the IRS, the Company filed amended income tax returns for Fiscal 2016 and Fiscal 2015 during Fiscal 2024; the IRS has not completed the examination and approval process for the Company’s amended tax returns and refund request.

Research and Development Tax Credits

During the year ended January 31, 2023 (“Fiscal 2023”), the Company filed amended federal income tax returns for Fiscal 2022 and for the year ended January 31, 2021 (“Fiscal 2021”) that included 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. In May 2023, the Company received notification that these amended federal income tax returns were selected for

examination. At October 31, 2024, the examination was progressing through the stages of documentation requests and review.

Income Tax Refunds

As of October 31, 2024 and January 31, 2024, the balances of other current assets in the condensed consolidated balance sheet included income tax refunds receivable, related accrued interest, and prepaid income taxes in the total amounts of approximately $18.9 million and $18.3 million, respectively. The income tax refunds included the amounts expected to be received from the IRS upon its examination 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.

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 significant judgments to apply. 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 the nine months ended October 31, 2024, the Company made investments of approximately $3.3 million in STC investments that were committed as of January 31, 2024. As of October 31, 2024, the Company had no remaining cash investment commitments related to its STC investments.

At October 31, 2024 and January 31, 2024, the investment accounts balances were $1.2 million and $2.1 million, respectively, which are included in right-of-use and other assets in the condensed consolidated balance sheets.

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 condensed consolidated statement of earnings. For the nine months ended October 31, 2024, the Company recorded $0.7 million of investment amortization related to the STC investment that qualifies for PAM. For the three months ended October 31, 2024, the recorded amount of amortization related to this investment was not material. The amounts of non-income tax-related activity and other returns related to this investment were not material for the three and nine months ended October 31, 2024. During the nine months ended October 31, 2023, the Company did not have any STC investments that qualified for PAM.

For the Company’s STC investments that do not qualify for PAM, the Company accounts for the investments using the equity method of accounting and includes income and losses related to the investment in other income in the Company’s condensed consolidated statements of earnings. For the three and nine months ended October 31, 2024 and 2023, the Company’s shares of activity from these STC investments were not material.

XML 30 R18.htm IDEA: XBRL DOCUMENT v3.24.3
EARNINGS PER SHARE
9 Months Ended
Oct. 31, 2024
EARNINGS PER SHARE  
EARNINGS PER SHARE

NOTE 12 – EARNINGS PER SHARE

Potentially dilutive securities include stock options and restricted stock units. Diluted earnings per share includes only securities that are actually dilutive. Basic and diluted earnings per share are computed as follows (shares in thousands):

Three Months Ended October 31, 

Nine Months Ended October 31, 

    

2024

    

2023

2024

    

2023

Net income

$

28,010

$

5,464

$

54,090

$

20,340

Weighted average shares outstanding – basic

13,530

13,328

13,398

13,381

Effect of stock awards

504

231

432

168

Weighted average shares outstanding – diluted

14,034

13,559

13,830

13,549

Net income per share

Basic

$

2.07

$

0.41

$

4.04

$

1.52

Diluted

$

2.00

$

0.40

$

3.91

$

1.50

Anti-dilutive securities not included

690

140

881

XML 31 R19.htm IDEA: XBRL DOCUMENT v3.24.3
CUSTOMER CONCENTRATIONS
9 Months Ended
Oct. 31, 2024
CUSTOMER CONCENTRATIONS  
CUSTOMER CONCENTRATIONS

NOTE 14 – CUSTOMER CONCENTRATIONS

The majority of the Company’s consolidated revenues relate to performance by the power industry services segment. The following schedule presents the percentage of consolidated revenues for each reportable business segment for the three and nine months ended October 31, 2024:

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

Power industry services

82.5

%

74.1

%

77.3

%

72.6

%

Industrial construction services

 

16.1

 

23.5

 

21.0

 

24.8

Telecommunications infrastructure services

 

1.4

 

2.4

 

1.7

 

2.6

The Company’s most significant customer relationships for the three months ended October 31, 2024 included four power industry services customers, which accounted for 29%, 15%, 13% and 11% of consolidated revenues. The Company’s most significant customer relationships for the three months ended October 31, 2023 included three power industry services customers, which accounted for 23%, 20% and 17% of consolidated revenues. The Company’s most significant customer relationships for the nine months ended October 31, 2024 included two power industry services customers, which accounted for 28% and 12% of consolidated revenues. The Company’s most significant customer relationships for the nine months ended October 31, 2023 included three power industry services customers, which accounted for 19%, 17% and 14% of consolidated revenues. 

The accounts receivable balances from four major customers represented 18%, 18%, 17% and 12% of the corresponding consolidated balance as of October 31, 2024. Accounts receivable balances from three major customers represented 16%, 14% and 14% of the corresponding consolidated balance as of January 31, 2024.

The contract asset balances associated with four major customers represented 17%, 17%, 14% and 14% of the corresponding consolidated balance as of October 31, 2024. The contract asset balances associated with two major customers represented 39% and 32% of the corresponding consolidated balance as of January 31, 2024.

XML 32 R20.htm IDEA: XBRL DOCUMENT v3.24.3
SEGMENT REPORTING
9 Months Ended
Oct. 31, 2024
SEGMENT REPORTING  
SEGMENT REPORTING

NOTE 15 – 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 CODM, 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 the three and nine months ended October 31, 2024, intersegment revenues were $3.5 million and $4.8 million, respectively. For the three and nine months ended October 31, 2023, intersegment revenues were not material.

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

Three Months Ended

Power

Industrial

Telecom

October 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

212,096

$

41,337

$

3,575

$

$

257,008

Cost of revenues

 

173,283

 

36,757

 

2,641

 

 

212,681

Gross profit

 

38,813

 

4,580

 

934

 

 

44,327

Selling, general and administrative expenses

8,466

1,848

705

2,976

13,995

Income (loss) from operations

30,347

2,732

229

(2,976)

30,332

Other income (loss), net

 

5,618

 

1

 

(1)

 

1,028

 

6,646

Income (loss) before income taxes

$

35,965

$

2,733

$

228

$

(1,948)

 

36,978

Income tax expense

 

8,968

Net income

$

28,010

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

158

166

109

433

Property, plant and equipment additions

2,304

236

5

2

2,547

Current assets

$

542,558

$

50,294

$

4,236

$

120,053

$

717,141

Current liabilities

411,735

20,663

2,131

1,635

436,164

Goodwill

18,476

9,467

90

28,033

Total assets

572,828

67,172

6,673

122,191

768,864

Three Months Ended

Power

Industrial

Telecom

October 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

121,300

$

38,434

$

4,021

$

$

163,755

Cost of revenues

 

107,781

 

33,899

 

2,840

 

 

144,520

Gross profit

 

13,519

 

4,535

 

1,181

 

 

19,235

Selling, general and administrative expenses

 

6,390

1,626

608

2,751

 

11,375

Income (loss) from operations

7,129

2,909

573

(2,751)

7,860

Other income, net

 

3,391

 

 

 

342

 

3,733

Income (loss) before income taxes

$

10,520

$

2,909

$

573

$

(2,409)

 

11,593

Income tax expense

 

6,129

Net income

$

5,464

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

137

249

102

1

489

Property, plant and equipment additions

583

497

31

1

1,112

Current assets

$

399,489

$

39,843

$

3,701

$

71,038

$

514,071

Current liabilities

244,662

25,839

1,801

1,592

273,894

Goodwill

18,476

9,467

90

28,033

Total assets

426,466

57,112

6,519

73,555

563,652

Nine Months Ended

Power

Industrial

Telecom

October 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

496,122

$

134,678

$

10,905

$

$

641,705

Cost of revenues

 

422,508

 

117,836

 

7,985

 

 

548,329

Gross profit

 

73,614

 

16,842

 

2,920

 

 

93,376

Selling, general and administrative expenses

 

21,786

5,686

1,984

8,392

37,848

Income (loss) from operations

51,828

11,156

936

(8,392)

55,528

Other income, net

 

14,386

 

2

 

2

 

2,654

 

17,044

Income (loss) before income taxes

$

66,214

$

11,158

$

938

$

(5,738)

 

72,572

Income tax expense

 

18,482

Net income

$

54,090

Amortization of intangibles

$

$

293

$

$

$

293

Depreciation

443

621

310

2

1,376

Property, plant and equipment additions

4,523

509

184

2

5,218

Nine Months Ended

Power

Industrial

Telecom

October 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

296,821

$

101,497

$

10,461

$

$

408,779

Cost of revenues

 

255,210

 

88,537

 

7,831

 

 

351,578

Gross profit

 

41,611

 

12,960

 

2,630

 

 

57,201

Selling, general and administrative expenses

 

17,700

4,532

2,038

8,197

32,467

Income (loss) from operations

23,911

8,428

592

(8,197)

24,734

Other income (loss), net

 

9,088

 

 

(3)

 

(1,863)

 

7,222

Income (loss) before income taxes

$

32,999

$

8,428

$

589

$

(10,060)

 

31,956

Income tax expense

 

11,616

Net income

$

20,340

Amortization of intangibles

$

$

294

$

$

$

294

Depreciation

393

813

315

3

1,524

Property, plant and equipment additions

1,120

973

49

1

2,143

XML 33 R21.htm IDEA: XBRL DOCUMENT v3.24.3
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION
9 Months Ended
Oct. 31, 2024
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION  
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

NOTE 16 — SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

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

    

October 31, 

January 31, 

2024

    

2024

Income tax refunds receivable and prepaid income taxes

$

18,926

$

18,267

Raw materials inventory

3,438

9,985

Prepaid expenses

 

6,557

 

6,035

Other

5,658

4,972

Total other current assets

$

34,579

$

39,259

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

    

October 31, 

January 31, 

2024

    

2024

Accrued project costs

$

39,902

$

49,135

Accrued compensation

23,139

21,206

Lease liabilities

2,648

2,726

Other

12,704

8,654

Total accrued expenses

$

78,393

$

81,721

XML 34 R22.htm IDEA: XBRL DOCUMENT v3.24.3
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
Pay vs Performance Disclosure        
Net Income (Loss) $ 28,010 $ 5,464 $ 54,090 $ 20,340
XML 35 R23.htm IDEA: XBRL DOCUMENT v3.24.3
Insider Trading Arrangements
3 Months Ended
Oct. 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
XML 36 R24.htm IDEA: XBRL DOCUMENT v3.24.3
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies)
9 Months Ended
Oct. 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 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 on-site 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 condensed consolidated financial statements include the accounts of Argan and its wholly-owned subsidiaries. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 15, 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.

The Company’s fiscal year ends on January 31 each year. The condensed consolidated balance sheet as of October 31, 2024, the condensed consolidated statements of earnings and stockholders’ equity for the three and nine months ended October 31, 2024 and 2023, and the condensed consolidated statements of cash flows for the nine months ended October 31, 2024 and 2023 are unaudited. The condensed consolidated balance sheet as of January 31, 2024 has been derived from audited consolidated financial statements. These condensed consolidated financial statements have been prepared pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (the “SEC”). Certain information and note disclosures normally included in annual financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations, although the Company believes that the disclosures made are adequate to make the information not misleading. The accompanying condensed consolidated financial statements and notes should be read in conjunction with the consolidated financial statements, the notes thereto, and the independent registered public accounting firm’s report thereon, that are included in the Company’s Annual Report on Form 10-K for the fiscal year ended January 31, 2024 (“Fiscal 2024”).

In the opinion of management, the accompanying condensed consolidated financial statements contain all adjustments, which are of a normal and recurring nature, considered necessary for a fair statement of the financial position of the Company as of October 31, 2024, and its earnings and cash flows for the interim periods presented. The results of operations for any interim period are not necessarily indicative of the results of operations for any other interim period or for a full fiscal year.

Recently Issued Accounting Pronouncements

Recently Issued Accounting Pronouncements

In November 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, by 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 plans to adopt the provisions of ASU 2023-07 as of January 31, 2025. The Company does not expect the adoption of this ASU to have an impact on its financial position, results of operations or cash flows.

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.

In November 2024, the FASB issued ASU 2024-03, Income Statement—Reporting Comprehensive Income—Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses, which requires public business entities to disclose specific information about certain costs and expenses. The amendments in this update are effective for fiscal years beginning after December 15, 2026, and interim periods within fiscal years beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating the effects, if any, that the adoption of ASU 2024-03 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 condensed consolidated financial statements.

XML 37 R25.htm IDEA: XBRL DOCUMENT v3.24.3
REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)
9 Months Ended
Oct. 31, 2024
REVENUES FROM CONTRACTS WITH CUSTOMERS  
Schedule of consolidated revenues disaggregated by geographical area

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

United States

$

239,489

$

92,066

$

559,069

$

239,866

Republic of Ireland

 

16,981

 

68,359

 

74,039

 

139,014

United Kingdom

 

538

 

3,330

 

8,597

 

29,899

Consolidated Revenues

$

257,008

$

163,755

$

641,705

$

408,779

Schedule of revenues recognized contract liabilities

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

Revenues recognized from contract liabilities

$

132,068

$

53,783

$

175,630

$

94,198

XML 38 R26.htm IDEA: XBRL DOCUMENT v3.24.3
CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)
9 Months Ended
Oct. 31, 2024
CASH, CASH EQUIVALENTS AND INVESTMENTS  
Investments

    

October 31, 

January 31, 

2024

    

2024

Short-term investments

$

124,490

$

109,489

Available-for-sale securities

206,443

105,884

Total investments

$

330,933

$

215,373

Schedule of available-for-sale securities

October 31, 2024

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due within one year

$

50,323

$

$

161

$

32

$

50,452

Due in one to three years

72,751

488

96

73,143

Due in three to five years

73,274

425

784

72,915

U.S. corporate debt security:

Due in one to three years

10,046

113

9,933

Totals

$

206,394

$

$

1,074

$

1,025

$

206,443

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

$

96,217

$

$

568

$

230

$

96,555

U.S. corporate debt security:

Due in one to three years

9,406

77

9,329

Totals

$

105,623

$

$

568

$

307

$

105,884

XML 39 R27.htm IDEA: XBRL DOCUMENT v3.24.3
FAIR VALUE MEASUREMENTS (Tables)
9 Months Ended
Oct. 31, 2024
FAIR VALUE MEASUREMENTS  
Schedule of financial instruments recorded at fair value on a recurring basis

October 31, 2024

January 31, 2024

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Cash equivalents:

Money market fund

$

91,995

$

$

$

126,646

$

$

Available-for-sale securities:

U.S. Treasury notes

196,510

96,555

U.S. corporate debt security

9,933

9,329

Totals

$

91,995

$

206,443

$

$

126,646

$

105,884

$

XML 40 R28.htm IDEA: XBRL DOCUMENT v3.24.3
INTANGIBLE ASSETS (Tables)
9 Months Ended
Oct. 31, 2024
INTANGIBLE ASSETS  
Schedule of company's purchased intangible assets, other than goodwill

October 31, 2024

January 31, 2024

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade name

15 years

$

4,499

$

2,674

$

1,825

$

4,499

$

2,450

$

2,049

Customer relationships

10 years

916

817

99

916

748

168

Totals

$

5,415

$

3,491

$

1,924

$

5,415

$

3,198

$

2,217

Schedule of expected amortization expense

    

Amortization

Years Ending January 31,

Expense

2025 (remainder)

    

$

98

2026

 

376

2027

 

300

2028

 

300

2029

300

Thereafter

 

550

Total

$

1,924

XML 41 R29.htm IDEA: XBRL DOCUMENT v3.24.3
STOCK-BASED COMPENSATION (Tables)
9 Months Ended
Oct. 31, 2024
STOCK-BASED COMPENSATION  
Schedule of stock option activity under the Company's stock plans

A summary of stock option activity for the nine months ended October 31, 2024 is presented below (shares in thousands):

Weighted-

Weighted-

Weighted-

Average

Average

Average Exercise

Remaining

Grant-Date

Price

Contractual

Fair Value

    

Shares

    

Per Share

    

Term (years)

    

Per Share

Outstanding, February 1, 2024

 

1,365

$

44.95

 

4.67

$

10.43

Granted

6

$

61.22

Exercised

(800)

$

44.59

Forfeited

(13)

$

46.72

Outstanding, October 31, 2024

558

$

45.61

 

4.70

$

10.26

Exercisable, October 31, 2024

 

500

$

46.22

4.30

$

10.51

Vested or expected to vest, October 31, 2024

 

558

$

45.61

 

4.70

$

10.26

Schedule of changes in the number of non-vested options to purchase shares of common stock

The changes in the number of non-vested options to purchase shares of common stock for the nine months ended October 31, 2024 is presented below (shares in thousands):

    

Weighted-

Average

Grant-Date

Fair Value

Shares

    

Per Share

Non-vested, February 1, 2024

 

92

$

7.85

Granted

 

6

$

13.89

Vested

 

(33)

$

8.44

Forfeited

(7)

$

7.67

Non-vested, October 31, 2024

 

58

$

8.15

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 the nine months ended October 31, 2024, are presented below (shares in thousands):

    

    

Weighted-

Average

Grant-Date

Fair Value

Shares

Per Share

Outstanding, February 1, 2024

 

348

$

30.21

Granted

 

81

$

43.82

Issued

(70)

$

42.58

Forfeited

(64)

$

27.04

Outstanding, October 31, 2024

 

295

$

31.69

XML 42 R30.htm IDEA: XBRL DOCUMENT v3.24.3
INCOME TAXES (Tables)
9 Months Ended
Oct. 31, 2024
INCOME TAXES  
Schedule of actual income tax expense amounts

    

Nine Months Ended October 31, 

    

2024

    

2023

Computed expected income tax expense

$

15,240

$

6,711

Difference resulting from:

State income taxes, net of federal tax effect

 

2,297

 

2,023

Unrecognized tax loss benefit

921

3,255

Executive compensation limitation

917

672

Meals and entertainment expense

616

385

Foreign tax rate differential

(556)

(1,699)

Other permanent differences and adjustments, net

(953)

269

Income tax expense

$

18,482

$

11,616

XML 43 R31.htm IDEA: XBRL DOCUMENT v3.24.3
EARNINGS PER SHARE (Tables)
9 Months Ended
Oct. 31, 2024
EARNINGS PER SHARE  
Schedule of basic and diluted earnings per share Basic and diluted earnings per share are computed as follows (shares in thousands)

Three Months Ended October 31, 

Nine Months Ended October 31, 

    

2024

    

2023

2024

    

2023

Net income

$

28,010

$

5,464

$

54,090

$

20,340

Weighted average shares outstanding – basic

13,530

13,328

13,398

13,381

Effect of stock awards

504

231

432

168

Weighted average shares outstanding – diluted

14,034

13,559

13,830

13,549

Net income per share

Basic

$

2.07

$

0.41

$

4.04

$

1.52

Diluted

$

2.00

$

0.40

$

3.91

$

1.50

Anti-dilutive securities not included

690

140

881

XML 44 R32.htm IDEA: XBRL DOCUMENT v3.24.3
STOCKHOLDERS' EQUITY (Tables)
9 Months Ended
Oct. 31, 2024
STOCKHOLDERS' EQUITY  
Schedule of dividends paid During Fiscal 2025 and Fiscal 2024, the Company paid dividends to stockholders as follows:

Amount Per

Record Date

    

Payment Date

    

Share

October 23, 2024

October 31, 2024

$

0.375

July 23, 2024

July 31, 2024

0.300

April 22, 2024

April 30, 2024

0.300

January 23, 2024

January 31, 2024

0.300

October 23, 2023

October 31, 2023

0.300

July 21, 2023

July 31, 2023

0.250

April 20, 2023

April 28, 2023

0.250

XML 45 R33.htm IDEA: XBRL DOCUMENT v3.24.3
CUSTOMER CONCENTRATIONS (Tables)
9 Months Ended
Oct. 31, 2024
CUSTOMER CONCENTRATIONS  
schedule of the percentage of consolidated revenues

    

Three Months Ended October 31, 

    

Nine Months Ended October 31, 

2024

    

2023

2024

    

2023

Power industry services

82.5

%

74.1

%

77.3

%

72.6

%

Industrial construction services

 

16.1

 

23.5

 

21.0

 

24.8

Telecommunications infrastructure services

 

1.4

 

2.4

 

1.7

 

2.6

XML 46 R34.htm IDEA: XBRL DOCUMENT v3.24.3
SEGMENT REPORTING (Tables)
9 Months Ended
Oct. 31, 2024
SEGMENT REPORTING  
Schedule of operating results and financial position data of the Company's reportable business segments

Three Months Ended

Power

Industrial

Telecom

October 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

212,096

$

41,337

$

3,575

$

$

257,008

Cost of revenues

 

173,283

 

36,757

 

2,641

 

 

212,681

Gross profit

 

38,813

 

4,580

 

934

 

 

44,327

Selling, general and administrative expenses

8,466

1,848

705

2,976

13,995

Income (loss) from operations

30,347

2,732

229

(2,976)

30,332

Other income (loss), net

 

5,618

 

1

 

(1)

 

1,028

 

6,646

Income (loss) before income taxes

$

35,965

$

2,733

$

228

$

(1,948)

 

36,978

Income tax expense

 

8,968

Net income

$

28,010

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

158

166

109

433

Property, plant and equipment additions

2,304

236

5

2

2,547

Current assets

$

542,558

$

50,294

$

4,236

$

120,053

$

717,141

Current liabilities

411,735

20,663

2,131

1,635

436,164

Goodwill

18,476

9,467

90

28,033

Total assets

572,828

67,172

6,673

122,191

768,864

Three Months Ended

Power

Industrial

Telecom

October 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

121,300

$

38,434

$

4,021

$

$

163,755

Cost of revenues

 

107,781

 

33,899

 

2,840

 

 

144,520

Gross profit

 

13,519

 

4,535

 

1,181

 

 

19,235

Selling, general and administrative expenses

 

6,390

1,626

608

2,751

 

11,375

Income (loss) from operations

7,129

2,909

573

(2,751)

7,860

Other income, net

 

3,391

 

 

 

342

 

3,733

Income (loss) before income taxes

$

10,520

$

2,909

$

573

$

(2,409)

 

11,593

Income tax expense

 

6,129

Net income

$

5,464

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

137

249

102

1

489

Property, plant and equipment additions

583

497

31

1

1,112

Current assets

$

399,489

$

39,843

$

3,701

$

71,038

$

514,071

Current liabilities

244,662

25,839

1,801

1,592

273,894

Goodwill

18,476

9,467

90

28,033

Total assets

426,466

57,112

6,519

73,555

563,652

Nine Months Ended

Power

Industrial

Telecom

October 31, 2024

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

496,122

$

134,678

$

10,905

$

$

641,705

Cost of revenues

 

422,508

 

117,836

 

7,985

 

 

548,329

Gross profit

 

73,614

 

16,842

 

2,920

 

 

93,376

Selling, general and administrative expenses

 

21,786

5,686

1,984

8,392

37,848

Income (loss) from operations

51,828

11,156

936

(8,392)

55,528

Other income, net

 

14,386

 

2

 

2

 

2,654

 

17,044

Income (loss) before income taxes

$

66,214

$

11,158

$

938

$

(5,738)

 

72,572

Income tax expense

 

18,482

Net income

$

54,090

Amortization of intangibles

$

$

293

$

$

$

293

Depreciation

443

621

310

2

1,376

Property, plant and equipment additions

4,523

509

184

2

5,218

Nine Months Ended

Power

Industrial

Telecom

October 31, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

296,821

$

101,497

$

10,461

$

$

408,779

Cost of revenues

 

255,210

 

88,537

 

7,831

 

 

351,578

Gross profit

 

41,611

 

12,960

 

2,630

 

 

57,201

Selling, general and administrative expenses

 

17,700

4,532

2,038

8,197

32,467

Income (loss) from operations

23,911

8,428

592

(8,197)

24,734

Other income (loss), net

 

9,088

 

 

(3)

 

(1,863)

 

7,222

Income (loss) before income taxes

$

32,999

$

8,428

$

589

$

(10,060)

 

31,956

Income tax expense

 

11,616

Net income

$

20,340

Amortization of intangibles

$

$

294

$

$

$

294

Depreciation

393

813

315

3

1,524

Property, plant and equipment additions

1,120

973

49

1

2,143

XML 47 R35.htm IDEA: XBRL DOCUMENT v3.24.3
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)
9 Months Ended
Oct. 31, 2024
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION  
Schedule of other current assets

    

October 31, 

January 31, 

2024

    

2024

Income tax refunds receivable and prepaid income taxes

$

18,926

$

18,267

Raw materials inventory

3,438

9,985

Prepaid expenses

 

6,557

 

6,035

Other

5,658

4,972

Total other current assets

$

34,579

$

39,259

Schedule of accrued expenses

    

October 31, 

January 31, 

2024

    

2024

Accrued project costs

$

39,902

$

49,135

Accrued compensation

23,139

21,206

Lease liabilities

2,648

2,726

Other

12,704

8,654

Total accrued expenses

$

78,393

$

81,721

XML 48 R36.htm IDEA: XBRL DOCUMENT v3.24.3
REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
Disaggregation of Revenues        
Consolidated Revenues $ 257,008 $ 163,755 $ 641,705 $ 408,779
United States        
Disaggregation of Revenues        
Consolidated Revenues 239,489 92,066 559,069 239,866
Republic of Ireland        
Disaggregation of Revenues        
Consolidated Revenues 16,981 68,359 74,039 139,014
United Kingdom        
Disaggregation of Revenues        
Consolidated Revenues $ 538 $ 3,330 $ 8,597 $ 29,899
XML 49 R37.htm IDEA: XBRL DOCUMENT v3.24.3
REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Termination (Details) - Atlantic Projects Company Limited - USD ($)
$ in Millions
9 Months Ended 21 Months Ended
May 04, 2024
Oct. 31, 2024
Oct. 31, 2024
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction      
Amounts drawn against this letter of credit $ 9.2    
Kilroot Project      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction      
Estimated loss     $ 12.6
Estimated loss, including reversal of net gross profit   $ 2.6  
Termination period   14 days  
XML 50 R38.htm IDEA: XBRL DOCUMENT v3.24.3
REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Assets and Liabilities (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
Jan. 31, 2024
REVENUES FROM CONTRACTS WITH CUSTOMERS          
Revenues recognized from contract liabilities $ 132,068 $ 53,783 $ 175,630 $ 94,198  
Retained amounts by project owners $ 19,600   $ 19,600   $ 21,200
XML 51 R39.htm IDEA: XBRL DOCUMENT v3.24.3
REVENUES FROM CONTRACTS WITH CUSTOMERS - Variable Consideration (Details) - USD ($)
$ in Millions
Oct. 31, 2024
Jan. 31, 2024
REVENUES FROM CONTRACTS WITH CUSTOMERS    
Amounts of unpriced change orders included in transaction prices 9.9 8.4
XML 52 R40.htm IDEA: XBRL DOCUMENT v3.24.3
REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details) - Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-11-01
$ in Billions
Oct. 31, 2024
USD ($)
REVENUES FROM CONTRACTS WITH CUSTOMERS  
Contract backlog amount $ 0.8
Performance period 3 years
Contract backlog (as percent) 26.00%
Minimum  
REVENUES FROM CONTRACTS WITH CUSTOMERS  
Performance period 1 year
Maximum  
REVENUES FROM CONTRACTS WITH CUSTOMERS  
Performance period 3 years
XML 53 R41.htm IDEA: XBRL DOCUMENT v3.24.3
CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) - USD ($)
$ in Millions
9 Months Ended 12 Months Ended
Oct. 31, 2024
Jan. 31, 2024
Cash and Cash Equivalents    
Accrued dividends $ 0.4 $ 0.7
Held-to-maturity Securities    
Cash and Cash Equivalents    
Maturity period 1 year 1 year
Accrued interest $ 2.0 $ 4.5
Weighted average annual interest rates of CDs (as a percent) 4.80% 5.40%
XML 54 R42.htm IDEA: XBRL DOCUMENT v3.24.3
CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details) - USD ($)
$ in Thousands
Oct. 31, 2024
Jan. 31, 2024
CASH, CASH EQUIVALENTS AND INVESTMENTS    
Short-term investments $ 124,490 $ 109,489
Available-for-sale securities 206,443 105,884
Total investments $ 330,933 $ 215,373
XML 55 R43.htm IDEA: XBRL DOCUMENT v3.24.3
CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
Jan. 31, 2024
Cash and Cash Equivalents          
Interest receivable $ 1,300   $ 1,300   $ 1,300
Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current, Statement of Financial Position [Extensible Enumeration] Investments   Investments   Investments
Proceeds from sale of debt securities, available-for-sale $ 0 $ 0 $ 0 $ 0  
Amounts of gains or losses reclassified out of other comprehensive income 0 $ 0 0 $ 0  
Available-for-sale securities          
Amortized Cost 206,394   206,394   $ 105,623
Gross Unrealized Gains 1,074   1,074   568
Gross Unrealized Losses 1,025   1,025   307
Fair Value 206,443   206,443   105,884
US Treasury notes          
Available-for-sale securities          
Amortized cost, Due within one year 50,323   50,323    
Amortized cost, Due in one to three years 72,751   72,751   96,217
Amortized Cost, Due in three to five years 73,274   73,274    
Gross Unrealized Gains, Due within one year 161   161    
Gross Unrealized Gains, Due in one to three years 488   488   568
Gross Unrealized Gains, Due in three to five years 425   425    
Gross Unrealized Losses, Due within one year 32   32    
Gross Unrealized Losses, Due in one to three years 96   96   230
Gross Unrealized Losses, Due in three to five years 784   784    
Fair Value, Due in within one year 50,452   50,452    
Fair Value, Due in one to three years 73,143   73,143   96,555
Fair Value, Due in three to five years 72,915   72,915    
U.S. corporate debt security          
Available-for-sale securities          
Amortized cost, Due in one to three years 10,046   10,046   9,406
Gross Unrealized Losses, Due in one to three years 113   113   77
Fair Value, Due in one to three years $ 9,933   $ 9,933   $ 9,329
XML 56 R44.htm IDEA: XBRL DOCUMENT v3.24.3
CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Investments (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
CASH, CASH EQUIVALENTS AND INVESTMENTS        
Earnings on investments $ 4.8 $ 4.0 $ 14.0 $ 9.7
XML 57 R45.htm IDEA: XBRL DOCUMENT v3.24.3
FAIR VALUE MEASUREMENTS - Financial Instruments on a Recurring Basis (Details) - USD ($)
$ in Thousands
Oct. 31, 2024
Jan. 31, 2024
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Available-for-sale securities $ 206,443 $ 105,884
Level 1 Inputs | Fair value, recurring    
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Totals 91,995 126,646
Level 1 Inputs | Fair value, recurring | Money market funds    
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Cash equivalents 91,995 126,646
Level 2 Inputs | Fair value, recurring    
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Totals 206,443 105,884
Level 2 Inputs | Fair value, recurring | U.S. Treasury notes    
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Available-for-sale securities 196,510 96,555
Level 2 Inputs | Fair value, recurring | U.S. corporate debt security    
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Available-for-sale securities $ 9,933 $ 9,329
XML 58 R46.htm IDEA: XBRL DOCUMENT v3.24.3
ACCOUNTS RECEIVABLE (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2024
Oct. 31, 2024
Jan. 31, 2024
ACCOUNTS AND NOTES RECEIVABLE        
Provision for credit losses   $ 0.2 $ 0.7  
Allowance for uncollectible accounts $ 2.5 $ 2.5 $ 2.5 $ 1.8
Overseas Project        
ACCOUNTS AND NOTES RECEIVABLE        
Billable amounts $ 24.1      
XML 59 R47.htm IDEA: XBRL DOCUMENT v3.24.3
INTANGIBLE ASSETS - Additional Information (Details) - USD ($)
$ in Thousands
Oct. 31, 2024
Jan. 31, 2024
Oct. 31, 2023
Indefinite-Lived Intangible Assets      
Goodwill $ 28,033 $ 28,033 $ 28,033
GPS.      
Indefinite-Lived Intangible Assets      
Goodwill 18,500 9,500  
TRC.      
Indefinite-Lived Intangible Assets      
Goodwill $ 18,500 $ 9,500  
XML 60 R48.htm IDEA: XBRL DOCUMENT v3.24.3
INTANGIBLE ASSETS - Components of Intangible Assets (Details) - USD ($)
$ in Thousands
Oct. 31, 2024
Jan. 31, 2024
Finite-Lived Intangible Assets [Line Items]    
Gross Amounts $ 5,415 $ 5,415
Accumulated Amortization 3,491 3,198
Net Amounts $ 1,924 2,217
Trade name    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life (in years) 15 years  
Gross Amounts $ 4,499 4,499
Accumulated Amortization 2,674 2,450
Net Amounts $ 1,825 2,049
Customer relationships    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life (in years) 10 years  
Gross Amounts $ 916 916
Accumulated Amortization 817 748
Net Amounts $ 99 $ 168
XML 61 R49.htm IDEA: XBRL DOCUMENT v3.24.3
INTANGIBLE ASSETS - Finite Lived Intangible Future Amortization Schedule (Details) - USD ($)
$ in Thousands
Oct. 31, 2024
Jan. 31, 2024
INTANGIBLE ASSETS    
2025 (remainder) $ 98  
2026 376  
2027 300  
2028 300  
2029 300  
Thereafter 550  
Net Amounts $ 1,924 $ 2,217
XML 62 R50.htm IDEA: XBRL DOCUMENT v3.24.3
FINANCING ARRANGEMENTS (Details) - Revolving Credit Facility - USD ($)
$ in Millions
May 24, 2024
May 15, 2017
Oct. 31, 2024
May 31, 2024
Financing Arrangements        
Borrowing available under financing arrangements       $ 25.0
Letters of credit outstanding amount     $ 0.0  
Expires on May 31, 2024        
Financing Arrangements        
Borrowing available under financing arrangements   $ 50.0    
Additional commitment amount   $ 10.0    
Expires on May 31, 2027        
Financing Arrangements        
Borrowing available under financing arrangements $ 35.0      
Interest rate margin on referred rate 1.85%      
Debt Instrument, Variable Interest Rate, Type [Extensible Enumeration] us-gaap:SecuredOvernightFinancingRateSofrMember      
Additional commitment amount $ 30.0      
XML 63 R51.htm IDEA: XBRL DOCUMENT v3.24.3
COMMITMENTS - Performance Bonds and Guarantees (Details)
$ in Millions
Oct. 31, 2024
USD ($)
Unsatisfied bonded performance obligations $ 300.0
Outstanding amount of bonds covering other risks including warranty obligations 22.9
GPS | Financial guarantee  
Guarantor obligation maximum exposure $ 3.6
XML 64 R52.htm IDEA: XBRL DOCUMENT v3.24.3
COMMITMENTS - Warranties (Details)
9 Months Ended
Oct. 31, 2024
Minimum  
Warranty period P9M
Maximum  
Warranty period P24M
XML 65 R53.htm IDEA: XBRL DOCUMENT v3.24.3
STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details) - $ / shares
shares in Thousands
9 Months Ended 12 Months Ended
Oct. 31, 2024
Jan. 31, 2024
STOCK-BASED COMPENSATION    
Shares, Outstanding, Beginning balance 1,365  
Shares, Granted 6  
Shares, Exercised (800)  
Shares, Forfeited (13)  
Shares, Outstanding, Ending balance 558 1,365
Shares, Exercisable 500  
Shares, Vested or expected to vest 558  
Weighted Average Exercise Price Per Share, Outstanding, Beginning balance $ 44.95  
Weighted Average Exercise Price Per Share, Granted 61.22  
Weighted Average Exercise Price Per Share, Exercised 44.59  
Weighted Average Exercise Price Per Share, Forfeited 46.72  
Weighted Average Exercise Price Per Share, Outstanding, Ending balance 45.61 $ 44.95
Weighted Average Exercise Price Per Share, Exercisable 46.22  
Weighted Average Exercise Price Per Share, Vested or expected to vest $ 45.61  
Weighted Average Remaining Contractual Term (Years), Outstanding 4 years 8 months 12 days 4 years 8 months 1 day
Weighted Average Remaining Contractual Term (Years), Exercisable 4 years 3 months 18 days  
Weighted Average Remaining Contractual Term (Years), Vested or expected to vest 4 years 8 months 12 days  
Weighted Average Grant Date Fair Value Per Share, Outstanding $ 10.26 $ 10.43
Weighted Average Grant Date Fair Value Per Share, Exercisable 10.51  
Weighted Average Grant Date Fair Value Per Share, Vested or expected to vest $ 10.26  
XML 66 R54.htm IDEA: XBRL DOCUMENT v3.24.3
STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details)
shares in Thousands
9 Months Ended
Oct. 31, 2024
$ / shares
shares
STOCK-BASED COMPENSATION  
Shares, Non-vested, Beginning balance | shares 92
Shares, Granted | shares 6
Shares, Vested | shares (33)
Shares, Forfeitures | shares (7)
Shares, Non-vested, Ending balance | shares 58
Weighted Average Grant Date Fair Value Per Share, Non-vested, Beginning balance | $ / shares $ 7.85
Weighted Average Grant Date Fair Value Per Share, Granted | $ / shares 13.89
Weighted Average Grant Date Fair Value Per Share, Vested | $ / shares 8.44
Weighted Average Grant Date Fair Value Per Share, Forfeited | $ / shares 7.67
Weighted Average Grant Date Fair Value Per Share, Non-vested, Ending balance | $ / shares $ 8.15
XML 67 R55.htm IDEA: XBRL DOCUMENT v3.24.3
STOCK-BASED COMPENSATION - Summary of changes in the maximum number of shares of common stock (Details) - Restricted Stock Units
shares in Thousands
9 Months Ended
Oct. 31, 2024
$ / shares
shares
Shares  
Outstanding, Beginning balance (in shares) | shares 348
Granted (in shares) | shares 81
Issued (in shares) | shares (70)
Forfeited (in shares) | shares (64)
Outstanding, Ending balance (in shares) | shares 295
Weighted Average Grant Date Fair Value Per Share  
Outstanding, Beginning balance Fair value (Per share) | $ / shares $ 30.21
Granted, Fair value (Per share) | $ / shares 43.82
Issued, Fair value (Per share) | $ / shares 42.58
Forfeited, Fair value (Per share) | $ / shares 27.04
Outstanding, Ending balance Fair value (Per share) | $ / shares $ 31.69
XML 68 R56.htm IDEA: XBRL DOCUMENT v3.24.3
STOCK-BASED COMPENSATION - Additional Information (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
Share-based Compensation Arrangement by Share-based Payment Award        
Stock compensation expense $ 1,200 $ 1,200 $ 3,390 $ 3,416
Unrecognized compensation cost 5,900   $ 5,900  
Compensation expense recognize, period     3 years  
Intrinsic value of the stock options exercised     $ 24,100 $ 1,500
Intrinsic value of outstanding stock options 48,200   48,200  
Intrinsic value of exercisable stock options $ 42,900   $ 42,900  
Cash dividends deemed paid on shares     3,988  
Shares paid for tax withholding for share based compensation     532,860 29,058
Share-based payment     $ 73.92 $ 47.16
Treasury stock to settle stock option exercises and other share-based awards     337,884 132,656
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 5,000   5,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 10,000   10,000  
Renewable energy 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 5,000   5,000  
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 42,050   42,050  
XML 69 R57.htm IDEA: XBRL DOCUMENT v3.24.3
INCOME TAXES - Income Tax Expense Reconciliation (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
INCOME TAXES        
Federal corporate income tax rate (as percent)     21.00% 21.00%
Computed expected income tax expense     $ 15,240 $ 6,711
State income taxes, net of federal tax effect     2,297 2,023
Unrecognized tax loss benefit     921 3,255
Executive compensation limitation     917 672
Meals and entertainment expense     616 385
Foreign tax rate differential     (556) (1,699)
Other permanent differences and adjustments, net     (953) 269
Income tax expense $ 8,968 $ 6,129 $ 18,482 $ 11,616
XML 70 R58.htm IDEA: XBRL DOCUMENT v3.24.3
INCOME TAXES - Net Operating Loss Carryback (Details)
$ in Millions
Jan. 31, 2021
USD ($)
INCOME TAXES  
Income tax receivable $ 12.7
XML 71 R59.htm IDEA: XBRL DOCUMENT v3.24.3
INCOME TAXES - Research and Development Tax Credits and Income Tax Refunds (Details) - USD ($)
$ in Thousands
9 Months Ended
Oct. 31, 2024
Jan. 31, 2024
INCOME TAXES    
Federal research and development tax credits $ 5,800  
Unrecognized income tax benefits related to research and development credits 2,400  
Income tax refunds and prepaid income taxes $ 18,926 $ 18,267
XML 72 R60.htm IDEA: XBRL DOCUMENT v3.24.3
INCOME TAXES - Solar Energy Projects (Details) - USD ($)
$ in Thousands
9 Months Ended
Oct. 31, 2024
Jan. 31, 2024
INCOME TAXES    
Payment for equity method investment $ 3,312  
Remaining cash investment commitments 0  
Investment account balances 1,200 $ 2,100
Amortization related to STC investment $ 700  
XML 73 R61.htm IDEA: XBRL DOCUMENT v3.24.3
EARNINGS PER SHARE (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
EARNINGS PER SHARE        
Net income $ 28,010 $ 5,464 $ 54,090 $ 20,340
Weighted average number of shares outstanding - basic 13,530 13,328 13,398 13,381
Effects of stock awards 504 231 432 168
Weighted average number of shares outstanding - diluted 14,034 13,559 13,830 13,549
Basic (in dollars per share) $ 2.07 $ 0.41 $ 4.04 $ 1.52
Diluted (in dollars per share) $ 2.00 $ 0.40 $ 3.91 $ 1.50
Antidilutive common stock   690 140 881
XML 74 R62.htm IDEA: XBRL DOCUMENT v3.24.3
STOCKHOLDERS' EQUITY (Details) - USD ($)
$ / shares in Units, $ in Millions
3 Months Ended 9 Months Ended
Oct. 31, 2024
Jul. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
Sep. 17, 2024
STOCKHOLDERS' EQUITY            
Percentage increase in common stock dividend           25.00%
Regular cash dividend declared per common stock $ 0.375 $ 0.30 $ 0.300 $ 0.975 $ 0.800  
Common stock repurchases (in shares)       11,300 212,441  
Common stock repurchased       $ 0.6 $ 8.4  
Share price $ 57.11   $ 39.67 $ 57.11 $ 39.67  
XML 75 R63.htm IDEA: XBRL DOCUMENT v3.24.3
STOCKHOLDERS' EQUITY - Dividends Paid (Details) - $ / shares
3 Months Ended
Oct. 31, 2024
Jul. 31, 2024
Apr. 30, 2024
Jan. 31, 2024
Oct. 31, 2023
Jul. 31, 2023
Apr. 30, 2023
2025 Q3 dividend              
Dividends Payable [Line Items]              
Record date Oct. 23, 2024            
Payment date Oct. 31, 2024            
Amount Per Share $ 0.375            
2025 Q2 dividend              
Dividends Payable [Line Items]              
Record date   Jul. 23, 2024          
Payment date   Jul. 31, 2024          
Amount Per Share   $ 0.300          
2025 Q1 dividend              
Dividends Payable [Line Items]              
Record date     Apr. 22, 2024        
Payment date     Apr. 30, 2024        
Amount Per Share     $ 0.300        
2024 Q4 dividend              
Dividends Payable [Line Items]              
Record date       Jan. 23, 2024      
Payment date       Jan. 31, 2024      
Amount Per Share       $ 0.300      
2024 Q3 dividend              
Dividends Payable [Line Items]              
Record date         Oct. 23, 2023    
Payment date         Oct. 31, 2023    
Amount Per Share         $ 0.300    
2024 Q2 dividend              
Dividends Payable [Line Items]              
Record date           Jul. 21, 2023  
Payment date           Jul. 31, 2023  
Amount Per Share           $ 0.250  
2024 Q1 dividend              
Dividends Payable [Line Items]              
Record date             Apr. 20, 2023
Payment date             Apr. 28, 2023
Amount Per Share             $ 0.250
XML 76 R64.htm IDEA: XBRL DOCUMENT v3.24.3
CUSTOMER CONCENTRATIONS (Details) - customer
3 Months Ended 9 Months Ended 12 Months Ended
Oct. 31, 2024
Oct. 31, 2024
Oct. 31, 2023
Oct. 31, 2024
Oct. 31, 2023
Jan. 31, 2024
Customer Concentration Risk | Accounts Receivable            
Customer Concentrations            
Number of customers 4         3
Customer Concentration Risk | Contract Asset            
Customer Concentrations            
Number of customers 4         2
Customer Concentration Risk | Major Customer One | Accounts Receivable            
Customer Concentrations            
Percentage of major customers or segments       18.00%   16.00%
Customer Concentration Risk | Major Customer One | Contract Asset            
Customer Concentrations            
Percentage of major customers or segments       17.00%   39.00%
Customer Concentration Risk | Major Customer Two | Accounts Receivable            
Customer Concentrations            
Percentage of major customers or segments       18.00%   14.00%
Customer Concentration Risk | Major Customer Two | Contract Asset            
Customer Concentrations            
Percentage of major customers or segments 17.00%         32.00%
Customer Concentration Risk | Major Customer Three | Accounts Receivable            
Customer Concentrations            
Percentage of major customers or segments 17.00%         14.00%
Customer Concentration Risk | Major Customer Three | Contract Asset            
Customer Concentrations            
Percentage of major customers or segments       14.00%    
Customer Concentration Risk | Major Customer Four | Accounts Receivable            
Customer Concentrations            
Percentage of major customers or segments 12.00%          
Customer Concentration Risk | Major Customer Four | Contract Asset            
Customer Concentrations            
Percentage of major customers or segments 14.00%          
Power Industry Services | Product Concentration Risk | Revenue            
Customer Concentrations            
Percentage of major customers or segments   82.50% 74.10% 77.30% 72.60%  
Power Industry Services | Customer Concentration Risk | Revenue            
Customer Concentrations            
Number of customers   4 3 2 3  
Power Industry Services | Customer Concentration Risk | Major Customer One | Revenue            
Customer Concentrations            
Percentage of major customers or segments   29.00% 23.00% 28.00% 19.00%  
Power Industry Services | Customer Concentration Risk | Major Customer Two | Revenue            
Customer Concentrations            
Percentage of major customers or segments   15.00% 20.00% 12.00% 17.00%  
Power Industry Services | Customer Concentration Risk | Major Customer Three | Revenue            
Customer Concentrations            
Percentage of major customers or segments   13.00% 17.00%      
Power Industry Services | Customer Concentration Risk | Major Customer Four | Revenue            
Customer Concentrations            
Percentage of major customers or segments   11.00%        
Industrial Construction Services | Product Concentration Risk | Revenue            
Customer Concentrations            
Percentage of major customers or segments   16.10% 23.50% 21.00% 24.80%  
Industrial Construction Services | Customer Concentration Risk | Major Customer Three | Revenue            
Customer Concentrations            
Percentage of major customers or segments         14.00%  
Telecommunication Infrastructure Services | Product Concentration Risk | Revenue            
Customer Concentrations            
Percentage of major customers or segments   1.40% 2.40% 1.70% 2.60%  
XML 77 R65.htm IDEA: XBRL DOCUMENT v3.24.3
SEGMENT REPORTING (Details)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 31, 2024
USD ($)
Oct. 31, 2023
USD ($)
Oct. 31, 2024
USD ($)
segment
Oct. 31, 2023
USD ($)
Jan. 31, 2024
USD ($)
Segment Reporting Information          
Operating segment | segment     1    
Revenues $ 257,008 $ 163,755 $ 641,705 $ 408,779  
Cost of revenues 212,681 144,520 548,329 351,578  
Gross profit 44,327 19,235 93,376 57,201  
Selling, general and administrative expenses 13,995 11,375 37,848 32,467  
Income (loss) from operations 30,332 7,860 55,528 24,734  
Other income (loss), net 6,646 3,733 17,044 7,222  
Income (loss) before income taxes 36,978 11,593 72,572 31,956  
Income tax expense 8,968 6,129 18,482 11,616  
Net income 28,010 5,464 54,090 20,340  
Amortization of intangibles 98 98 293 294  
Depreciation 433 489 1,376 1,524  
Property, plant and equipment additions 2,547 1,112 5,218 2,143  
Current assets 717,141 514,071 717,141 514,071 $ 547,179
Current liabilities 436,164 273,894 436,164 273,894 302,260
Goodwill 28,033 28,033 28,033 28,033 28,033
Total assets 768,864 563,652 768,864 563,652 $ 598,229
Intercompany Eliminations          
Segment Reporting Information          
Revenues 3,500   4,800    
Corporate, Non-Segment [Member]          
Segment Reporting Information          
Selling, general and administrative expenses 2,976 2,751 8,392 8,197  
Income (loss) from operations (2,976) (2,751) (8,392) (8,197)  
Other income (loss), net 1,028 342 2,654 (1,863)  
Income (loss) before income taxes (1,948) (2,409) (5,738) (10,060)  
Depreciation   1 2 3  
Property, plant and equipment additions 2 1 2 1  
Current assets 120,053 71,038 120,053 71,038  
Current liabilities 1,635 1,592 1,635 1,592  
Total assets 122,191 73,555 122,191 73,555  
Power Industry Services | Operating Segments          
Segment Reporting Information          
Revenues 212,096 121,300 496,122 296,821  
Cost of revenues 173,283 107,781 422,508 255,210  
Gross profit 38,813 13,519 73,614 41,611  
Selling, general and administrative expenses 8,466 6,390 21,786 17,700  
Income (loss) from operations 30,347 7,129 51,828 23,911  
Other income (loss), net 5,618 3,391 14,386 9,088  
Income (loss) before income taxes 35,965 10,520 66,214 32,999  
Depreciation 158 137 443 393  
Property, plant and equipment additions 2,304 583 4,523 1,120  
Current assets 542,558 399,489 542,558 399,489  
Current liabilities 411,735 244,662 411,735 244,662  
Goodwill 18,476 18,476 18,476 18,476  
Total assets 572,828 426,466 572,828 426,466  
Industrial Construction Services | Operating Segments          
Segment Reporting Information          
Revenues 41,337 38,434 134,678 101,497  
Cost of revenues 36,757 33,899 117,836 88,537  
Gross profit 4,580 4,535 16,842 12,960  
Selling, general and administrative expenses 1,848 1,626 5,686 4,532  
Income (loss) from operations 2,732 2,909 11,156 8,428  
Other income (loss), net 1   2    
Income (loss) before income taxes 2,733 2,909 11,158 8,428  
Amortization of intangibles 98 98 293 294  
Depreciation 166 249 621 813  
Property, plant and equipment additions 236 497 509 973  
Current assets 50,294 39,843 50,294 39,843  
Current liabilities 20,663 25,839 20,663 25,839  
Goodwill 9,467 9,467 9,467 9,467  
Total assets 67,172 57,112 67,172 57,112  
Telecommunications Infrastructure Services | Operating Segments          
Segment Reporting Information          
Revenues 3,575 4,021 10,905 10,461  
Cost of revenues 2,641 2,840 7,985 7,831  
Gross profit 934 1,181 2,920 2,630  
Selling, general and administrative expenses 705 608 1,984 2,038  
Income (loss) from operations 229 573 936 592  
Other income (loss), net (1)   2 (3)  
Income (loss) before income taxes 228 573 938 589  
Depreciation 109 102 310 315  
Property, plant and equipment additions 5 31 184 49  
Current assets 4,236 3,701 4,236 3,701  
Current liabilities 2,131 1,801 2,131 1,801  
Goodwill 90 90 90 90  
Total assets $ 6,673 $ 6,519 $ 6,673 $ 6,519  
XML 78 R66.htm IDEA: XBRL DOCUMENT v3.24.3
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details) - USD ($)
$ in Thousands
Oct. 31, 2024
Jan. 31, 2024
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION    
Income tax refunds receivable and prepaid income taxes $ 18,926 $ 18,267
Raw materials inventory 3,438 9,985
Prepaid expenses 6,557 6,035
Other 5,658 4,972
Total other current assets $ 34,579 $ 39,259
XML 79 R67.htm IDEA: XBRL DOCUMENT v3.24.3
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) - USD ($)
$ in Thousands
Oct. 31, 2024
Jan. 31, 2024
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION    
Accrued project costs $ 39,902 $ 49,135
Accrued compensation 23,139 21,206
Lease liabilities 2,648 2,726
Other 12,704 8,654
Total accrued expenses $ 78,393 $ 81,721
EXCEL 80 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( .N!A5D'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 " #K@859;^F2>NX K @ $0 &1O8U!R;W!S+V-O&ULS9+! M3L,P#(9?!>7>NLD8AZC+98@32$A, G&+'&^+:-HH,6KW]K1EZX3@ 3C&_O/Y ML^0:H\8NT7/J(B7VE&^&T+198]R((W/4 !F/%&PNQT0[-O=="I;'9SI M/AA M#P2JJNX@$%MGV<($+.)"%*9VJ#&1Y2Z=\0X7?/Q,S0QS"-10H)8SR%*",-/$ M>!J:&JZ "<:40OXND%N(<_5/[-P!<4X.V2^ION_+?C7GQATDO#T]OLSK%K[- M;%ND\5?VFD^1-N(R^76UO=\]"*,J=5M(553KG9):KK64[Y/K#[^K<.B621A'^_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 .N!A5GJQ#9 8 >&PO=V]R:W-H965T&UL MM9EK<^(V%(;_BH9V.NU,")8,(6P),X0D6Z:["0GI9?M-L07VK&VQL@S)O^^1 M#7:2R@?J6;Z ;^>U7AU='DO#C51?TT (39[C*$DO6H'6JP^=3NH%(N;IJ5R) M!.XLI(JYAE.U[*0K);B?!\51ASG.62?F8=(:#?-K,S4:RDQ'82)FBJ19''/U MWK6BK M?*<)?'V\4[_)S8.9)YZ*B8S^"GT=7+3.6\07"YY%^D%N?A-;0SVCY\DHS7_) MIGBVVVT1+TNUC+?!4((X3(I__KRMB%IIK;) VX$NFPH^%M)J;C;94O"V56HSP@GV6B@Q14?>&_C>] *.?I4^+2$\(;V.XF]\=XMO7HX7:CC0W823(;18_"64SAFLX#FV[M-\[LYE#0QN:&Y3F!H>8 M>Q#+,-600$UN>6QMH[C.^.'C^)9,;R9;YQ"+T\23"IIE/E>< MD+F&ODBD(A.9)5J]P+]O];U'_>K:YA@/:FKY%6+00RP_\F6L?P45QO#!=P:SKE,<"(5F1$ M<9SY)#W(URR0"48.>T14]LB**[+FD9WL<;VFSBMJHCCN .OZ8;(D M\Y?X2496PWMXZ>/?5EO'0"56H1+#86:707+][ 4\68I:&MPC=/ME;N4B/*RI MOXJ+V$%<-,F4,E\LQ6=*GD>80S+KDLL>Q2_6A9H)'M749\5#[" >FB;P65TL MVYE/3[XS;O6)*];Y/ ;UL(IZV$'48S[- .0! Y9268>?/3ICSQ,@ 0)^(6;U M>@SL817VL(.P9Q[S*"*760JW4WN+Q75JO['QN*;^*MIA!]'.=2S4TG3)CZ"@ M P"">,43>U)QP7JCQX =5L$.PUEEE\A 0"(Q>[A,O;UC0 ^KH(?AO+(;8]_, MZ/-\29O<91H0-C%3I]7Q=\*9;3T4:KU-/$%\_D=V%/X[Z5(<>ACM,;6 $6#VZ:RPIS&$XIY=K>39@:E/TB M@,ENX*)]X,'%F,.L:P=X6$./;L4\+HXJ.QAX;1%;J]TCUV[G2WW6_8-CP(]; MP8^+H\K[9&[7I6O3N4?NWK5Z/ ;XN!7XN#BFC,&@7YB,N'6,V2-0.ZKB4&YHC_X%4$L#!!0 ( M .N!A5F3Y".64 8 "H< 8 >&PO=V]R:W-H965T&UL MK5EK<^(V%/TK&KK3VM7K=Z=Y_WNME:)G$J[G-4K)?+ M*/]Q)9+L[;*%6Q\O)O'+0I8O.KWN*GH1H9 /J_M,2BE/6?:]+ SGERVK_"*1B)DL*2+U\RH&(DE*)O4= M?V])6[LZR\#]YP_VZTJ\$O,4%6*0)=_BN5Q];;%6"\W6A8E6;.5#E?TJ6N4K3LN.$LI<_3=6 M<;(W&(\"/@IY@-13./YC&/2GJA!.U<\='TU#-+Y&O#\9#4;CR%'/H:BNRR5BP+Q M="[F0'S0'.\WQ'=48G;9(1_9N2*-A..9;".*SQ"Q" .^9_#Y< K)^7^U\_]< M^T$RZ*ZKT(J/GJ*K0(V_H68@*R3*GM5*]2K2M0"GF@V# MO2\7$\?#FEP3AAFSB:7)-6$V\RCQ-;DFC-K8=CU8KK.3ZS3*O9F,PQ#=3\;7 MPRDDU3%J98P25U-JHK!/J-ZN)LJGU'4TG2;*=HF%89GN3J;;*#-4=B%.7\[0 MBTA%'B5(K2(HFJM5+RYD'I6. HEW99$*N,5=4R#U?4W@ $!AU;^U-)@HZGI, M&RL<0!'FN' :O%T:O,8T#$>#\1U'UY/Q'1K?\TE_.E3S+238,ZNW*"6:8!/E M>H[>OTV0;=M$UVNB"',I@_7Z.[U^H]ZQ7(A<.8=9MA1G*!42DNH;-3L.TWKE MP 11EU)-J0E2TQ9CFE(3Y1)"8*'8JLV6]9FFO>+7XPE'V]*T_R<\86_)#O0X MOJM/V ,8]O7=0,P5RT 6F_A4*78MYTCTO=\)FZ67K4ODM'[QQ@&)6.C=L]W M#,4FRL'Z7!P **R&L"$8@&$''Q-,:L&D4?"(3[%X>LLGRA3>W4_XK7*(P\>/OGV&RBPH6WB\ MCY_4%)Z4+3@I&S\5VV$CU<80-SM#M:U6F^94[2GS7*2S'TBMJ&F11)OM^OPO MM=54^W\)[]J8T7'.?5OW%Q#*TX=; *&PK\_2'((YY,C*BFO?B)N-XTA(M$YS M$27Q/V*.DJQ07@*5&7B-XB1Z2L3Y[KA M LYUCDW/M-+';.&75DS-2#@N%M_T)K+G1L?[T]'1*MN"D;/Q4;(<-4GM> MW&QZKZ(BGJ&O<8KF69)$>8%6RA16ITR_@0VSH7/W.V/;,J8D$V6U&=;[HHEB M;4MWA *M^UCEK VO[C9_09QLI9J*OH)Z;XY#G7=/J1;EVV":-O'NFP3I63# MJDEMA(G5./Z^\>'-;7EZU']4&YP;OAF!(1H_3,-I?Q0,1S>0=-)HKW]V.)Z4 M+3@I&S\5VV'[U&Z=-+OU>CAN#GK!CD@ YTQMJGM8$$;UO64 PWQ]18!AWI&C M!U+;==)LU_?'89-FTT-C9E%]$81@U-;M00#"/#V#'&9C1P[12&W<2:/G[ WZ MX2T*AH_#@(^"L'DEW%)Y!U.*<6XR@&&Z; CDZUP?(@TN]RR;E"CZLXD:>=I5+KC[V>#)=\ MQ>2Q6/,$?KD5Z8HI&*9W/;E..5L43JNX1RS+[:U8E'3Z)\6]J[1_(C(51PF_ M2I',5BN6/IWQ6#R<=G#G^<9U=+=4^8U>_V3-[OB,JV_KJQ1&O3+*(EKQ1$8B M02F_/>T,\,RHT0W_/!>'':L7)$/.:ARD,P^'?/ASR. M\TB X\_T<_?4CFADD^%/'?T4(M3SM^!RWX+OO!M M0DX>+Q2Q+/ZBAZVMU4%A)I58;9T!P2I*-O_9X[80.P[8;G @6P?R4@>Z=:!% MHAMD15KG3+'^22H>4)I;0[3\HJA-X0W91$D^C3.5PJ\1^*G^<#HY'TUFHW,$ M5[/IQ?A\,(?!V>!B,!F.T.S+:#2?H2/T;7:.WK_[@-ZA*$'SI<@D2Q;RI*< M0QZI%VZ?=[9Y'FEXWC14QXCB+B(6L0WNPW;WKRQIY9B$_[< NDCR]YYW^K[]@U_ID2NZ-@M52 MI66JM"UZ?\CD$L&DH3"_X#^RZ)[%/%'&2=R$>0^W@I'>_FX_! M+/ L2DJS&E*[1&JW(ATG]URJ51.VC;.S\U!*K8#2/6RZ&<$.]:@9FU-B4-W,]BAQS3C=$J?;/MLB42F< MD8A)RP\K$?F-%Y)3JO%=U4+7D*QUN:PB2W0/3TJ;8=;W\5 M&JP"XC1 ]$N(?BO$^70^N$"'SP=?>[B'/6SC/8RZF6.#80/(H 09M(*\2H'/ M4_741>N8Y96$[9WO['6^>1K79:"O2QO;WAYB@Q6V"#8#QE;%-U8KY,]"+!ZB M.#92AZ7O6=_2=O9!LSJT'2K$!\X=Q9*["+;T=DDV5G ;J%:<(">D.D[=BA#L M-<"L* NWTD3_G-]RV#@+I-@C;\%(=(S$T3#J5J1Q[^"*:W [V11R\$C<'F62 M%ZM2%#N^>:=OX^WB<*GK[*/5K3QGY\BJHZWX!K<3SF:O-^]QK'.)Y_J^JQ53 MMW,"GY"F!L?#&>CT=FG*W<]5JQ\E;1ZCE7!(;;&:QDVC5[ MRFG6F+#.3KYG^=JRT);KN_LX=3OL8VOG7*D#K9@, MMU-9G6\/+72=G&SJ8GU#ZG;4(L1M.#%(Q6*DG<4F(GE6+P<*2W2RHD&P7U:# ME6/1)I@5HY%V1ML4]4 QB4Y3MFUA3:<:[*CED: )Y4X/UDYHP^GEY7A^"?,^ M0X-)T8G.QY//H\D0$*/WDG,T$8I+Y!=4$GPP9O$_>BMD[-%^/E"]#A5I$MIZ MRL_FT^$?7Z87YZ/KV6]H].>W\?P?8ZJMW/OJGO2-HM63KKB7M'/O5?HL9Z02 MX7=0LBQ%T)EF'+VSCK&%0. BN60I1T?(L:RN95F;L40L4TN11O_RQ2>4B.>[ MD93YH5RHCDQ)T'2+*+DS%K(5VFO6S,\'JI>O4@:DO1\=BM5*).;:.;7:T:)T M3>7#3MB?Y9H7[_#B)^/CJ"I]6R-CPV& ;0:?D,1*IE#VF4.2,9LE<5, M\>>>*!0K.!26^9OQ>XYB("E! M48/F(2#,]Y>:P0[D1$ ;^B5:Z1[Z2MU3Z(H7P\?::TUCNV>P,[9[O9W7\_FW MD4N6WD6)1#&_!4?KV(,"I)O/#9N!$NOBC?V-4$JLBLLE9PN>Y@;P^ZT .;0= MY!\!RH\^_?\ 4$L#!!0 ( .N!A5GB?B,$#0, +0* 8 >&PO=V]R M:W-H965T&ULK99M;]HP$,>_BI5-4RMUY(D$Z" 2I4SMU+6H M=-MK-SF(U23.; ?:??K929H1"$_M0"*V<_?W[RX7?/TE94\\!!#H.8X2/M!" M(=)S7>=^"#'F+9I"(N_,*(NQD%,VUWG* >Y4QSIEF&X>HQ)HGG]?&W"O#[- M1$02F##$LSC&[.4"(KH<:*;VNG!/YJ%0"[K73_$/J^%7]:QZ\#.81:$&6AW6) M!?;ZC"X14]9230WRW.3>,AJ2J,)=)/>*.[V\OQ[71\B>1H>G=S?3E\ MD).+X MKMC;Q[$758EP)D+*R!\(FF +36<%Q#'49XUWKUD-V:F0G3TEW6=1(.Q5I9R?IB,:Q/ _>4;J=IK)T MUKCW&-70NQ5Z]PCT@RJWNY$^VS"::O< PQISKV+N'<^\O71[&QBFT[7DM[?& M>X!AC=^JXE*SAV([;,XWV&G>CI=6V'&M+HLV5H]G<"?X@^S*> ML9B.NN0%A64[/[*Y7<9.ATW4Z[GJ6]9660O5SWS&;DX2C"&;2TVAUI 0K M6J1B(FB:=QF/5,B>)1^&LJT$I@SD_1FEXG6B&I>J4?7^ E!+ P04 " #K M@859Q6S(?T$+ "4: & 'AL+W=O,EM3V3B)=-FXW3V&FG'QF)B3@KD2Y)V4E_?4&9 M$84+0<%[W,V'6+(/G@/B !#X'A"Z>*CJWYI-GK?.U]VV;"YGF[:]>[E8-*M- MOLN:%]5=7O*_?*[J7=;RM_6717-7Y]GZ4&BW76#7]1:[K"AG5Q>'W[VOKRZJ M?;LMROQ][33[W2ZKO[W.M]7#Y0S-OO_B0_%ETW:_6%Q=W&5?\IN\_7CWON;O M%D?*NMCE95-4I5/GGR]GK]#+E-&NP,'BGT7^T)R\=KI+^515OW5OWJPO9VY7 MHWR;K]H.D?$?]_DRWVX[$J_'?WKH[.BS*WCZ^CL].5P\OYA/69,OJ^V_BG6[ MN9P%,V>=?\[VV_9#]?!+WE\0ZWBK:ML<_G<>>EMWYJSV35OM^L*\!KNB?/R9 M?>T;XJ0 (B,%<%\ 2P6P/U* ] 6(["$8*4#[ E0NP$8*L+X DPJ0L2IY?0'O MW(OV^P+^(5B/K7L(392UV=5%73TX=6?-:=V+0WP/I7E$BK+KBC=MS?]:\'+M MU?+Z712_NXDCA[^ZN7[[)GIUR]_8O M3OR/CV]N_^W,G8\WD?/C#S\Y/SA%Z=QNJGV3E>OF8M'R>G7TQ:JOP^O'.N"Q M.E2['>^5-VVU^DU3>FDN_6J]+KI>G6V=]UFQGO.Z++.[HLVV&E9D9GW(6SYZ M\[439W59E%]T%Q.;$;=\0FCV];?1RTDF+F>UVN_VVZSEM;AN-WGM\.;AL\RF M&_[WN?.V:G2U2B=J52GML> ]Y=A=\+&[X .'CG!>9]NL7.6-D[7.W[+RA4/0 MSPYV,=%%_1'E'5#=E'A_A8E/+Q;WI\%5C9"'L1N(9I&&Y?H!P:)9K)K-@\"C M2#1+-&8X\#W1*M7X#-P@](]F0A.28Q.2\YKP1]Y3FTU6Y\U/9S7G(Y:=MA2A M%+'0E9K4Z+_[;'O9W&6K_'+&NU63U_?Y[.K/?T*>^U?=@(&$Q9"P!!*6 L&$ M'D&//8(:>\0[ON(HRE6URW5A-Y:UO,PE)"RB2H?$+J%2;XPA72:0L'2J_D(P MV3&8S!A,OD#BRY^2?W;7=5ZNOCEMG94-G\^[A==6/WF_-B)M8PP)BR!A,20L M84KTYA[VI2E\PDB(L'>,L#@A%TGHE@O080\(22%@ZT19":(-C M:(,S0EO=]4'-ZU71#6I^/\/OMYNV+E;=>KPY6.W+HN4#NVVW.;\G;YN?G3)O M=3W Z-*V!P1JC\;4ESYL(TB7L>J2,%\::0FDQU3UB) [,FK#8VC#YPWMZ4)= M%^90K;1+6"C=P2R-M;2=GR%A,20L@82E0#"AWR!WD$9<8\_I=8G'KE'G=_MZ MMY&64[V$%I$2@M[FG"3!103YX70)VF/8A8416*'5VU&/2>B_5N0UH0,A(4PZ2%#)K4F,J MY72SJJH*(H1@7[Y'6YIK8#TP(&DQ*"T!I:50-+%G#/H6,@M<0@I@OYWH#>RL M0:;*-,C#!!-YD*EVF%^7&\J#3"/[A)P7RH-,8T>(_!F>ZMP&S"5C\]4@)"&S MDC2:"IAL5E7?X(.,$8\1N6E!92%06@Q*2T!I*11-[!F#TH3,4I,Y)6 N;+U M@:1%2)5G&/6H/$)!Y2506CIU!6)(!X4)F26F)R4&S$SK2$/2(E!:#$I+D$8N M"P(L3^P35F*D!\$)F14GN 2!V9%U^$$E*%!:#$I+D*K)S:F2')JR$G=(#+(1 M-LM&=FD",\PVQ%@59Q"2I<@(U&<,2DM :>E4>X@A'F0C;):-GB5=8/9IW1,T M @J15;H(U&>L\ NDPU+KGI2'Q/=CF9-:)GSQE@5<;IY +Y%ME<3=L9 M&Y06@](24%H*11.[SZ!#8;,.99,X,*.L1SWHWB]06HPUDA;RE9MR4*?II%,Q MQ(,^ALWZV%,3!UB5Q_B:0[UO-[NW#B2H. 9*2T!I*11-[!:#.(;-XMAT?6D%K @[:%S=K6DU,+6!5F1E(+YAI8#PO0C56@M 24 MED+1Q)XQ2&38+)&-/5U M;TA.&N0:;84>10%@"-0GS$H M+0&EI43=0R:TAQCB05PB9G'I]\C/4P*4V;5UAP"5J4!I,2@M :6E1)4! [?[ M-])U!@&*F 6H9\E,F7U:]QE5H@D\.44)ZC+6N)Q3YDO[ 1)0IRE1][[-B>^. M;"0A@Q1%S%+4LR>GB*K\$.('@7QO;:ZG]> 'W5L&2DM :2D43>P_@_Y&S/J; M37;*C+(>^:"R'"@M)JJX./>H)\\0H');3_/&?(H!'F0T8I;1GIJ;(AK-"B'B M*N=+@&XC Z7%H+0$E)9.MZ\8\$'L(V:Q;SKK9 98CV-0Y8]HMF$A@CTBZSJ@ MFAXH+>UIWO@UB">##&H=-:MU8WDGK79+U:?D-)(XU>R)\@+ET;5(8X<]CQ!Y M+Z_&;HY<["N3I\Z0>:%\WZPQ(S@873C1022C9I'LG,23OETUFXP(KSERE;8% M%<% :3$H+0&EI5 TL6<,DAJU.-;JY.$+?6\XZUPKJJH_R&.AB^51IMD)1@E# M\C,M&KMY&'J4RH-,8T==.=^5:LR(&[C>R-9(.LA3](G'6TTVJ_9\J]!G@@A,H M+9V\!#&H@]Y$G^&X*S/3.M:@>Z! :3$H+:&ZYQJ9O*=@RDJ,]" [T?_7L5=F M1];A!U6A0&DQ*"VAFHU;?$DAAW_"2@S_H!I1R,.OS##K$&LV?B&?R2LI4#T( ME): TM*I]A!#/.A&] \X!,OLT[HG:+9S$?GIT@C49ZSQ.<<>)?+"&U0KTCE% MV!\;QH-41/_@T["HJN;X/I8WM2[-U;2>M4$WCX'2$E!:"D43SS8=Y"@&=R26 M&64[\D%I$2@M9AIAB\H?S FHSW3*IQC@02-CSW,@%M-L=F*^DCHP>[>.(J@^ M!DI+0&DI%$WL%8,^QG[OF5EF@/5@!]U*QC22&$.AM'Z,09TFH+1T\A+$P YJ M'7O:B5E:A8Z==6*6QDJ;7M#1=.D%C9T^O: SU*07-&:F] (;]"UFUK>>G%Y@ MJC8SDEXPU\!Z7(!NMP*E):"T%(KVV#,6)U^WTGU?SZ]9_:4H&V>;?^9X]X7/ M(UD_?@7.XYNVNCM\ \NGJFVKW>'E)L_6>=T9\+]_KJKV^YON2UV.7T1T]3]0 M2P,$% @ ZX&%6? \,_WG!P $R( !@ !X;"]W;W)K M,39CBWSLK]^V3!"V93'9Y26Q3:M]NEOJTVKYXCG-ON=KS@5ZV<1)?ME9"['] MU.OEX9IO6/XQW?($?EFEV88)N,T>>_DVXVPI!VWB'K$LM[=A4=(97,AGLVQP MD>Y$'"5\EJ%\M]FP[/6*Q^GS90=WWA[<1X]K43SH#2ZV[)'/N?BZG65PUSMH M648;GN11FJ",KRX[0_QI9,L!4N);Q)_SHVM4F/*0IM^+F_'RLF,5B'C,0U&H M8/#OB8]X'!>: ,>/O=+.X9W%P./K-^TWTG@PYH'E?)3&?T1+L;[L>!VTY"NV MB\5]^OR%[PUR"GUA&N?R+WK>RUH=%.YRD6[V@P'!)DK*_^QE[XBC :!'/X#L M!Y#Z +ME -T/H-+0$IDTZYH)-KC(TF>4%=*@K;B0OI&CP9HH*<(X%QG\&L$X M,1A-)]?!9!Y<([B:3V_'U\,%W,P7\.\NF"SF:'J#1L/Y%W1S._UCCKKHZ_P: M_?K+;^@7%"5HL4YW.4N6^45/ )I"9R_;./[M)$K',4)$N^K([O M@14'4\B;*5?$J' :BH^(X@^(6,36X!G]_'!J@$,/GJ52'VWSK'+:S?WT#DUG MP?UP,9Y\1L/18OQMO!@'%W)% D(:CY(GO?:ES0ZG;.8Z?[Y-:D)M"7>SU77V0^P?TX,V=FK(FD*8 M4D>/S#\@\XW(KCG,IC"2KM,!\S7O/ I:"4PCY!3)60<,6XJSK!/05CS+Y$PL M%RM[,;EPKZV"PG+KT=5(V7Z_!>H1O6(CU.$FS43T5SD!TU6Q=F ]10^0;5B> M<_VJV>NL+AM:QZL3:G,M47B)$>]4K'FFQ40T3K3J\=9($:_-B8I)\0DJ53GH M*/]*]R$H/E BYM55\H4L5F5AV&8;HKF L6)X^>&,PDKY"5R3DFP'-WRG(2[B]]NFNV(N;*:N0XBW[)7)3 %S_(U\]WE.#[O) M4#;M6_TZ[J:8[[LM11563(;-5'8(^JGEV&0KSW=IO2K0B#F^;[7-345KV,QK MDW]3UF$-H1'B-\FD*><3XK9,7**8CUCOVE2,)]^"^4]L*HB14-^; L^EK>H$ MQ:G$S*FS71:NH6S*"T+-UT"P72A(-Z=J4=(DS"ZFCF75@Z<5Q!7!*G+%KL3, MKG=,[#(YN=X)74.^N.\TD6OD'!\$6X K!B9&5JNZG#VQ*"X24W>59MV<08;* M>;@W3 N?ZAQJ67:]CM4*6K9]M&6H&J!HDYAIL^KY]UO0I$F?T(;[C1C^Z;I0 MK$O,K%L)$F0WR&GB]0/:QBP1DD/XCUVT+2:9UD0-U3H$>W4;-6($VVV935$R M,5/R6*V HL[+TYAEB"<\>WPM;/F3ARU+0T/"E.(ZFYC?_D]#HRB=F"G]0#J[ M7&Y;]@O^-.&0)E=W,7&]YM+1"+K8\UIV@431.O'>13DWX\EP,OH)RC%6"^^F MG#-IJSI!%0W$7#2,TLT&-G"Y;"ID?/NVTK2&-[F_Z]KUG9).RK/=EN*1J@J! MFO?&,_9:+B+( 7+&+:.BRFEIT=+FIA'JITR9Y=W'_>+>SQZV3\RR[+19'#6LS MR00T_3.11@!:\CKF]>I+22?5Q2W5"%;G3 M$YWF8(%^O0Y&]\%P'OP&17%Y!1?ET<5P!+]_'7\;WA;G&EHC-)MF MOA M1@0TFV;LDI8BA2H"IR>VS6U@/Z"KX/-X,BFR+D1G%MR/I]=:"YKLC/V^U=A< MZ>3ZU+?;9K^B<7JB7=QN0@!/S>";5 Y%+K7K30&=G.<<-P^JX!5+T[Z1ZB;3 M25?B/MI6 >B?93QJK '>?71S)FU57RC:I^;=O#S0[::K+J2QMUY;^B 8B,FL MQE]"V95#4$&C6':QTXI2=3GU^TW2I?;^1(II2?:LMM2G^IKXQLO.OL]FM M/- R25<>3Q^>'KYL&,KS_-KS*_QI5'Z?H-24GTO< ML>PQ2G(P: 4JK8]]\&!6?H%0WHAT*P_Q'U(ATHV\7'.VY%DA +^OTE2\W10O M.'P',O@;4$L#!!0 ( .N!A5G"EG2.A D $@9 8 >&PO=V]R:W-H M965T&ULM5EI<]LX$OTK*$W55%)ER[+L3#+Q424?R7B3."[3 MWOT,D9"$"0DP &A'^^OW=0,\Y&LG>WRQ)!#H\_7K!GUX;]TWOU(JB!]5:?S1 M:!5"_7YGQ^+*PKI(!/]URQ]=.R8(/5>7.=#+Y;:>2VHR.#WGM MRAT?VB:4VJ@K)WQ35=*M3U1I[X]&NZ-VX5HO5X$6=HX/:[E4F0JW]97#KYU. M2J$K9;RV1CBU.!K-=M^?[--^WO!WK>[]X+L@3^;6?J,?%\71:$(&J5+E@21( M?-RI4U66) AF?$\R1YU*.CC\WDK_P+[#E[GTZM26_]!%6!V-WHU$H1:R*<.U MO?]#)7_>D+S.3!-!Z9L M=U3$5I[)((\/G;T7CG9#&GUA5_DTC-.&DI(%AZ<:Y\+QV7EV>GUQ=7/Q]5)\ M_2!N_C@7)[?9Q>5YEHG9Y9DXF647&3VYNC[/SB]O9K3S<"= -0G8R9.:DZAF M^HR:W\47:\+*BW-3J&+S_ Y,[NR>MG:?3%\4^#4/8[&WNR6FD^G^"_+VNCCL ML;R]_W<.AR7LQ^5$MO9!55C\_/E42%,(N5CH4LN@?*?XXU76JCT0 M-S#SVLZ5@XY36]72K!_8>7-]VF^?A5*:H'-QY>R?*N\/B<^ZT@&V/:-T=M5) MX2T9^'2EG!%?P)PEK9S*>:D>Z,Z^=*?&,8A\&">]HI!Y6^I"A@%* M&[D(B HXA4GS3I5K(E[E'(X$*Z3G/"5MR95Q4HG8Q/@C8*P6/FSQ_M;GVMD[ M79!"L6C*4CAIEHJ2K\P2B5=.F^46[23TG M*"--KO@811B,#+-M'8^S]RI?&9W+DH6!K'%64.7I'*; *S*Q9C@LE4EH@FSW M38%B*.&1AI7S0IN\; IL=QH;-,*CP6=HD 74)2$P!-#$;MC4S$LDOPE(;V#P MI2V$"J&^-YKM1#;JNM2D@ RVE&GV5;E+TT>@%O.G6.Q,1P MI3UUB[72YIQL;=C'6\.(RT)$VB"3M^.LS>+KF+)KE6Q'=BZ<8L2U*$N_-_ Y MD/\)\2UL]4#!IW&/S % 8#[S(-P9((69Y>V!3RXBQLB 6_=9PRGK E4 UI;D M^[B#'PHP^I".Z93Y%D8O2>DA:LVVASL#H*QD3!2."(-I(R9Q0S(7<.D(HU5J@2A8]@TW8-YV19RI:EP9:*HEG5 MUC#@?).OB!9J77-913[ELY17CT(6=_A4I>\S!)K: D-K'.UX?-YR/X3A.7AM MX62,+,G(;-FDJ)+%@:8Z%$ACDMU4FAL'NKP]RFQ+%)4TF#J?HID-K\F582*' MS-'7Z!9GHA1+B]@95D@'%ZI TC:6>S(9D@A[]447VUW'>"*!)])K3RM7L61Z M [,!+,\EAQWU-> M;+)H/J#W(5=1_-QVGAK!7)84RXB3@#;@91ZSN))W2LR5,@(PQ+C;@KLW&=O& M0(>XM*C.W3>;'68E?9MHN(DNC<0-/ 1&>)*/%PI*,(*4.D J+RP@N.@2T3@) MZ$;7R>''A.'Y2@#.CAD$I@P35H)WCS%1:"^72V25V?1/QNBC9(@SB- ]ULWA,R#,"!A"CMB\=-?(8:51%_@V 0L'X9#5W MR+#F('#5KYQ2O!G'$.QXHZ#F6SPR@[?AR]Y6UY_^DDVY]"NQP%75=VI_0AF/ M4HV134&M\*=CV2"UI\@, M?4-5G$K%-66J7<"Y*1,!#YDJ4QCA>.3A;><_\A7/>J?= +&1ZPK7.(=H'5G,%9X"')MFS)G@9 M1VOR,0Z$I //5?WL,$74"$X'UW53$L?AXVQVU!\"C**/BG MXPP\EWA,?73(?'/P)2;?-*?0DV&H*@DR)VSB\WL#DTD)N$2E0:F/-*(LD*)2 MR0*QB BFV+ 6BL[/8*E-&[HP+"X!>C@%R8G1_VQ,G)LX ZE$7Q89V27*I#%9 M!=L7^' 6I_:)623"ER?9089IH.Z8,9)ME$;=GP-(L1K"ZBF^GD6H7 M$XG=R?:GCCH>L"YD/2KQ%B\?XE9:ZVOAPJ3>I$T:!H932_AOAUU*4C4)#]^0:.8\;GM2NU]>R M0V\*6IH>7OY;(#_75=JA8Z-I/,'6W!IU)= 8M2VXZ&E6:MFX;>[0,1BHV62S M?G"8@T %T?J6+GP\<]ZIUO*71<;;W /!>):B1/?@ 4K&@%,.EL3G/I7%-EM=XS4;T_>;H'XX[1]W4TPKVZ WEQ,WTU>OQ<7%4UGR7Y0T'4_ M4+4GSWK:HK<;X@SQ>.@B+.XLS6Z3]M_Y90A&:W$C?] %-RI^N_^4XG[G(X7# MF.X_JW!_>[+7*G3><_:JI5TM\.AE0. W/$ MJZR9AQB^Z62;'7FPFZ[G#VP023!/_4XE$"<!+J9!;EE4 6O, M*-RZ9&&Y#79MIJW;E@JHV1#6 4#$64>F^:NL-'[J)>C.X.TV7Y7I'3Z)A>'Q M17>WVOV;8!;?CO?;X_\8ODBWQ.U.E&J!HY/QVS)[^_@#T>9WY7,;<$OC MK[A/PRW:@.<+B]:3?I""[I\GQ_\"4$L#!!0 ( .N!A5G; 6,P@@H .8; M 8 >&PO=V]R:W-H965T&ULY5EK;]LX%OTKA"<8S ** MXV=B-VF -I/!=+IM@CPZGVF)MMG*HH:DXGA__9Y[*5%RDF8*[ +[83^TL2GR M\C[//5<^VQK[S:V5\N)QDQ?N;6_M??GFZ,BE:[61KF]*5>#)TMB-]/AJ5T>N MM$IF?&B3'XT&@^.CC=1%[_R,UZ[M^9FI?*X+=6V%JS8;:7?O56ZV;WO#7K-P MHU=K3PM'YV>E7*E;Y>_+:XMO1U%*IC>J<-H4PJKEV]Z[X9OW$]K/&[YHM76= MSX(L61CSC;Y\R-[V!J20RE7J28+$GP=UH?*Q^;J3_QK;# MEH5TZL+D?^K,K]_V9CV1J:6L2"OGS:8^ M# TVN@A_Y6/MA\Z!V> [!T;U@1'K'2YB+7^57IZ?6;,5EG9#&GU@4_DTE-,% M!>766SS5..?/;RZ_7'Z^O[P5O]U'7G<12>.TEKN^R!W]!VY<_')%'[MQ&61J6S__!%TC(J.&D7?CUX5>)7Z MOA@/$S$:C":OR!M'P\0*,TMQ MHQY442DG[M9*+$V.FM?%2GBYR)5@?Q3>B=04SN0ZDUYEJ.SZ"!!&>!SS:ZN4 MD$4F"F@I-B&/%.610!:8A;(Q$7@;/HP3D;7*8.-BQ[)6RJRL+-3V;RS,A\E@^/C9Z(.Q'0ZQY/Y MD\,S[+U19;7($1(DS >K):,I_-GTD\FR6#<+@\A>#"< M-%I_1$0SLXF/I^-9_#Q.QN/!,WFS9#H_:=T ->=S<='-TIC8'7.F)\E@,.NL M#(_'RHG^4P/?]CWU* M:B&]MWI1T39O^%%ID,8XDZ%_V)T@$-(I1#NU0C\%CE)U;N17NLE8JEU'L:"C M%V93RF+'0'!R^KU2I6NM2LVJT/_">EE95\G"T_U+_:BRP]+B0CKLK>2RTGZ- M2G:^N<HT&2MKBB3"/_G\(@P_1?I75,F]%]O?CLZ?:,RBPBFYA$*I] M0![];+P2PVGC-8C.P#9P8L_HI2YDD=+=CJJ!#H?+60]QIRS:<@! \ 3Q[OHB M.J\.(UU (KVM\$6*E72'2VW)5@[44J8ZUWX7=++0Q;;A_H54(XFCP>E'G5MC MO+@./J/!#DAE(.S6.'<. ZG+''_(R_F.W$P'/6/P2#RG#1=2R<62A6= M*"9T9@ND7(N#[M8MMM(N2[B259;Q'#H1.!\R.(L2L3'9:Q#=ACS#HSV1,)IS M%B+@"NU2>'J'7.B3*\F%#YJVH;PSN7.U;T5A/&48A:X. H!T8= M-]L"=RX _V"T,=&;1*)B,$ZUS[D#0#Q),OE#UVCIH<8AU!#:N:KM,D^+9B&+ M;R170Z&-J2C;'$1N12EMK #BU>P;9&O)U9OF4F_(,[F,Q:S;+%JH5%;0E-S2 M^+2^&<]RC0JH/=FU&T7F=9"'9YF56RY&\',1Q$%40L_ AHU5_+'1VF%;#BLI M=LN*HOO,*EVD>56'4:8I+7-LE7[@@TLF^I4RKX!3*.#[7G M72*J(@:BB9EXD "#@!KDB=IQA)SJT8>)(00:^)&0M@B?(1M#X"!US\E*/*FL M@)#[CB1MI0.620?. MP]XZ"(S^*D!"BRT;65 $,^52=,I0"E;IHLYF)%\#&SB02[MJXR#RVH,[@>R* MJY0(\(L$1%-C!5SE#-^=8P^-3IE*B6X+\U#'F-3KX%#7J$Y[^W4?:G^8![-M M#8HALRITTYR4-\!K*@@ALZ_P?7!MR'_"O]J6?C=/NDW>[S'ZV&_91+ZM"P7= M5(XNI"2,+L,IVK10*UT4=0Z&+N%*Q:-ZW5;^CUEXY(2=,'!1O>C:#@\=$RGO M,M,IB.GL^578>C)-CCN,&(1^D@SG[=F(*E91]0?,1;2IY*%.Z 0N$(=DG[P] M3740$K!^1O@.S-7=MI2:^VF$!:2NUT 5>L?"Q5P"@143F];^EBNWE"9%[N:* M4)KI#.<=OD?[#D;#_JA923HUF://?*'F2T$D @YN9@/YC$VJ2!)H71Q=@7T+ESKUKBJ&^2JIM+3V$0 M(2F<#!$*LF$P_,+TJ?$5WVL6[#]&U&?UXCP,"K)#6R#2^L090:DDT(9%Z.4/ M++QA#Q)M)&.^Q?JTDT^=M*3??@>0.NB)G^5IE882C <^&P,!>\'<'+RS0B.6# MU(%)ZB*\MX9JX&0_6!4U!VXFR!A=6.(JC$K_H6<&GD:/(@9#4U"3<_[\_V2GO4GWZOHFSB,W^,BK]U20Y=K M9=EY:-?B:I'K5,N7UNU+3<%IV_(+14,;W)R!8XD.8BC;\OB'TP8)>,W"LFYIP MS*P7#5+%L"\K7UG5YD9*=V FJE,,C5!9RS$V#=9UN1P)-2E\T,T^!LBG^547 M8^UE5$9*PSB\F.^2X/A:P2 ^2*J;9&Q.&2[9U0/8OJ(@ASK,8#3TU-MK?3DP M+D2(!D[,?\ABI'N1[H *=6M8YHA!U<@C,#9!JFJ=F-!< ,AC',%PC#H0WS!E M(Z5NJ4R?T-QH5O,NB5,IJ]+H]\AI%_1;5&'_I1?X1YW?7E"(*_Z%R84! M,?P,$U?CCUCOPF\W[?;P"]@G%(&&TW*UQ-%!_V3:"S-6\\6;DG_)61B/JN>/ M:R71/F@#GB\QPC9?Z(+XT][YOP%02P,$% @ ZX&%63"6(T_T" 51X M !@ !X;"]W;W)K/2I];U(A+/N<9X4Y[Z76EB\' Q.G(N>FKTI1P#\+I7-N8:F7 U-JP1,Z ME&>#T/=/!CF71>_BC/;>Z8LS5=E,%N*=9J;*"^7J<6- MP<59R9?B5M@/Y3L-JT&+)9&Y*(Q4!=-B<=Z;!2]?#1&> #Y*\6@Z[PPEF2MU MCXLWR7G/1X9$)F*+&#@\'L2ER#)$!&Q\JG'V6I)XL/O>8']-LH,L4:(+U:9H5_VZ&"C:8_%E;$JKP\#![DLW)-_ MKO70.3#Q#QP(ZP,A\>T($9=7W/*+,ZT>F49HP(8O)"J=!N9D@4:YM1K^E7#. M7ES.;G_U&/ZRZW]_>/-Q]OOUS=TMF]U&,0UWE<. M;W@ [Y2]585-#;LN$I%LGA\ CRVC8U@D>$ M+_KF@CN\P_UX,8A>FI+'XKP'46*$?A"]BQ]_"$[\TR>X'K9<#Y_"_A5%6('_ZWO(5XL* M4#]*F[("5MP8 8>Z\"F$Y/&GBF?2KC:/RL)87>5(QH-%G%6)+);L0_^VS^X@ MN9D*N%7S3"XY)@]SVET@LP2Y5 ]"%XB%00(K8BD &Z]LJK2TM%C3029@BRG( MB"4@41IXA'VA2RV- JH*"W*2L4U$PP74A$I ]%9#D,E[$@L3D M<:PK $IJ(H;Q9YK86>_([P\A;64996 @XUQL^$!$Z84E)>S59^]Z7"(C%RJ MO.3%BIQR?&HV)(A!=DEV!BXM "]4!A<,&I$3Y\]B\B5YO!^=?O6S2Z[9ZU+; MAB>6Z.<6O,4>@Q_D&P(V@$9#)D=PJ<] /4>1[TRCJ[(3!R(O&ZQTGQAV*T;7C M >F^P$8=4QN5@:-0KH#T(1O>'&/<+-<:"#FL9O^K,]^0G^K M"2%$0ZG?]5H&:,@Q)<0X)@@0C<\EI2((S51E"?T-G#+(@#+#U:>KLZQ*V O9T?<[#K(X9E'@&)X#\@X9!=U"93"C)&0L/YU(@,"*& M# !)\?D7$2)_I-H-68)\#ID<0 $L6RM.-WZ&T%#: MF"+@Q4)6EHV)^\( JC M_O#%MD;6<0J5Y/$MQNGM.D[WI3J^&]F-:\]>W[:NW8GVIQ+B^HZ%5PB<_Y(: M#6B7(PPZ#(!K%L,E T&4*;A*X?)::G@!YX3[,*,S2[BQ#4GI0.@5]"-S,L:" M2\W@\JX$WE3 D-50=%?KJ%M]G]S\K9\[[#_WX&Q#V\WN+Z3F_:OK5KD[N%I+ M-CN7SGK-\L/:;D]LO4:;M1@PN?SN3/L+V;I>?"2C;E9'A8*8^'Y&N@*&,+-C MUFBR^/IV&OE>%':O*XJL\+2S$YP$W0LNW#P]'(5$HD8/&=NF4(\1G=VK=1QZ MXU&PE]8YG$QV]J8GNU@C+X#[NF;#T0=&%I!5#O$1>>%XOS_NY2,<[:*8 M[)X'\:;!R-D?$GFI,!_"G3NW309:?5]'>)Z5 M_SA[MJ/J2=0_M!L%M#3:DZ MH@JJ6S9AR15-AYV=/7[H^>/AYKICEJ.#9=L_Y;E3,?P_&_X3@^ (,HP'Q<63 MOC@ZF7168>1O'A^-_O>3 '1._M?G@/%X#^(HG.ZF .RN3O[B*MI4>^2/M\Y/ M.CEY]OP*RNL4L"(6\@$+RJ:@[A2%1T$_:JO[>NBRKLGM5EG[NPS*&D) MQBD=^8 :7.#L <=_ L=_^]F%EXCJ;RT7 M*$ (P<_F(I/B01#CG9*Y)4G#0.@#-VIL&B@G35\FL':FL0XU,S1Q@>SX!36S M!PV6C-/&?J@CFHL90T,J0 ,-F.NQ+/9>D#4%R^0]=M4V!6"4I*-ZJ+"R#$0# M_C]54KNIDA&PI[1K;!/3;KEF=]WCS\DNU/M!6[6JK2I1RQK[(^5:J,V6A#0" M7M6F_+JE0QUUYPK=_2[1Q=_Q1M?C0@NWV>,&PW77N]G2=?KSYNQ6?SQ=C[G^ M#D_1=@MY2%Z^%:W?K(.^5.![V,&1/[Z7YGYGNL&9J>;8"M-DI40S.M>5.*## M:2XLF\E,S05='S21P96;K^B-H2VVU%MCF 849PN,)Q _9!&[Q0^1_*MY,;?( MMR@Y75\XGY6V0GR;<0U)7#'\J&4I>33CZNM*JV,7M'/DG<>Q2S/PWQN.ND4\UL?WTU5HB;;84,I]'KJ/'MWV?^R&X"7I5:?J6J" M& _=C"((7VS[\X&42RHE@?8.YU.1T51Z(0NX'R2-3%J%[BBE%?,M+_B2G&Y? M_N2V]M=\+FE.1)F\Y?#*M,B(J=K!1++I5MZN.^!?.P[AK<5K;[G&[F[D]F7" M4;R)SS%.$_'N:3\1',-IFN)G(&9FO,Z=@-;12$!#F*V3W[[O18/.I[YB8_ M P APH !D !X;"]W;W)K&ULU59;<]HZ$/XK M.^Z9/E%\A4*XS)"43M-IVDP@/<_"7F--9,F59"C_OI(,#DT#DYZ^]+Q8WM7N MIV]76FG'6R$?5(&HX7O)N)IXA=;5A>^KM,"2J*ZHD)N97,B2:"/*M:\JB21S M3B7SHR#H^R6AW)N.G>Y63L>BUHQRO)6@ZK(D)3&PG7N@=%'=T76BK\*?C MBJQQ@?J^NI5&\EN4C);(%14<).83;Q9>7";6WAE\I;A51_]@(UD)\6"%ZVSB M!980,DRU12!FV. 5,F:!#(UO>TRO7=(Z'O\?T-^[V$TL*Z+P2K!_:::+B3?P M(,.T'W,?3LWBI8,I]8=O81HD'::VT*/?.AD%)>3.2[_L\'#D,@A,. MT=XA1MRE-M-66AI9JGQT]/WL^L[^#K[ M=#^'F_EL<7\WOYE_7B[&OC;@UL1/]T"7#5!T F@(-X+K0L&<9YC][.\;4BVS MZ,#L,CH+^"7578C##D1!E)S!B]M(8X<7_WFD#5#R/) MDPM5D10GGJD#A7*# MWO3UJ[ ?C,[03%J:R3GTWZ%Y'NCSE^4<$GC]:A"%X0A.X,*R0,@%,\5)^1HT M63$$%Q;7"K29O!)E1?C.X;P=*<@I)SREA 'E2LNZ=)9$@>G["#3((G\C1$SG^S_;7O*K-_NV'W]%>$54 ?JNI MV2A[!OZ^73$W$N[,;2D?S.N6U^:0'6;^@6'8&0Y[1PIWP*/164T8]3O]I/\B MK]F&4&;+Z8UY.M\HDR-0]AA33?$OS-5]=]&%I705N0,N-*IG;8^#/8SAL-_I MA<&+[4_I+4RO=]+<43271"4DT6C>WI4^I'3W\C4ZPSC^M%X*3=AC M^IXY;%'0[R1)?*1YR6$+@UYG,$A.>SWW_OA'S4&)M&@W1*[-I0\,<^,:=-_V/)!-V],(6E2NU5@);1H7]UN83A&E-3#S MN3#G:B_8!=K><_H#4$L#!!0 ( .N!A5G#^B H2@0 $L* 9 >&PO M=V]R:W-H965T/ E'R<#)D2:LL ($G]K MFI'6# 0:/UO,I O)COO?._3?HG9H64A/,ZO_4GDHQLEY(G):REJ'.[OYG5H] M9XR76>WCK]@TMND@$5GM@RU;9S HE6G^Y6.;ASV'\_<.!D>BW20 MGA[ .^E4GD2\D_^FL@$Y?1N$V^/"5S*C<8+][\FM*9E\_##\-+@\0/&THWAZ M"/W?4CP(\C;%ZYN'N3@3'S^.TQ'6@;$ 9(TPJX!1-*+RMF_T=<@R=Y8#5*W/ASC*#WM#=$N6J/S MCULIRJRB,3U6< 4F^K\&?=CSM*800 NCS%&N@LB=W B5DPEJJ6".6-+)61)E-PS*Q!S'C L1;.I5CBK+.<\=F.1"6W M.$F13\:,-O#SP=7Q;#R&Q\*I3'8X$*QSP1M(9!#,BNZ M?+^HM#6*\RI4B$$Z;FW=6XI,*VX*'\!(^8)KBGS9#>*1P$7ZPJ&K?2D-+D(N M5%=H@"CG M9N6=0/&NUMO_@]5)PTKAG;$RZ/1,FETV#M0,!7BECL/](4V-#;8G&:?54=H[ M>ZYXV#M_3_%;=TE_[X+'MES%9XP7L0^:N[Z;[5Y*T^:!\&3>/+.^2K>"5AQW M2[@B\V>)<,W3I1D$6\7GPL(&]$#\+/#:(\<&6%]:M%P[X #=^W'R#U!+ P04 M " #K@859I_-K.-\# "Y"@ &0 'AL+W=O5F&-@UB=\,^TM+)(DJ1&DG5 MR7[]CI0MRW%C9-NW?1'%X]W#Y^YXY(UW4GW5.8 A3P47>N+EQI37OJ^3' JJ MKV0) E&3;W%B!/QV7= LK,%_*!X4SOT%)60%",RF(@FSBS<+K>6SU MG<)O#':Z]4^L)QLIO]K)73KQ DL(."3&(E 22&C%3>//0,A@&KQA$>X/(\:XWG9_>S?_N"2SU6JY7HU]@[!VT4_V$/,:(GH%8D0^26%R M398BA?34WD703\G)@KT@T[) JB^ )>M_&QZ_"Z_\7'&B+^/H0M MC6M=T@0F'IY]#>H;>-,/[\)^<'.!8-P0C"^AOXW@98C[S^LEZ9,/[X91&-Z0 M,T0R,V0C34XPN'(#JHDOH2(EOU)184DVP@XQ.9"ME.F.<8['GE.1@,8JY-1 M2DK%L(09?R9&.M7;AY4#6C\N4*F4RC"Q)95@1G?T+G?)A(L784HYPD M4N!?55\"-G/,>J)ABU>+<=RL!M/6+YDYZTQRO*RL!U1;V9MB=NV"'W1O_C?C MF=N'A9>NGUDNM<&$V(@>)+=*:MW,9DE2%14_T;C'%^C?:7_1D%6-><#(/XA%9N(L>0^W.,[+2.2N/VX;!"QZ'<13VSV3#<'"N-WJ3Z2 > MGLG"_I"LI:'\?/>C%[U.'+:][J+7X4E41E%\43\<#4^B$K6\6)^4)-.$$MN< MI!7>#EB=664JO%SH/H\HH>W\'NXLO!G*2B4Y/N%IZW[1_[QN3X[/'RXQ^/19 M;NW":&KA"1LH#;90>N0'!;932D']B&ZBSR@]YJ$[Z%O!T?-N$%C!\*7@/)UV M >.$?5EF\!P=Q#T\;"Y[KR7C>Z^7WVHG\%!N7=.D\9K$^-:=12-M^K)9W8X< MU>NF[A-56R8TX9"A:7 UZ'E$U8U2/3&R=,T)ODU8 >XWQ]X2E%7 ]4Q*&PO=V]R:W-H M965T69+ RMZZ0 4.WZ/K2DQVXAE6F-SN/<5S^!7LRL_:1!U_RBU:/"9&F+#""Q-^*KDAK M!@*-[S5FJS')!W>_M^@WT7?X,I.>KJS^6^5A>=$Z;8F_@J"6RR@=;U(?!H% F_<&F*#+;'+P4' NRQTQ%&_ M+0:]P? WE'CZ%'$._K?CB:5AG,G=P[4X$>_>G [Z_3.Q'U;<&7$K-V(P3%%NB[ D<66+4IJ- MD":/XTMI'@4]458%2C/WE%DLCE&;T#ING)(/DM>G5&H$!TM!7#G*51#CA:,T ML59AB>U *Y63L2ISG!)V'GG4:I^(]VR%N0]Z9Q,4]L] <:E_]DM'/&#COAUH M,B4Y3SGY2-E AF@5%+.T5V[WMH7T0B9G. 021#'3N&Q3E/K'S*Y_\B^]&+[P MXKJV_9HG;32XO,IJMMQFA 8A918BLT6A0G1*%K;"W]S90KP][G5ZZ A:,X%@ MQ=NCX^>)ME &?@(G(6H*@1Q3K+V?$Z]8,2,80(OUH1$HJYSC 9KT(VX%UEJQ ME[X=I6:E9UJAY21H98",2>$X"+@FX,K*ZA5SUU8:Q#9LTZ;B&-RMR!ENEN)& M&6DRWCCEL^_K8-W?W4RW@1&EKKP8!X%^8&=PH0DO<_E#F@I723/Y,H-SE4/X M()9R18(G9M:A'F'/"]Q/\"-%N(+R+I['WGD(4VT<%XN2\";UT3II%=*4&YHJ/G>/DS,?LX"@H'V/IZ'L5P\!"RPP# MOTV.' 'P0068P"B3?LE3*D<>>PZB5PNCYBJ3C&9X;[3)U:4?"K=W01 Z91Z4V=U#5T[+C565X3O$!,TQ<1GF-^0=!] .F88 MEDAFR^W:=Z0;Y.+E XQ0>[KBUF-9=X$#!4?DV1Z7T2HZ#XWJ-T2BS^ZF:Y_S M.@;Y)_T;7;WZ01'*2(YYNS8;-=T&)=*!\G!!P:(H+:E/OH'4$L#!!0 ( M .N!A5ERTB$,+ 4 '<+ 9 >&PO=V]R:W-H965T9; R.'6RGV_WW]XSS MTE2"GG1?=A/;,_/,\\Q,?+*S[H>OB(*XK[7QITD50G.T6/B\HEKZN6W(8*>T MKI8!KVZ[\(TC642C6B_2Y?+MHI;*))N3N';M-B>V#5H9NG;"MW4MW?Z9JKJP^ILJ0G6:'":BH%*V.GRUNS^IS^<-^\NM]O%7[+JSJW4B\M8'6_?& M0% KT_W+^YZ'B<'A\C<&:6^01MQ=H(CR#QGDYL39G7!\&M[X(:8:K0%.&1;E M)CCL*MB%S<75Y>7GV\L/7VYO3A8!#GEYD??&YYUQ^AOC]^+2FE!Y\<$45#RV M7P#(B"8=T)RG3SJ\RL-"%-(3ZUTDD3B+SX;$2H2!@^I$5N6^=)V%)DK4<4WYV'"Y&3 M"^AJ5-MWO#7.?D>WN1$;KS9ZL<%2)88;-HY5M'82_8%1AQCYP' #N5$&BD8Y, / .P?8A MLY08'S$[I/0\[GEK@4W5BE=@QN8*)#S)0S03('-KA/Y.Z0UT0B,.(@%D# M4<%HX$PF7?L!ULHT2G=Y^0Q?$+5CQV(,!??*F(IRU+ES ?P=-^!.% S M#'D0)54=>1J5*%@Q5IJ1]&6#X=SJ ESF+)"\DTK+3%,LMMH:"O@BB$+6^! P M%<*R;@#F0WS5UON>S4F:R [%AQ 9^WI!HR1$!1Q+;J0<=NCJT_1N[H=,K_0#1E MI^G\ M/3Y8?0)?;!BRQ\!YJ(I^< QS82YN)Q)*[<=6181)%XRE-F,BV55$TP\LKH\Q M#4R03H6V&;KA@:7GZ_G; :2(0ZMIK N/QF%!=[BZ-)$%*J%PX!HRDU+APIJR M$BJT\P@QTM'5(;:+-NK!,/8DG:!8.G])TW(#],JFXB476KH\_JA\CGQY+:ZL MCE^A*3O5>+Q,Z=J2(0>2]P-G_F&FO0[[A@:YV9#;GN]+0]4"1&MX.O8SS@?7 M=O>F<3ATXDQ\Q.KB*U"4$O2QF)&HF6!F'*0"\0"BMCQ\8T#TAZ]4,^L[WX>' M(@0495&UP*KRF(AKC2B=K86!%B+LX'K_NN0*JN/%XU??X<7D,H0AMHU7/@8+ MS;M[T;@ZWBK/NLO4P_'N2GHIW5:AXC65,%W.W[U)T$/QFM>]!-O$JU5F R9F M?*QP,R;'![!?6AN&%PXPWK4W_P)02P,$% @ ZX&%6?GG-G+] @ EP8 M !D !X;"]W;W)K&ULI55M3]LP$/XKIR#Q"35M M6A@O;27H.H8$!0';/KO.I;%P[,QV6_CWNW/:K$A03=J'IGZYY[GG+O:3X=JZ M%U\B!GBMM/&CI RA/D]3+TNLA._8&@WM%-95(M#4+5)?.Q1Y!%4ZS;K=D[02 MRB3C85Q[<..A70:M##XX\,NJ$N[M"K5=CY)>LEUX5(LR\$(Z'M9B@4\8?M0/ MCF9IRY*K"HU7UH##8I1<]LZO!AP? WXJ7/N=,7 E'*3CY(N"T*-,C"# MH+\53E!K)B(9OS><29N2@;OC+?NW6#O5,A<>)U;_4GDH1\EI CD68JG#HUU_ MQTT]Q\PGK?;Q">LF-NLF()<^V&H#)@65,LV_>-WT80=P^AD@VP"RJ+M)%%5^ M%4&,A\ZNP7$TL?$@EAK1)$X9?BE/P=&N(EP8WTZO+V]A3F^G3 M, U$S-NIW)!<-239)R1G<&=-*#U,38[Y>WQ*@EI5V5;55;:7\%Z&#O1[1Y!U ML\$>OGY;93_R]?^ORH9D\#$)7X]S7PN)HX3.OT>WPF1\>- [Z5[LD3AH)0[V ML?^KQ/TDL_OG*9S!X<%IUNM=P ><<&,@E B&C[0&:9?.(]@"YDM/9-X?Q>V) MK6IAWNBDO4$I5@AD KDR"Y!:J,J#,#EH7!!#[:Q$Y#W?@>=W4&4"_2A82K?$ M'/"56"C;7&AA)'H@3XG9T =%%XQ"1&67)G@6U-!+ZVG*2,G[P<*<")36-'&H MQ6:1$WJU,*I04IA R4- U]E6:VMEV .(MA*&S(9L)1S%ZYP#K2O3V%OTB950 M6LPU@@@$5AY(',:V.(0U/XREJ^D<<>SV8Z<3%$S@&+LK/792L#ATBHH3^0JY M_5@4%,-"6*RT=(L,*Z.1MUKELH:PWR@!:Z \L96T76QG$$]#M M?W@NTQVSJ- MHB5Z/@DF-+[1KK:N>]F8S=_PQK+OA%OP"]98$+3;^7*<@&ML ML)D$6T?KF=M 1A:')7TYT'$ [1?6ANV$$[3?HO$?4$L#!!0 ( .N!A5G3 MGP_1_08 #\8 9 >&PO=V]R:W-H965TMYQ6 MN? 2S^9*+W1NKA9T!B-0GQ?/ M\Z%4H4I\!DS!D1,+UNW3H7=[ZF-P1?8EC* MVC/1EDPX_Z9?/D;7+5LK! F$2B-0_'F%>T@2#81J_%E@MBJ1FK'^7*(_&-O1 ME@F5<,^3KW&DYM>M?HM$,*59HE[X\G7 F^)$)3(YI^,*8:;E0N9GI3 M1DK@UQCYU,UH_'3_Q_G=[6CX@=P_?7H>/HYNQQ^?'J\Z"M$U32UJE1S2]7NW(. 3Z&RB.>TB6N[_@$\KS+5,WC>/V!J MCN3O1M*)N,);AN?@*AVCBQ! #EQ+!?C-TE,*B+CB6?YY4(;!%EBO);5E5"9\6@OAB4_9BM:X<=<2.Q9*8N&;:BHDNW.14SBDN M:?/5G&<2;9)G%R:R;._R/__]:JHO1.<'5H[GO46W8T?:^[[OMZ0;KD"$L=PP MO(#NCSH(RI7?!&7J'$OVCU&?11QNJ.YQYP1N:D:3:NV!QH)\H4FV(1OEV_6, MVVH>R1A$2DY-\)S5EI\V =HF#S 1F0ZB,A"W5%AW; M\KW<( R7 VXKM4[ M7KV&Q[Y+G9(J"/IU"8'5==!O/;OI-[=;6DLG">R "VR[J6C-C[[E;<$%#OD" M4EN*N9X7E+P,O>+J+O1CE2S?QU@_PCEEL[(28#G)4HV)98=Q=OY:B"_*$HI> M9 (Y,!>* H*$6#*Q_A1EZI%9_4,;/J=?(D+[E^[ORJ'?60,:R4%?D^WCK-S"=H!%8BBNL:3&6 MMQAG_I"\&M-WC"0Z7.H]#@.F*AE1)G29/3*B]+B@!X)BT'!]RVE.&HX5[!Y2 M<&@PL;QS;B!T-A,PTYN\98[AT109*B22M=:UD0[U@4%K )ORL&6SF2",WMJ) MKGT9LW-$/DI6R.-#$+DRPJ]S'_)$!E@I$%"'-^9"&-ZF\B!@:*N!(\=VSZ\W6@]' M.*=J^7VG/O)ASW?)QSSL-EV].6R[%O;M'8400&6&AN5]Z.$-P=,HD&$("ZUZX+GM?G=_4< =8;/?6SB,M^B9TLO]^M5JO;\=O\4GA#GE^M?\(6@4,H26"*K+;5"UI$Y-?5^8OB M"W-%/.%*\=0\SH%B%]($^'W*N2I?M(#J;P8W?P-02P,$% @ ZX&%6<.[ MZ261"0 PAL !D !X;"]W;W)K&ULK5EI<]LX M$OTK*(UW*E.E4")E^8B/*L=Q:KP[CE-VLKM?(1*2D)" H"2-;]^NQL@"1UV MCMHO-@]TX_7UND&=K[3Y:N="./94E].;.+=X,!C:?BXK;1"^$@C=3;2KN MX-;,!G9A!"](J"H'V7!X-*BX5+W+Z]J54HF/AMFZJKA9OQ6E7EWT MTE[SX$'.Y@X?#"[/%WPF'H7[O/AHX&[0:BED)9256C$CIA>]J_3-VT-<3PO^ M+<7*1M<,+9EH_15O;HN+WA !B5+D#C5P^+<4UZ(L41' ^!9T]MHM43"^;K2_ M)]O!E@FWXEJ7_Y&%FU_T3GJL$%->E^Y!K_X4P9XQZLMU:>DO6_FUZ:C'\MHZ M705A0%!)Y?_SI^"'2.!D^(Q %@0RPNTW(I3ON..7YT:OF,'5H TOR%22!G!2 M85 >G8&W$N3V'Z_N[&_;IZK\WC^<#!QKQ^2 /TF^]=/:,]"F[T\K-+;M1 MA2@VY0> I(63-7#>9B\JO,]=PD9IGV7#[/ %?:/6O!'I&_VB>5[Z<+\T%L0; MN^"YN.A!QEMAEJ)W^?MOZ='P[ 5LARVVPY>T?Q?;R](?[C_=L#1EO_]VDJ7I M&8NUL4]SP:YUM>!J3>^/SRR3*M>58(X_,5[I6CG+H*:9@Z4*=+/*1U)@)!G$ M04^$:4/!N"KP8L0*.9T* TNF1EU$ -)XK>BP+X21NK",6T8Q4K0O MDLT;\LUP=/9_^_\!_11G_(:?ME>3W\AGS9/KQB_B:0&L!!>1^?A,6=$N/F#I MN)\=#J,'1_WC$'&\?^AS=Q29_5D;D>J;DWV MRI;:6HB/$E/I=O8_S=*=9Z-^-AZW=S=/ M(J^1R"G)P&&KSS[.@X:Z_O!"\MY3?FCG'0R*#IN)UXM++I MT2[&DPXA- MH!:I+Z5 QRDEPW[;DJ_'XZ(_=IVG_Z/2T>WX/F6XPU2NN$%O1 MAMXCY\47:!4(.P1L1^'I>+2[379TVE[?OIB))_W#DRQ^ #W^.$#;'T/,#GE MXE\8ZE?X+AN>?;C_BZ[2LS_8-3=F/>'Y5W8%^$/V8I)A02."?,[53" 9\3SP MB"-*,UKQI30UF'DEBSY[$*444_+!3:Z5KF3.'B%#C'1K=@4Y:B$45&? *"5? MP06[XR:?8V$.V2O4&@!>7ST 6Q<9\:T6EMR8 MM]Z"@:56P'7@J0TN7'!9M(2(>.Q>0!"P)AKOIX0#+&_TDX0I291K=I!FR3%,*V4)!9FP*Q?(W#I3^V$LQ!HLWO0R MN!=@\\K#CYN#<+51GO8C\ 0ZPMD$IGV4'9XU.[$Y] BE'3%'*3"O\(UXXC!7 M>>Z@6D)3EB ,_Z"^NDZSW5 ;E#$\5."CU$0P@9!;02F'+]]!_$N]((;Y!(+7 MT$HEM,QW/Y)0H]W09*/]Z;KIR(:\O^?0+".0<2H]E]J[2-(V2=R<.]RKK%'4 MQ/87D?U4Z<'^9_+J8)R<-(G49ZNY!#4K#*-P&#^J+XZ16DHZ)B#R&FB1:#RR MDRVTE1CB=J=HCRPY[)+U%@EB39[=]"CT,0%]I\ 4DE.9^XPA4V&9%3_B[!60 M-O-'$N'='&4?%>9JSC2)M@5*'S&IWL94(N M-OFYA+--TC ^9N%#()8KDMT[_&TE0 VX26G+@1BFIH4<"_V.IC'K.CB"MQ< M8$\I\,KJ4A:<>-V+,W_^;#-FPW,>F?<^GY2B#]$&0^Y)+[N/MTZ2TR852!D^&74)B+.NH'-DN4YHRMX#M36C2S/;37S0AR:B M2R::HAN"JF&09I)6/\-)@3>WJ0B:ZTZ;:()."GP,B/8"_6YO$S3O([5]%!&5 M/8[>A;"YD1,,RD0OQ59R>371H81)RVP]^8)3)#BDJ1A4;'=&T"9XGY/'Q(=X M^^TM9@2Z*5CZ.?E70EL[([@?BX@J8*G@P"!?@&QM(<-W 2S)#HOO5)!0D$=N MPS5-VM$4RU=-,H$R8/X@DHAB]U,?,P8 DP,9N-XT,;*TKFJ=G,-8XX,9R&,Y]0')9X $+YI#E!;-3SL@]9<+!PIL,#, M& 2@-RRS\"I0)F8TDDWP=+]S,\4LB%+LT ](<[@"OQUU)S1XJ%7H*M[6A#WJ M$NYNE#"S-?MH-%J^F2IS78(P.A5&.JF6(@RZ&'@OW?71MBL]?KJ.1I96)H$M MH-B-+-?>!%BWH9.2@::4&L^XD-ETLH#+4O()S'Z (2=@Z/?0YU Z1:;B.8<&R;8BQ\(_31KY]&.81N_>5MAFM)Y"]O>_OA" M;XHV@4[A:;CM5V3B09IDFW2?)>E^MF^&#^Z_0S1]BAG\ZO=:3U_7. & "M\% M?[[[V4U&P%FUF1/ ':B=OG88O= &J]+W,;C\VY-4)8 /BK8 /E[=M06 U;TW MSM]J7LHI<-%GP&<8R""_QHZ3MMG%F]OMWW E+TN==SP)B1P.][9K<@WO>B;H MMSP=1RBVA=YWFMHFBL[O/O+@.3>P^I[/*,'UVYWRF5 0A2%M MC&$5#D_((T;RTJ=K-$HIK5YW<7C=#6E00$B;77$T<\5+NV%YQMNU9Q)O*RK[ M?E!^CDNWYOU"TJ@/E;C$_=8OE9 ,T_Q&5+93;Z]\H6F34(F-DDTD+7LU/HBU MU+8Q,+3(0 086B]'7V;]U(2TU7X)QF?X-4[8[?2+"4"%H 6A7RPKN[^N?B:8 M[2?H_EX$=@[LX!M>DW'-;&UW^_Q.?B7[/N@/HM]5*FC4].L1&@M>]3^QM$_; M'ZBN_.\RW7+_Z]8=-S,).5^**8@"*XQ[OG:B79.5W0Y%]#.#2Z M]U.M77.#&[0_VUW^#U!+ P04 " #K@859,2Y(5(P# !]"P &0 'AL M+W=ONJ)*,%44-14HZU>5DI+4*A6Y&WC>V"T(X\Y\ M:FEK.9^*2N>,T[4$514%D=\7-!>'F>,[1\*&[3-M".Y\6I(]?:#ZMW(M<>>V M*"DK*%=,<)!T-W/N_=M%9.2MP.^,'E1G#2:2K1"/9O,QG3F><8CF--$&@>#G MB;ZE>6Z T(T_&DRG-6D4N^LC^GL;.\:R)8J^%?E7ENILYL0.I'1'JEQOQ.$# M;>(9&;Q$Y,K^PZ&6]2<.))72HFB4T8."\?I+OC5YZ"C$W@6%H%$(K-^U(>OE M.Z+)?"K% :211C2SL*%:;72.<7,H#UHBEZ&>GB_O-ZN/JU\?8+W0S3'+>J) F=.5C]BLHGZLQ?O_+'WMT5#Z/6P^@: M^M_T\#K&ZO.7)?@!O'X5![Y_!WU,6 M-N68DS[]#RO+*= 0HFE22:485,)[D M58HD+9)'$*5I' 6$I]A_2DN6:)HVS(HSO W@G4%!(B62,[Y74%)L^8Q(>@13 M(#B:ZUC1&=%@)+ EJQ-?AK @BB768GH9V?P249263Q3L1(Z7BX*?+-N$@39$ MI1!&_7QK$^*%=__[]TLF*3WI%])G&W+LPW*WPP<&Q*[I M"W(@,E4]Z9'73VT0^A>-1F'0MSB._U$2CAW4P\$##?ONF.R,)M?2$)]/WBBZ MK/5??3LE_7POO)3QQ4EU84,,O3>=K3>,^@=[ ]&P4P,WX ]'07M]GF!YIUC] MG-] .)SXIU@OWX_W^)+\CEMK.EO?U2/4L7@^FGXC<,WP&<[I#56_X9N2 K(>] M>J-%:0>LK= XKMEEAO,QE48 ^3N!SVZS,0;:B7O^)U!+ P04 " #K@859 MH#Z6 2($ #V#0 &0 'AL+W=O3X]]V5',>\)!Q< MV_MB:Z7=9Y]=:?4RVDCU5>>,&?*M+(0>>[DQU5D0Z#1G)=6^K)B D954)34@ MJG6@*\5H9HW*(HAZO7Y04BZ\R"*+8:>Q?AV66"^E;A#\XVNM,F M&,E2RJ\H7&=CKX>$6,%2@P@4?@]LRHH"@8#&WPVFU[I$PVY[B_ZKC1UB65+- MIK+XDVO"W,G-;ZR)YP3Q4EEH^R4;IQLE'DEK;639& .#D@OW MI]^:/'0,AKT]!E%C$%G>SI%E^0LU=#)2S^Y'@0%P5 G2!NC2 45[@$[)C10FU^1* M9"Q[:A\ J999M&5V&1T$G*?&)W%X3*)>E!S B]M(8XL7_WBD#BAY'0C+Y$Q7 M-&5C#^I ,_7 O,GG3V&_=WZ 9M+23 ZAOX?F8:#9?'%%PH1\_C2,PO"<[ $F MBYS!@OI+*FX>B5P1 _)4EA45C]9T<*Y)*H66!<^H81F4X@,3-=/0**"#&$DJ MINS^(%)&EH\6HI(;I@@7&:QA]4@P33P%(\W64-,PM>AW)0O8%;A8$]QMLKH M.TRI,-J!,)6" +L#,GN=!3@FC*8Y]%12&;H$D&6M(1NZ]6:5$-#DBC%"148$ M*)#2+5F&2Y; @I-+X+Q=D-VJS3"D-[6>_S%4_,3? M,7*[9U*?6PXC_X0(@\<..V'8/_+BK%?E]$*\=.J>%G7"C:K=_OW 6]@&U MY1J#QQ M?V427]95*;4AFJ\%7P$/6*=NQX<W#50AQI4>/(2M9J;QEN M'>ECLLDY5 ]-4UD+8^T4B4Z/CDEX@I_XR-9+&![MK4'_?PHNW@7GE#\:77R$ M>$U@@_\ZL+>WFDY<&_GAJ(9-0-%/#^C?FJC0+L-!$U?R5ER-,9Y,*>,/[BB@ M!1Y+0%[)TM6$/>UVKO'@<(<. (9#]#CLNG7IQ+A3J4"QDB+#(^L)D<8-H1J5 MG\^O3R[>I-8L_T/<^D@K>9*-=]'ZG8H:;MX=6@MK+HR"VS$H:7@%M*Q E"FW M,!MN\N_(W<"E[<=(OLS=>TAB_1SB&)\Z9O$'9O5%^EZ[[@6=NSAX7]L7!]Z@ M8/;=M;SM;1\U%^XNOU-W+Z(;JM8<3J:"K<"TYP]./*+<*\,)1E;V9K^4!D*U MS1P>9DRA HROI#1; 1VT3[W)/U!+ P04 " #K@859[9DU&(@) !&*P M&0 'AL+W=O"L;BTUE>5(/+<]MWU5R>UXNN+"I]U9!V,9OES<-;7=;W%P,^6'=\ M*R;3SG2<7I[/\XF^UMU_YU<-6J<;*J-BIJNVJ"O2Z/'%X U__38R\^V$7PM] MWSKOQ&AR6]>_F\:GT<6 &8%TJ8>=H9#C<:??Z;(TA"#&'RN:@PU+L]!]7U/_ MC]4=NMSFK7Y7E[\5HVYZ,4@'9*3'^:+LOM7WO^B5/LK0&]9E:W_)_7(NQ^3A MHNWJV6HQ))@5U?*9?U_9P5F0LAT+Q&J!L'(O&5DIW^==?GG>U/>D,;-!S;Q8 M5>UJ"%=49E.NNP:C!=9UE] :.-@-$^ZG]/P/TD MOGR]^4"X(C__E K.SXA'DESK"8*I:Q%*5H6J(\-Z-J\KVUF/25X1O.IFWA2M M)HAW#8N\)$6U3 :WI2;=-.],C[[+ MRT7>Z1&X319EWI0/Y/8!PYJ\ ].\>K"")FM)5?QI*-_I:K$A/%PTD!=I$>0IR1O( MW$QR,].R;?4\;XQ MPLPAP1D416@=U]TQICCL6Z,\2$-LIYA13J=ST!I&>ZZ MP6N7EU8&P]!X&RQB6*$URQ^,".5BI,FL;JS)*X)=)$C48&O47:EP0CZ9_5RU MMK4P5FUT:;=H6+>=<8!^ LA6NC-C^02)'<-F_K!N8&-XS,@PR6?U8N4Y9K#G M,M3%G9E@>@M7@+4B)P0)U0YWTT9K*P]VU.AC\X@V>80@"]2WNMDD KI-;"/L M/\H.DG7'=2XQES;_%\^/(N[W,N]JLUV8ABQ<4*N;7VS MWG!KBIXU)SRZ@R6=38),J!S+W>@C:UZWA0VK$;+YVK9[O'7C8QNW'3_#MG:: M47,9'8:18&=?0::Q[T@H*#2+667\6^=("JLBOG;%-AS:=0-!32BLP^7$TF;R M[.#/&VL>MW)MAJYJ[.JF]:D:(2[-UO9K#:BH9W_)PS/S]2H" B_6V.2F1N2W MY-O:O=:4CHC@@K(L=GHB3J5,G Y)5:*8240EE+,5&/8KX]12>2"I2 MN6G+F":JYR%H'/$M-5WZ1L0XY>1C4\,AYTT]+KJ>4DI3WA..J$K9II7):"?5 M**)2)# 48KF:4#+1%4*HM"Z;CTPMP.[DMG2LOSU;,.7U M"9HE@?629IF"@\ 7-#DNH?4K,F[@&*LHKRM?%,FHC)( AT0*OU=D7M^Q%>95 MD#!(+/VH<&6B)IEOYBD:\U[K?C>/^2O',DSTOQ(S5L]-L5GQ:?+OV\Y MJU0TBUU7-.I)M^V0/P)KFD5ISQY>ER7IFB.(KW?VQ;)#"OE3\@5F6VGX4HQA MFI0RSEZ,X:[G&X"+KOASB?&0*E#^\FI2H.:X&^VGF"S=.QQ<\-X@4I0_R\N+ M,N7'* ]%,_-CY3&W34Z!,UXU)DJ[!TKF98Z2;O*)_F-1S&V!ST>C(AS @DH6 M^;W2ERB01P+45" ;O/3SW:*QF-0@YL[=7Q5!0.5NJ6)49)'3$5%7]R/"!:-, MN<&>\(1RU(TUE[+(;XL2Y@UDZHASI(J Y1B-8QDP'Y?_I,4R7^&Z# ME)SXUN "]LA\>R0QBF_L.^VAG@? 7O)'L!<7@%J,.3U ,Y'P&H*-Y3PDPG/#CEZ6Y, MQS.$MWH>^HJI#$0)@E/X018SW_4BP%=M-.@C84LCMA\^+_QRL)0,GD\@/%<[\DN27G2C-GHVR5.H'8Y3Y MTH6J?R#E<.X+_-+/G2!+9H 8:;;5@V3O!BVR G/+2X(3FMR"91P5*/E[&$N@ M5L1Q (LJFLK 9M.4A6RJL@")Q!2M?RC&BD0"=[_/QB[O[^/;=<46:*@7!ZN(2S)JZKH]YE;/\]5QSA%,'V8*T(2%DY MD(/CB)(ZQYB$9NGV)KL,5)12B9(5!%MPD)CW-87'".5>(=1FL1O%9< -B(YG MH2U@U"0-.#>- [T<^OEU#UH%8EHF]I[L:!Q!F"#JT#X!T[/QU8:'WHI M!;B3[L%>R(3245F$WA"KSA8EE$71DS!7'%/!7?QO%7.]--M*S\<*L,ZYX<)I M#R>^0X(NDXA3<2#4A5JU([>_Y/.YL$MD,5>X!5%/MR)A5]U9>!F, #% M;!9Y+O0R!TE?&A4X,?% #O&E40@5/Q/\OSY?OB#_T-6'0$%.MVXV../41>*V M($?Q_LN/B*4T2;+=!5DHXR:]=IB6JC@!&"]1A0(.;.-0(J M<-SS0260N^LQD*$ ]GU6/49529@?K>;R)70-[,+YC1$H#QUYA 7+3ZO'0M*, M^_D$12!0I4/(_M@*XY=C$:&R17_]MU-&69KN-/2Q["D? SK$3AM[(,33_G[" M'F?N>6I;312@K=/6,1R8Q,#_0%E_J'\-U?G:.]X>,7> MZBPSOQZZ?V;W?N,?# .W]*BOT;.K,W"F\#GGO)D4,&FIQUC*3A(U M(,WRJ\UEHZOG]DO)V[KKZIE]G>I\I!LS >/CNN[6#<-@\^GLY?\ 4$L#!!0 M ( .N!A5GGIG%)3@, # ) 9 >&PO=V]R:W-H965TP7]HUNG#B0[Y06 MU<&8&%2\;D;V31V7GY OV[0PQ^@9_ @:KU1<%L76+RU]XAI2S<\TKT.SP+.!" MZ(?Q&;RH#3^R>-$O"K]!CS]&-P?J4FU9CD.'3HQ"^8S.Z/.GH.=?G>$>M]SC M<^@_S?T\^G2VN(6@!Y\_I6$07L%_\08SO4%)Y2LEUAJ84J@5Y(*.LM)8@%@! M*B+-W"Q-8'YPC2]T:ZN.VYZ;)/W.RH^2 M0Y;> R5N+SF%C]VL'\)":%:"^"B[K^%$L9OTLZX@<\/D53#.<[G##L?_26$< MX]I*\1?U' I+O=T72I$?=@1QY@:4AJ,=%8O9$&:[U8F;B'2S4W'@AGX/[I$: M$Y2<+7G)->_DO55T>_%I5D.W3Y7X<1T$]-./3\0IE4=\* 3V/I.OL?53-\JB MCB -R%=P%'QT_7F=+E:A7-M>;:IC5^NFH;72]CDP;KK@JWKSEGA@C?&F90%(9('^-/R^ETD@:XN]ZR?[&YZUQN MB809+W[33.43Y]1!&2Q)7:@KOOD*;3Y#PY?R0MHOVC2QPZ&#TEHJ7K9@?8*2 MLN9/[MLZ[ "\EP!^"_"? \(7 $$+" Y5"%M >*C"L 78U'&3NRU<0A2)(\$W M2)AHS686MOH6K>M%F7DGUTKH7:IQ*EZ0![26: '"OCF6 DJH3 LN:P'H([JY M3M#QT0DZ0I2AGSFO)6&9C+#2VH8!IZW.M-'Q7] )T"5G*I=HSC+(>O#)?OS9 M'CS6.7>)^]O$I_Y>PA^I&J# ^X!\UP][SC,['![TI?-_ZO-7JS\I1M"]@L#R M!:]Y!7V7W="%_72FMXUE15*8.+IY21!K<.+W[[R1^[FOTF])EKPEV?R-R)[< M2=C=2;B//?ZNA\0%2WD)Z/@;E_*D[QX:BI&E,"-A'?NGKN=&>+U;X'^CAN$H M?!J4] 6Y9\^HYCV";A ^1C6IXIV&5()8V4D@4^PS_]0; MS[P>?Z*'4S-+'NF;R79)Q(HRB0I8:BEW\$GW2]%,B\90O++M\)8KW5SM,M<# M%H0)T/M+SM76, +=R([_ E!+ P04 " #K@859!D%O,D0" "*!@ &0 M 'AL+W=O&6RY8! M4M)M6AZZ16FW/3MP *O&9K8)[;^O;0C+IH1*>0';G//Y.T8V M(HEXHRAAL!5(-E6%Q."SM2E,HLN$E4XP(>0/VLMT+/W(&2D0J8 M))PA 7GLK/SE>F'B;< O JT\&2-3R9[S)S/99+'C&2&@D"I#P/IV@#N@U("T MQI^>Z0Q;FL33\9'^U=:N:]EC"7><_B:9*F/G@X,RR'%#U8ZWWZ"O9V9X*:?2 M7E';Q88?'90V4O&J3]8&%6'='3_WYW"2H#GG$X(^(;#>W4;6\C-6.(D$;Y$P MT9IF!K94FZWE"#,OY4$)_93H/)5L]/%F(-"CP!EA!5H)@5D!^MB5C%RE=S!Q M;MK3UATMN$ +T3UGJI3H"\L@^S??U6:#7G#46P>CP!^IFJ#0OT&!%TQ'>.%0 M;FAYX07>N3)OT/X%;5A&#B1K,#U7=0>=GH>:[V8I:YQ"[.@/0X(X@).\?^?/ MO4\CRM-!>3I&3W8-!>1[^]FM?ZJ-5AFOU?^'W.F. W-,)8R(S0:QV2CG.V>W M5\B-0]^2FP]R\ZM.[1&$_HKP!;=QYEMNB\%M_X5V7OL>B($PB"KE.]28+_3I%U_FZB>*U[39[KG3O MLL-2_RQ F #]/.=<'2=F@^'WD[P"4$L#!!0 ( .N!A5E'[_S HPD #X: M 9 >&PO=V]R:W-H965TDF7-9';VBRV!0)^O M7S>HTT=MOME<",=^E(6R9X/KM:&337)3<#G4E%)XLM"FYPU>S'-G*")[Y M0V4QFHS'QZ.22S4X/_5K,W-^JFM72"5FAMFZ++E978A"/YX-#@;-PJUG%5^*1+C[:F;P;=1*R60IE)5:,2,69X/IP=N+8]KO-_Q+BD?;^\S(D[G6 MW^C+378V&)-!HA"I(PD<_Q[$I2@*$@0SOD>9@U8E'>Q_;J2_\[[#ESFWXE(7 M_Y:9R\\&;P8L$PM>%^Y6/_XNHC^O2%ZJ"^O_LL>P]_C5@*6U=;J,AV%!*57X MSW_$./0.O!D__7[.(^N?E\G21L^OF*74R3FX2>S&ZOD^O/ M=U._\\5,%S*5PKX\'3E80;)&:=1X$31.GM'X&_NDE%BLE/@E]0-V>'!'IN,)T<[Y!VV(3GT\@[_R9!LBT-0<[1=#57;6UOQ5)P- M4$Y6F ,J8WRQD(7D M3MA6\?M9TJ@]87RV3UW!E9,IFQG]5:3=(?91 MEM+!MF>43F>M%+\E ??EPBCV"2Q7T,HEGQ=B0W?RJ3TU#$'TAW'2"@J9185E MW&V$A'$C&(0+J?C"(2JH?T]P#Z)8$4D*8W#$:<:MSU/4%ET91I6(38@_ N;5 MPH<]O[_QN3+Z06:DD"WJHF"&JZ6@Y NU1.*%D6JY1[O2V@B0M-OS1CM3>[:E M;V4I+7&WWTG]P0G%52K\,8HPV!-FZRH<]]Z+-%R%-"4A+ES,K METHNX$VKSI"8$*ZXIVJP5NC4)ULJ[^.]\HA+7$!:+Y/WPZ3)XLN0LEL1;4=V M;HSPB&M0%K^OX;,G_P/BF^ER0\&'88?,'D!@OB'UBHXN(,3)@ M5EW6<$H;1Q6 M27Y/FSAAP(,/L1C,F:^@=$N*1U$M=JW<*<'E)R'1.$(4Y@, M0A+7)/MBSC+I^6@-G\S51G$8J#(\L'GM,G!3R#=R9X"\=,5*/0=2_A/Y#--1 MWX<>TW7PVTAQH EN'7Q;]IB5$ASS!"]*OFJ13$\7?&X J5!CF2A0^ @V;9=P MCA<%;U@:;"DHFF6EE0>9+8ABI(K M3(C;:&;-:W*EG\@^Q:\UY08D/ MH';H69:G 7(Y?Q!L+H1BJ!G,T4TE=B9CVQ!09I\UJ.3@U7H[S+EM4 DW,5( M93T/ 6A_10@W%4(C@A3;5>0"+""X:&G!.(XZ"ZZ3PT_9S?J[!AI,@!L*0'EV MC;78%03+I.7+)2#H6\4V9N[L#'K(%B*LJC:5ML);4?)OM.S#J3H&PU(F4DEM MW(8&^U2XI6):"6XP&V3$QNP/KFK,/AC*F>"PEAX.=V$EYHV%>RCW%F&LI^&M MG>Q#0IX1T(,8S2C5&"+\9QQ#L<#^A M22%[8H;?A@^'>VTS_4LVI=SF;($[L&W5_H0R/_?5BM<9]>V?CF67D"B7\.RK M 5%!"T&U&HP!4?R?U[$WP/YLB2:"HQ7Y&*97TH'GHGIV\B-J M1 ,"U[4CG8_#^^ETU@YU762[? !B&K<6]R3**/CM<0:>"SRFIM]GOCGX$F-Z M'*KH23]4)0>9$S;Q_WL-DTD)N$3$J:Z+-*+,D*)"\ RQ" BFV'@M%)V?P5*3 M-HP,L+@ Z.$4)$=&_UJK,.3Y#,02W2TRL$N023.]<+HK\/[%@7H]!J< 7S]V M]S),TW_+C(%L@S0:57P *59]6&WCZVF VFTX#S?H_1,[&.]_:*EC@W4AZTF) M-WAY%[;26E<+-RKV)JGBY-(?L=S_DAOL\&4&= ,57S%"Q0"'SD4!@#H>JRRB M$%5--TJ&O@Q271/I<3N1'N\<$V]AK7(P]0:7!62F/Q :K? Y M#1C8-H'^0Z+#A/8@2DIB:,,4JG=M^GLGP:$JXP:YNM#XM]89WDV3BY9 Y1.E MW='[BK#>O>Q)[MMCI'Y__'H/72G<6V[;\>K%'4HK99,WXY=OV4U)HV.T'_QX MVTU[SF\IY(S(J=7]T!SV!XW7?^HB$A(?S.U4JWV MS&$ODGKN0O@FXWWOR,9N>M&Q80.+@OV5Q(A88;%(3(.NZ,U:3UY#E^=HWT^I M/%<8H'Q?Y9GV/;KM@0VI-#Q%G9 *$0!$G&6@P;]*F5MK<]1[I^]?.M O%R06 MAH?7^^UJ^^/(-/PFT&T/OZQ\XF:)>S(KQ )'Q\/7N V:\&M%^()H^U\(YMKA MONL_YNBFPM &/%]H],7XA12T/QF=_Q=02P,$% @ ZX&%6?O$/XQ$ P M9@D !D !X;"]W;W)K&ULY5;;CMLX#/T5P2V* M+F",[[=I$F F3='!8BYP,NVS8C.V4-G*2LJD[==R?-%NC#/NR+)5'D MX2%-@IKLA?RB:@!-OC:\55.KUGI[Z3BJJ*&AZD)LH<6;C9 -U7B4E:.V$FC9 M&37<\5TW=AK*6FLVZ60/%X?T3_T,6.L:RI@KG@GUFIZZF5 M6J2$#=UQG8O]1SC$TQ$L!%?=E^Q[W3BS2+%36C0'8V30L+9?Z==#'D8&J?L3 M _]@X'>\>T<=R_=4T]E$BCV11AO1S*8+M;-&X M6)(/^?TMF=_?K?*K^6I)/M^L/I+YXW)U?[O(E^3MBJXYJ#\FCD:GQM0I#@ZN M>P?^3QQDY%:TNE9DT990_FCO(-F!L7]D?.V?!;PO] 4)/)OXKA^>P0N&# 0= M7O!;&3@5>(\;GL8UW72IMK2 J87MHD ^@35[\\J+W7=G6(<#Z_ <^FR)W5GN M.!"Q(85HE>"LI!I*;)0G:'>@2,D4K2H)52=>?R,5B$K2;]:Q]74D?D$9VX>6V:RN-28 M3#7*@YG-/L:D%4WX162V;6Z'X.# M='A$7/6S\UF]?X'<4EFQ5A$.&S1U+Q*L -E/]?Z@Q;:;I&NA<2YWVQH?0B"- M MYOA-#'@W$P/*UF?P-02P,$% @ ZX&%67KS#N+S P F \ !D !X M;"]W;W)K&UL[5=M;]LV$/XKA!H4&Z!8$B59UDGVGI; F51)>DXV:_?D?)5N19]@JD0#M@7T3>B7?WD/="7G_# MQ6>9 "CR-<\*.3 2I587EB6C!'(F.WP%!?Y9<)$SA:186G(E@,6E4)Y9U+:[ M5L[2PACV2]Z]&/;Y6F5I ?>"R'6>,_%\!1G?# S'V#$^I((Q9)E6A#"^;'4:M4DMV)SOM+\K]XY[F3,)8Y[]F<8J&1BA06)8 ML'6F/O'-!]CNIP08\4R67[*IUGJX.%I+Q?.M,"+(TZ(:V=?M.30$0ON( -T* MT!)W9:A$>0;RU[ZET*@6M:*M@:O* #UBH$=N M>:$2229%#/&^O(5@:\1TA_B*GE3X>Z0ZQ'5,0FWJG=#GUB?@EOK<5YU V\8K MO5Z[7IU-%W+%(A@8F"X2Q!,8P[=OG*Y]>0*U5Z/V3FD?WA1/(!5FAY)MT$X+ MOWT34MN])*\=T15\#J+TQH[W&RO6F-U[O-VH/59]I@D7ZER!R$GZLI-ZX1EQ MJ&=Z/;O)L7NF%_;(Z(FEF8[&>X!W[%],PP] M,N.*94\)_?NT__Z0+IEA=XS5BYPO"3NVHS;NG57\O M[W[OL1DM91!\J^ HPZN#%1$0/)^:^UYP*8]0$ZE2K-@0'^K*,?#2OQI_Q@+B M5-7D0X%W6[:WHH7UCJ4O2,9<*O(1[6/\O<=[4.Z(1Y:M@3QTIATR0Q5RC7E1 M< 7RXH M\['3.<9WG,,JW"OK:UF#FX57%VVWYS4X+7%HVH&W3S?<_+\: M_K1)<(85QJ1.<#(6_6[8H*AK[XO[_G^_".#;RWY]#0B"%L4N[1V6 /T^Z_[+ M5;1_[*X=_$,>WW=M+S6KT2WE()9E3RC1.>M"58U3S:W;SE'5;;TLKWK66R:6 M.L(S6*"HW0GP92:J/K B%%^5O=><*^SDRFF"K3,(O0#_+S@FP);0!NIF?/@W M4$L#!!0 ( .N!A5GZPVH'$P, .D) 9 >&PO=V]R:W-H965TV7FF[9Y,HX*MC MI[8#[;>?G$#*.N#:[6';2V3)TL^2(EOJ+:6ZUW, 0QXS+G3?F1N3'[NNCN>0 M4=V4.0C<2:7*J$%6S5R=*Z!):91Q-_"\MIM1)IQ!KY1=J4%/%H8S 5>*Z"++ MJ'HZ!2Z7?<=WUH)K-IL;*W 'O9S.8 +F-K]2R+DU2L(R$)I)012D?6?H'Y]& M5K]4N&.PU!MK8B.92GEOF8ND[WC6(> 0&XM D2S@##BW0.C&PPK3J8^TAIOK M-?IY&3O&,J4:SB3_SA(S[SL=AR20TH*;:[G\#*MX6A8OEER77[*L=(]0.2ZT MD=G*&#W(F*@H?5SE8<.@X^TP"%8&0>EW=5#IY2=JZ*"GY)(HJXUH=E&&6EJC M#M8NGP5[ ;[%IDM!OD, +HCUX M81UR6.*%;PMY6Z054+0=R-Z78YW3&/H.7@@-:@'.X."=W_9.]K@9U6Y&^] ' M$[Q_2<&!R)2D3% 1,\H)$]JH F^%T7@G8JDPQX0:DE*FR(+R O6QUNU>H103 M,UNS3&\+;O_Q!^\Z@1>>D/^%8I7(*:BZ4.J-+U04^-S\NK&FE[ 3OP7?/"" M#W];_T+D!?ZM%7F+](SJ.8&'@N&/M7_\^*]G^27%JPY/^!ZI>^P?:2&2>N<] MZ?J-;K>U(; K/SC9*_&#=J,=M5]E-5Q0QNTS=8C-Z5!CCHBV9<\,@W\P5[?- M29/<8.?4!9:CD ;T5MW-8-?4[[8;+=][M?XNN85IM7:JER[BHY)+10U@=YN: M=4J?7G]&HQN&?^YI(PRZ.[5OI*'\.7U;BBWPVHTH"C#4%CJF;XQ!,.*9IZS:.60U0U M6%2,D7G9S*?2X&A0+N[P0]02P,$% @ ZX&% M65,G--A9 P J D !D !X;"]W;W)K&ULW59M M;]LV$/XKA#IT+6!$+Y9L.;4-V%G6I6BSH'8W[",MG2VB%*F15)WLU_=(6;)= M.T:VC_LBZHYW#^^='&^E^JH+ $,>2R[TQ"N,J:Y]7V<%E%1?R0H$[JRE*JE! M4FU\72F@N5,JN1\%P< O*1/>=.QX#VHZEK7A3,"#(KHN2ZJ>YL#E=N*%7LOX MS#:%L0Q_.J[H!A9@OE0/"BF_0\E9"4(S*8B"]<2;A=?SQ,H[@3\8;/7!/[&> MK*3\:HF[?.(%UB#@D!F+0''Y!C? N05",_[>87K=D5;Q\+]%_]7YCKZLJ(8; MR?]DN2DF7NJ1'-:TYN:SW/X&.W^<@9GDVGW)MI$=XHE9K8TL=\I(ETPT*WW< MQ>% (0V>48AV"I&SNSG(6?D+-70Z5G)+E)5&-/OC7'7::!P3-BD+HW"7H9Z9 MWMTO9_?O[^8?;\ELL;A=+LB;)5UQT&_'OD%\*^5G.ZQY@Q4]@S4BGZ0PA2:W M(H?\6-]'NSKCHM:X>701\/?,7)%^V"-1$,47\/J=LWV'UW^IL^=\;"#B\Q"V M1ZYU13.8>-@$&M0W\*:O7X6#X-T% ^/.P/@2^G2!/9?7'(A5S7[]*HZ#_COQ? M5BP:^DUATUR[*ZK/F1Q#W.SO\F M_47#NN;D(UL#F96R%D;;51GV#W5#ZX#Y_.92T1R(H"5TP&%"GH"JO24_D;@7 MCT8'=-0;#.,#.NRE47)1/DZ"(SJ(1^3&C2@,M0+NK-(%J_;'AL$/=K3K*!R< M\-)P>"HW>I'J,$Y/>.$@)4MI*#\]?>]%THO#0Z_[Z'5X%)51%%^4#T?I452B M<'AA$B3=)$A>/ G@L<([#$N('F;?&ULS5=M;^(X$/XK5G:U1Z4V[PG0!23*MG?5J2TJO>YG$PQ83>R< M[4#[[V^[F6_@#.9>?R,/?,X'FRY>)%K0A1Z36(FA\9:J?32LF2T M)@F6)D\)@S=++A*LX%&L+)D*@A=Y4!);KFV'5H(I,T:#W#85HP'/5$P9F0HD MLR3!XNV*Q'P[-!RC-#S2U5II@S4:I'A%9D3]D4X%/%D5RH(FA$G*&1)D.33& MSN55J/USAV=*MK(V1CJ3.>&CT#+<@29[%ZY-O?R"Z?0.-%/);Y+]KN M?&T#19E4/-D% X.$LN(?O^[6X90 =Q?@YKR+B7*67[#"HX'@6R2T-Z#I09YJ M'@WD*-.;,E,"WE*(4Z/9T\/D]XNK\>SZ"YH\W$VO[V?CI]N'>]1YPO.8R+.! MI6 :[6Q%.\BK M(] -E'=YRIM437;$$6S7@+Z%4?L73 M/X8^FD$'+K*8(+Y$4 C1"^+IOI2I>D,9K+! :DW0A")SX%-N%:(2Y7:)/GWHN;;W^7___YIW,5E<'+&<'CO>$ '*=O#YT'_I=_U*1$3E M/N"1:)VE;%59?A68J0MH_1^C3@6-]EX3V#D!FYKAN++=8"K0,XZSO=NLV*XI M;&L^1$]$)*CS1K"09S7S0Z:D@LT$;N?HALQ%IHNH+ 3GW N#"O,C\GVS'R#? M#+LUHV.;OE!"LWLZO<:*?=:ZN6&9K1;M%KC MIM$:^OHF]XW M<(&#GHG4F4*OD]<43E 8*XXV8&U#/Y'D$4T,*DT,3M;$:(W9JM02$*0LT:S@ M!>/L8K-+(%:+]3=5G/J9\5T&8NNH7-;#12\Y1V36B5EGX+_;J;VS5M_P>GJMNO?X5X MCAGVVYK.JMVG$B)6^:U10@%F3!57J\I:74S'Q7UL[U[<:N^P6%'0_I@L(=0V MNW"DB.*F6#PHGN:WLSE7<-?+AVNX7!.A'>#]DG-5/N@)JNOZZ"]02P,$% M @ ZX&%6:3&ULK55MC]HX$/XK5GJJ6@EM7H 6T#:W>ZI^V&[J]+>W5>33,!7Q\[9DT+O MU]_8@9 V%)VJ?DEF)O,\?L83C^<[;3[;+0"R?2F5701;Q.HZ#&VVA9+;*UV! MHB^%-B5'\D40.4$@(4/'P.GU!>Y 2D=$,OXY< ;MD@[8M8_LO_O: MJ98UMW"GY9\BQ^TBF 8LAX+7$C_HW3LXU#-V?)F6UC_9KLD=I0'+:HNZ/(!) M02E4\^;[PSYT -/H!X#D $B\[F8AK_(M1[Z<&[UCQF43FS-\J1Y-XH1R35FA MH:^"<+A\>'_W]'C//M[\=;]BKS[RM03[>AXB4;N$,#O0W#8TR0]H9NQ1*]Q: M=J]RR+_%AR2IU94<==TF%PF?,KQBPWC DB@97> ;MG4./=_P?]1YKKP&/3J/ M=B?CVE8\@T5 O[X%\P6"YPIP-H@?%2UPKM.?&7Z5^^F";1\ W[5>_WQ/]-NQDU2Z_!^'Y]G^WZ MYQ[#-G*GRZI&@KG*,F>O=[R&HWSAAI=!O&_8B3HA38F#W. M>-*+I9.DM1^!2\NXHJXH!(,TSFGT8J\?+39.^QJG)X4T,FD@*E^L<=N9'_J$ M@K;O>^2K\3A]W8_&@W0V.\6?<$L_604TC)73EK>M;Y3S_&\:F$[VH6$]PMEX MV%\F26>M_7#Q3YP.1M.D&R"!IWTX-PG"SF0NP6S\_6.I:W24FR'=1MLK[J:9 M[*?TYGY\Y&8CE&42"H)&5Y-QP$QSYS0.ZLK/^;5&NC6\N:5K&HQ+H.^%UGAT MW +MQ;_\#U!+ P04 " #K@859)@PG75L# #>"@ &0 'AL+W=O,@60/F1Q 4C^^?JA;[O%.R'N54ZKA1UEP-7%R MK;?7KJN2G)9$]<660V*"DK*5=, M<) TFS@S_WH>&7DK\)71G6KMP42R%N+>'#ZE$\Z#M:% 8( MW?B^QW0:DT:QO3^@?["Q8RQKHN@[47QCJP_[&K9:.1 4BDMRKTR>E R7J_DQSX/+878.Z,0[!4"ZW=MR'KYGF@R'4NQ M VFD$?OI]J\5W"V6L/HX6R[@U1>R+JAZ M/78U&C!B;K('F]=@P1FP$7P67.<*%CREZ;&^BXXUW@4'[^;!1<"_$]V'T.]! MX 71!;RPB3:T>.$O1WLJR!HC.HUANN1:;4E")PZV@:+R@3K3ER_\H7=SP<.H M\3"ZA#Y=8=>E54%!9*;:6 *$IY"RHM(T!4HD9WRC8$NQL7(BZ2G_+UN8_P(J MF%\BRJWE$P69*+!]%;RR; 6,@\Y%I1!&O8:7+^+ "V_^^/HEEY0>U2!@!8DU MAF6*Z*GX+6;FY]*F],Q?V-%_Y-SBZ\DX)HPVS"L(XI[G>RW"H!<-HPX*TJ.> M-VH+!EXOC+QG3]\W^X29"W^@$E]DV%\VON5*XTUCC5A9W[_9U^93!#_L#<*N MXT@.@_BL7<,>==F&'/NPR#)\P4T_X&.8W /9$9FJCO3 ZZ8V"/VS1J,PZ%H< MQO\K"8<&ZN#@A89==TQV!J-+:8A/)V\0G=?Z76NKI!^?A>V M=?3Z4?=BKR#JMVK@"OS^((#W3Z[(8GG'6-V<7T'8'_G'6,_?CS.NV1M;8SBX M@*)))9EF6(M51O)[\/A.Y85Q!03-4]?IO!P[(>IJJ#UIL[02S%AKG M(;O-<0"ET@@@/Q-"'P[&0#/23O\#4$L#!!0 ( .N!A5E)4^QHP0( !L' M 9 >&PO=V]R:W-H965T M4LAGE2)J>,T85WTOU3KO^KZ*4\R(:H@X.>\XWEH"<*S2C'L0159!F1JQ$RL>Q[36_MF-!%JJW#'_1RLL IZJ=\ M+(WEURP)S9 K*CA(G/>]8;,[:MEX%_"-XE)MS,$JF0GQ;(W;I.\%MB!D&&O+ M0,SP@A?(F"4R9?RL.+TZI05NSM?LUTZ[T3(C"B\$^TX3G?:]C@<)SDG!]$0L M;[#2T[9\L6#*?6%9QD:!!W&AM,@JL*D@H[P9R%5Y M2309]*18@K31ALU.G%2'-L51;G_*5$NS2@U.#Z:/#Q>?;QZ^7%Y-IN_AZNO3 M[>,/^/!(9@S5QYZO30H;Z,<5W:BD"_?0?8)[P76JX(HGF/R)]TUI=7WANKY1 M>)#P(=8-B)HG$ 9AZP!?5.N-'%_T#WIWR2Q96KM9[$WIJIS$V/?,55 H7] ; M'!\U3X/S S6VZAI;A]@'4W/SDH(AB#DD](4FR!,%.:')KDH/F%] M<.J%=Q THK,VW!5L]1;FO&\PZ]$@@P"&N:1FX\*MH-(=!0>Q=X07IO/M2%PM M_"7WEMYHG]YH7WZG>CMF4_4N9-BN50=;096[/AOW1"XH5\!P;J!!XZSM@2Q;<6EHD;OV-Q/:-%,W3SCX!5!+ P04 " #K@859KA;0ZK " #\!@ &0 M 'AL+W=OKI00-,J*.=>X/L]+Z=,./&P MTLU5/)2EX4S 7!%=YCE5SV/@DL*$E-PNY^P;[>KH6 M+Y%<5U^RJWV[@4.24AN9[X.1028L(>R- JM#.-,/+E?KF9W-PLRF4TG-]/5XGIU.YLN MR8<577/0'X>>P2S6UTOVB.,:,7@#\3.YD\)DFMR(%-*7\1ZR:R@&!XKCX"S@ M+#$N"3N?2. 'T1F\L"DYK/#"?ROY5*4U4'0:R/;+I2YH B,'&T*#>@0GOGC7 MZ?E79VA&#NJ9V$-E">A7D8/ [9+WC=B/W$Y+;-1]-VQ[!6X/Q=L:G5%>':-193VA M7B7K]!"UX1IBQE<%=%S_*$3NX/A'[>"3>5X*EE +K[&JC:)UNE+!B71N=,1J M[8_V?LO>.^Q/W76O-9%R4-MJ[FHLMQ2F'DZ-MAGMU_5$.[K7[\(=55N&[#EL M,-1W^UV'J'K6UH*1137?UM+@M*RV&3Y/H*P#VC=2FH-@$S0/7OP+4$L#!!0 M ( .N!A5FX\/;OSP< /PF 9 >&PO=V]R:W-H965T,6^F"(E'N_(NWL>TCR[*ZL_ZKFU#?JRR(OZ?#!OFN6+T:@> MS^TBK9^72UO FVE9+=(&JM5L5"\KFT[:3HM\Q A1HT6:%8.+L[;MLKHX*U=- MGA7VLD+U:K%(JZ^O;5[>G0_H8-MPE"W<]^T'OV7VKO:>D;/DMBS_<)7WD_,!<0K9W(X;)R&% MXK-]8_/<"0(U_MS('.R&=!W]YZWTGUO;P9;;M+9OROSW;-+,SP=Z@"9VFJ[R MYJJ\^\5N[)%.WKC,Z_87W6V^)0,T7M5-N=AT!@T66;$NTR^;>?B6#FS3@;5Z MKP=JM?PI;=*+LZJ\0Y7[&J2YA];4MC%->IO;^O1LU(!\]]5HO)'U>BV+[9%ET(>R:.8U>EM,[*3? M?P1Z[91C6^5>LX,"/XV;YXA3C!AAXH \OC.6M_+XMQH;LW$M0L1%N!AY42_3 ML3T?0!#4MOIL!Q<_/*.*O#R@H-@I* Y)O[B&F)NLT$"RPUV=4,%WNE"H$Y2V"B8BB8R0K.:2GWLP0UGVC8-75/3-O+<"XW8[3I%]ZSLHE-LIW M16<>]^N>^!,8&ANAN^'!ZTRBMR."\.W*/EEVT*"_1A]AVC86/M7 ,#4:$TJ> M;,!]Y:L%)/WLK]:+7:K(BB8M9ID#](,IQNB#KZ,=?K* @ !%[5A!E,DP1FDL MFDD8*_='V^44<,;+RD5I\Q6C99X639M/[)^K;.F #3++)(L',,.9N+:'"X%MOO3_'.5Q*&-0L]7<'4):';0$I.PMF@ M#.;#A/.1* !?%3KMLRK8@>B(4"AA4!"QD)**&K0XAV4H@ MGDB/:_5)%@?3]T_J_3H7S.OIF-)#R!8E[7!'9HO$?+*"!0\FT:&Y+,%#*D%Q*0'2V4@[,FOJL#WAER^)Q+"=A%D -<2P!3EA[EH+!%T=XV)L%& M]Q?9'T *C3E 5I1L@8,HVF$*51#*G4& S6P_BS/ &R Z'L6V@*,F.N+<6$5: M*=@7XAY8%8EIGK3G9 \C7I)&MS- -JB,A']D]SQLM0FIEY1 =_0![@69D'LF ML]@3Q*JW1 DF0CR(R00G%/A-O 5FHPXN]$#WDG>0C407EU6 /&'O;W$ZRQ\?=3?3,!@'J[K2$X M,%'$^_\)Z)%41T5GY[3J2'] N7\HOV=T%@??QWL<1&=N0CST_\SN_";<&$9. MZ0%?Q:/1&7@F"Q?'1,XN8^2('J%K?M5I7FG+9WF^Z+9NF M7+2/M&=O5# P MR @ !D !X;"]W;W)K&ULQ5;;;MLX$/T50BV* M74"([K:4V@:<;(*Z2!PC=G>?:6ELD."BHO> 4EWFRX**C"H]@ZLA) ,V-4 MY([ON@.GH*RT)B,C6XC)B-\_09N/"3#EN32_9-_H1J%%TEHJ7K3&&$'!RF:ESVT=>@:Q^P,# MOS7P3=R-(Q/E7U31R4CP/1%:&]'TQJ1JK#$X5NJF+)7 6X9V:K+\LECJITD-V4&V6M[!T/NXO8/<5_Y9P$?4G5! L\FONN'9_""K@Z! MP0M^0QU.I=^@AZ?1]1_SP+O;=X"/YU16[Q-<8CV[40?:9EC4^ M_U>RPZJ;V?S,RI070!1]UD^_+C.):PKL23.0T#(C6,B*LHRP3A-D!_2>>+&= M^(/7 G\P)(]TC^]'@6 TEVC\A'7B&,[;4 ([#.(C:6(G<406K6MXQO]&V7,[ ML*-HV#NY040>3$?> D7V(#J&#^UDZ),55S0_V.D%H1\.D+TAL/TK.T"GJ MZ!3]-)UHFHH:7C(]1:7S:/\_E:9M#I7@_^(L("F7KRN)377]GB!,; \;=[!# M>NGDJ9DB1VX"U$V.Q9[MNP-R!S@P2,[HFN5,L1Y3.D5[$![SP+>'R-W3S/'P MT@V/Q#$2*FRI\[9KO=R&L1TD04\0>^C+.PA.TV._S4 *$5 M\'[#N3H3&OO02I M#:RV.G5;Y67WLPL.00LX9SO)[K\_&R@-A*+VSE\"-C//>&:< <_L1.@/ML.8 M@Y]E4;&YMN-\?ZWK+-GA$K$KLL>5>+(EM$1<#&FFLSW%**V5RD*W#,/52Y17 M6CBKYQYI.",'7N05?J2 '4=*\Q!7+204HWLZU&_,Z-J%4J"6^Y?C$SNZ!=.6)D!]R<)?.-4.N"!+Y_3/]<^V\<.8),;P@Q?<\Y;NYYFL@Q5MT M*/B2G+[@UB%'\A)2L/H7G%I90P/)@7%2MLIB!65>-5?TLPW$F8+@C"M8K8(U M5+!?48"M GRK!;M5L-]JP6D5:M?UQO.65 MW"@K3L737.CQ@[4K34) M?$CX%8#F'\ R+'MD/8NWJ\,Q=_Z?]?@_6^\% W:[!M8\^ KO](XGS,^GSILJEMRLNG![U=5+]O?M.)2Q2"8L5P7HY<+L"&!@^\&@$%R*!9;ANH,Z<"GE.('A#F#Q MJ$W_C-9SV>]<]B==7N+]X:G($[G[[B@NQ ?'F,.3D/=N/I6P2"4L5@3K92+H M,A$HK :!RH2HA$4J8;$B6"\AIO'R>6^HJ096EI!SU=Q+PWNVGE!8II<6J:/U4 M6"^IL!06A1:F*BTJ:9%26JR*UD_+RPG.G#R/O*,PP(NO=P<.SPLC0A!"8U@5 M+J5\)_"&1>%2R@K\8'A:T,^:'B6F6=UM8B AAXHW)]ENMNMHW=1]G,'\K7F] M,$?F(]D!JYLL+_BF?7:/:)97#!1X*TP95YXH8+3I2#4#3O9UR^6)<$[*^G:' M48JI%!#/MX3PYX$TT/4%PW\!4$L#!!0 ( .N!A5E20Q$DD@, +8- 9 M >&PO=V]R:W-H965T1 )"U>J.@H!M/WN3(?CJQ#G;P.Z_O[$3@R6O"4S5R=EIG3ZZKPATD5+5$!BF^V0J94(U=&;LJDT C"TJXZ[7; M?3>A+'7\H1U;2G\H]IJS%):2J'V24/DV 2Z.(Z?CG 96+-YI,^#ZPXS&L ;] MG"TE]MR2)6()I(J)E$C8CIQQYRD8&'MK\)7!49VUB8GD18COIO,Y&CEMXQ!P M"+5AH/@XP!0X-T3HQM\%IU-.:8#G[1/[1QL[QO)"%4P%_\8BO1LYCPZ)8$OW M7*_$\1,4\=P;OE!P9?_)L;!M.R3<*RV2 HP>)"S-G_2UT.$,T.E> 7@%P/L1 M<'\%T"T W1\!_2N 7@'H667R4*P. =74'TIQ)-)8(YMI6#$M&L-GJ5GVM9;X MEB%.^ZO9U]F7Y]F:?%PMYF2Z^+)9C:>;-?GV>?.)3)_7F\5\MEJ3W\A4I%KB M*I$-2/2#VE5['X"FC*L/:##6G*::A60IQ5^XJ@HA24;3-_(G2YB&"&V>UP%Y M_^X#>4=82N:,U><'I Y>K-39)9&$%7@@WJ\UZDA M<%'!4D;O)./$JV60#'__673K_]>Y6N39(%#9%=:-XK M->_5L?OC1.Q3_&8B28^8#6/476FB=TP1#EJ#--*&$B*FJT3-R0>6W&3Z@S]H M=087OZ%[.%>NUIU;E6N([$*Y^U*Y^UKE_F!<"J%/::=*G5J"6[=;U+S)LF"AL@N-'\H-7^HW:PSI1D6*Z@D%ZKJY)O4XF_5K4FR MX.&G'-/Q6OTRK5SH\5CJ\7B#'G=8%H1\'YDM)G%W2D6YV6LIEK^Q1 .22;&M MSH"U\]RJV^-/H9Y'FLO1T(07L@U*V0:ULIW78!E()JJ*H$DMQZV2U#O4Z9&( MOE5MZ* A+W*=W+-*-P$9VQN#(J$Y//.BMQPM+R5C6XN[_YKG-YHYE3$>LGB\ M;A':;CU@+I;Y+2'O:)'9NOE%:*S";7.'%RN0Q@#?;_'4.77,!.55S?\'4$L# M!!0 ( .N!A5FO'1^;%0, )8* 9 >&PO=V]R:W-H965TI#Q2QE:^D-BYYYSK8W-]&RO&G\4,0**7.**BJ137N1GK!$I(8J"",(@Z3IM8RZYU*$I\& M/!)8B8UWE*QDS-AS,K@+FYJ1) 01!#)AP.JQ! ^B*"%2:?S*.;5",@%NOJ_9 M.^G:U5K&6(#'HB<2REE3N]90"!.\B&2?K6XA7T^:8, BD?ZB51YK:"A8",GB M'*PRB G-GO@E]V$#H'C* 58.L'8!SCL .P?8QRHX.< Y5J&2 RK' JHYH)IZ MGYF5.MW&$KL-SE:()]&*+7E)MRM%*X,)30[60'+UE2B<=/O^HW\_\@>HT^]U MD=>['_9;WG" GNZ&M\@;#8:]KM\?H*_(8U1R=0Y02PB0 F$:HA\$CTE$) &! MSML@,8G$A8H=#=KH_.P"G2%"T7#&%D)%BX8N5<*)K![DR=UDR5GO)&>CKE*= M">33$,(2?/LPOG8 KRNC"K>LM5LWUD'"7B OD6U^099A.27Y>,?#[;+E?$S= M_YAZYS#\.Z;OJ6]Y:1R'3LE6?N49/XIR3HG(MO:::?8:><0N]N')="%JA$< C:EY#>$:,)9 MC()U38G>"DG9AF?TU90^N2F7KFE;1O6ZH2\WMW(_K&)?7=O;4>T2LJM*U3:V MP_S]L)ICUG8D.P<7_I^V5@I;*W^Q515S'NF-/NO8NIA/"14H@HF2,BZO5,8\ZX*R M@63S]-8>,ZEZ@/1UIAI'X$F ^CYA3*X'B4#1BKI_ %!+ P04 " #K@859 MP*1LQU4" !>!0 &0 'AL+W=O"L95R.OT+JZ]GV5%5@2U1,5X3^\ @A M; GAWQ(&+<%5SF\R<[;NB"9Q),4.I$4;-3MPM7%LXX9R>XJIEF:5&IZ.9^/E M^&DQ3N%^-IU ,GV:SVZ2>0HOC_,'2!;I?#H9SU+X"DLB*5DQA$28(\Q1$G<, MIW>H"67JS$ 6Z1V(">?$S_0?@QNF^*TU4H["H4.KW!/U7HD,U&=WA8U[;GM:I(AB//])]" MN44O_ORI?Q%\/V3Z/XG]48)!5X+!1^KQ32EJKA6(-=2\DC3#'+*"\ V"D.8J M*'/@&:MS,VU.7DO"%6FZU($/WH%FQW[@MK1OS3:^ZEU%_G;?] '096_8@1HS M_M[MMR_/A,@-Y0H8K@TKZ'T[]T VW=P$6E2N(59"F_9RP\(\@"@MP*ROA=#O M@>VQ[DF-?P-02P,$% @ ZX&%61;Q/%OL @ HPD !D !X;"]W;W)K M&ULM5;;;N(P$/T5*UNM6JDE%RA0%B(52M4^4!"! M[L-J'TP8P*IC9VUSZ=^O[:19*J59;;=]27R;,V?.3#+N[KEXDAL A0X)9;+G M;)1*.ZXKXPTD6-9X"DSOK+A(L-)3L79E*@ OK5%"W<#SFFZ""7/"KEV;B+#+ MMXH2!A.!Y#9)L'CN ^7[GN,[+PM3LMXHL^"&W12O(0(U3R="S]P"94D28))P MA@2L>LZUW^G[UL">>"2PET=C9$)9YL6:0$):]\2$7XL@@"-XP"'*#P/+.'%F6-UCAL"OX'@ES M6J.9@0W56FMRA)FL1$KH7:+M5#@=/@X?YL,(W4['(S08/\RFUX-9A+[?S^[0 M8![-QJ/A-$(7: HFQX2MT9Q)K(A<$5BB"0A;&2P&-%Y0LL9&:XE.;T!A0N69 MM=P!V\+Y$42YV3D:'E*=+8T[(XDYQUPWC:GD+C8-"X\#BUO]+XS*^&6ZC'-=\L!V9XAAZCOXB)8@=..'7+W[3^U;! MNEZPKE>AAP/.E-"ZZZ*/GRA?(YSP+5-E-#.@*PMD?@.[T*NUN^ZNQ'NC\-ZH M]'Y<(2D(PI=ECJLQZN@9L) 56EP6;"[_38M3+ VM&)@Z*R.6P?G^*TF"9KDF MS8)%LY+%2'\\R38I\U=I^,Y":16T6I]4WJU/8-TN6+<_H,"J,7Q;8!5DK@HR M5]69Q8>W,EMI^$Z-?.]/=_ ^*;D]R\@%3\0]ZCEFNO+"(LU MT8V/PDI#>;66_@.([$:0311/;1=><*5[NAUN]"T*A#F@]U>):>S%O2S\ M#5!+ P04 " #K@859-"/P !4# #J"0 &0 'AL+W=O$<=7SYEHO+GQ?17-, MB*J(!7+S92ID0K29RIFO%A))[$ )\X-JM>4GA'(O[+JU6QEV1:H9Y7@K0:5) M0N3[)3*QZGDU;[-P1V=S;1?\L+L@,YR@?EC<2C/SOW8Q MZ%A[9_!(<:6VQF"5/ OQ8B?7<<^K6H>08:0M S&O)0Z0,4MDW'A=IJ6+Q),N2>L,MOSN@=1 MJK1(UF#C04)Y]B9OZSAL 0Q/,2!8 X*/@-8>0'T-J#NAF6=.UI!H$G:E6(&T MUH;-#EQL'-JHH=QF<:*E^4H-3H>#_N3J%.P31K\?KA_[/T(QQ 7Y0CJ\%)02^"4,>BV 3B\N@E/%7I"M0KYU"4 T:10Z5PW\0 MO@^^XTX]3TW=\=7WI8:H.1 >@QN,7E.Z) RY+HQU1M4HIK)'P85:D A[GJEU MA7*)7OCU2ZU5_5:D\T!D.ZH;N>I&&7O8CR*98@PQ7=(8>5RH-J/H. I[3BW# M:L6$?+DMHLCF/+?9\:V9^]8L]>T*67RFQ9DY/5))]3M,,+(#BH5>EI)]-B<' M(MO1W#>>F&4-I#&UL MK55=;]HP%/TK5E9-K52:;PI=B$2A4YE6UC6T>S;A0JPZ<68;Z/[];">-: EL MTO82^]KW')]SG=Q$6\:?108@T4M."S&P,BG+*]L6:08Y%A>LA$+M+!G/L50A M7]FBY( 7!I13VW.1RQM:2D@'N.Q#K/,?]U#91M!Y9KO2X\ MD%4F]8(=1R5>00+RL;SG*K(;E@7)H1"$%8C#5H04 AE9H!JV$#(Z!4$RD9/VM.JSE2 W?GK^R?C7?E98X%C!C] M018R&U@]"RU@B==4/K#M+=1^C,"446&>:%OG.A9*UT*RO 8K!3DIJA&_U'78 M ;C! 8!7 [R_!?@UP#=&*V7&UAA+'$><;1'7V8I-3TQM#%JY(86^Q41RM4L4 M3L:C87)[CO03W7Q_G#P-O]Y,9PD:3L=H,GVZ269W)NZ@2;$!(=7]28%.QR Q MH>),K3\F8W1ZOTE[(S-H9 9'90XWZE7$H7S?Z?OO%>ZG>6[H M7_KO%-H[W4%WYCO,5Z00B,)2 9V+2\7#JVY7!9*5IF',F53MQTPS]8, KA/4 M_I(Q^1KH'M3\&PO M=V]R:W-H965T[AYAX4$,%3VTIED33WZT\V!&,LA$CW);$=[??)^TGKW8U]_B3D MMWS!N4(_TB3++UH+I1[.VNU\NN IRT_% \_T7^9"IDSI4WG?SA\D9[/2*$W: MV/.B=LKBK#4X+Z]=R<&Y6*HDSOB51/DR39E\?L\3\731\ELO%[[&]PM57&@/ MSA_8/9]P=?-P)?59>X,RBU.>Y;'(D.3SB];0/Z-!:5".N(WY4[YUC(I;N1/B M6W%R.;MH><6,>,*GJH!@^M,\4&YU(\(5F,UFC%02E7::T='&?%RIHHJ?\::SLU& TG'T]0\1.1OVXN M;X>?R)?K"1I^&:/++[=D8[> MCKG2?\]_TR-O)F/T]LUOZ V*,W2]$,N<9;/\O*WT= O2]G0]M?>KJ>$]4PO0 M9Y&I18Y(-N,S@_W8;M^WV+>UFS:^PB^^>H^M@'].U2D*_!.$/1P:YC-R-P], MM_-S[.3GV*G=_ ^6[6.O^3+8K+N@Q OVK3N6+Y!>%Z@\(-^7\:->4IDRKI,5 M5&B&*F+O6?[ IORBI8-KSN4C;PU^_<6/O-]-(D&"C2'!""08!0*KB1MNQ UM MZ(/+3'&-JO2C9\JUL#IJF&1=@40E2/$$?!SX@>>=MQ^WY;(R'2N7"R.!9*0' M&&ON[6S/SH+TN$N87D>SV.]\70:7XP1:J%W MW52D>BJ+8M,\\TL&]C8-[UM1@V%B* M6RO5Y+0>9'H "3:&!".08!0(K"9P?R-P_] .DBK^3^^1DL-(8W;]KWNKJ/M=,=ZVHF3@')2 VM9(< M[5TW5@+*2@VL.F;T>N$>%U<%N6\M"0JQ7U[,6[29ZV- M$D@M)%^)9-Z34<-A7=SM^+LJ 17':Y6<2 DH*360]B/L[\LBJLK=/UBZ;Q4> M&_>O_*X%F!?%^7[_-POK;H";N3)0[;SVOQ,I 26E4&AUF:KZW[=6GWNJ%_=H MUFMF2%%CEX#6^2Z4!)220J'5-:I*>-]>P]LT+CUY3XQ\8TW"R+PT91:I_)L0JX4!)02@J%5I>JZA+@5W4)G ,: M-I34>%=3F=/%*O*>VPO[PVN=PUGDU,T%?)!2*9X[3V(9Z,PD(7U"!1M#(I&0-$H%%I=YJJ% M@('?(<"@+Q& HHU!T0@H&H5"J^MV,C801L0;J0$ ME)0:2/NA%YF?=T'5@PB.[$&\JFH*#*\#^+M9AWTF1[^VZT!)0"FI@;*[IZ$= M5)V%P-Y9>'6NM\;=?O.DWP\:3@=M*CAQ$E!.:N(,<'_'[^VM[R=2+N_++UUR M'5*6F5J]TKZYNOF:9EA^0[)S_;U_-O(-U\?^&5E]*U/!KS[=^H%(E=?PZQ.E'@HO]ZX$TJ)M#Q<<#;CLAB@_SX70KV<% 2;;Y(&_P-0 M2P,$% @ ZX&%61F>1"6> @ _0< !D !X;"]W;W)K&ULK55M3]LP$/XK5H8FD%CS2D>[-%+;9*+2RA@%]MDD;F/AV)GM MMNS?SW;2D$*HT" ?$I]]SW,OOMR%6\8?1(Z0!(\%H6)DY5*60]L6:8X**'JL M1%2=+!DOH%0B7]FBY AF!E00VW.)5+O6%'80E7:('D;7G%E60W+!DN$!684<#1 X!6 7P/\MUH(:D#P5@MG-<"$;E>QF\3% M4,(HY&P+N-96;'IALF_0*E^8ZCI92*Y.L<+):#I>7)P"_0;)K]O9W?A':_XY(,YHS(7(*$9RCKP\6'\X #>5OEI MDN3MDC3Q#A+^3&4/^.XI\!POZ/!G^G:XWQ7.^ZPG_VU]+QE^4S&^X?/?53%= MMU[Q!MV\NB$.10E3-+)4QQ.(;Y 5??[D]IUO72G_2++X(\F2#R+;NYR@N9S@ M$'O4_DOQTU_:=1L5T< 0Z6FRB8+>>6AOVDFN=/IMG7V-^*6&^TPE>6EHT.L/ M]IX&405MM_I9@?C*#!(!4K:FLBK49K>956/3HI_M3]SAU.W8C]5LJT;1$WTU M&.>0KS 5@*"E,N7TOJIVRZMA4PF2E::;WC.I>K-9YFH^(ZX5U/F2,;D3M(%F MXD?_ %!+ P04 " #K@859A0$\(/$# #X$P &0 'AL+W=O]A?DR5,0$W7#T*/[ )E3F-( M).4)$K 86"-\<85[QB&S^$9A*_>ND4EEQOF3&=S-!Y9C(@(&D3(01/]MX H8 M,T@ZCN\YJ%4\TSCN7[^@WV;)ZV1F1,(59__0N5H-K)Z%YK @*5-COOT">4*^ MP8LXD]DOVN:VCH6B5"H>Y\XZ@I@FNW_R(R=BSP%[1QSXB MR]*Z)HH,^X)OD3#6&LU<9-QDWCH;FI@R3I30=ZGV4\/;T=T8?1M]G=Z@^YO1 M9#J^N;_YZW&"SM M34@24<+072*52'7ME$2&>32&*!6")DMT2225Z.,U*$*9 M_*3=II-K]/'#)_0!T00]KG@J23*7?5OI8,TC[2@/['(7F'LDL+\CU4%=_!FY MCNO5N%\UN_])DF/NMJ:HX,DM>'(SO.XQG@@5:$-8"H@O$)$2-!DZ,\0HF5%& M%06)8B R%3!'68N_<&2L$IZ4$S-#6ATCNQ"\^A#,@KZ0:Q+!P-(K5H+8@#7\ M_3<<.'_4\=,26(6M;L%6MPE].-KH=B S!F=ZHSF3A &2)OV,IKK,=W!!!F=V MGLW0=0+/Z_;MS7Y.AV;8\7L]KS"K1.L5T7J-T7Z%#3"$=9^O4UW5?U%9[,]E M'>O";L0]M6 M@54H\ L*_/=O;[]-MEH"J[ 5%&P%C0WSR!5AM2GN_/R]!@UQ M&/JOVOC0"KM!X 7U;7Q>1'7>0AOK^7N>P+-^B8@G+1,6Z9'MN?%AIU:K); * M+[V"E][[]W:O3;9: JNP%19LA8U==$7D"L'WE&K&S!N_+MGP35U^:-74Y=@I M%8OSACYW?V*[;@8^M4IMH55IV!-N^/W;.H^A+<9:0JLR5DHXW*AY&K;MW-'_ M/_U18]/C\%U@(K0J_MM"JC)72#S=J MI9]8"+V#3\PP[!Z\!VJLNF[X:A78>\&PO=V]R:W-H965TT^F^2 K$[,; /=OY_MA(RT(:-J MOH#MW/.%A/F>R9.4L8Q9#PB":(P6)@#%M7?D_9:X/'"';\H(V4 MDCFE3ZIS'0Z,IIH0$ B$8L#R;PMC($01R6G\SCB-W*4"'K;W[%^U=JEECCF, M*?D9A6(U,'H&"F&!-T3O >5A@M\_H#C%E M+=E40T=?HV6\HD2MDYE@\FLD<<(=CL>3A]O[&;KSQ_[UXW#TPT?G'@@<$7Z! M/J.'F8?.SR[0&8H2=!,1(K/+^Z:0KA6!&61NQJD;ZXB;-KJAB5AQY"1!:*!VZQ.RFI9=IN=]<.]]<+\:_ATGQ^"%8+3S M1=#6?.W_+8+AK8=N)_?^X7(HF=XHI;/+Z=31=L77.("!(<\N#FP+AOOQ0ZO3 M_%(6Z3K)O#K)_)K("CFQ\YS85>SNE-%MI$]C>1F@@$$8"40HYU"V_4:59&_- M2$IVJG61^362%-'3S-'3K/5&[=>:D3C*O3C*_)K)" M3GIY3GJ56V,DJQ>LMW]\=/?W7N]:N]%ZL?TKW;PUO'62^361I>$U#ZK*&-A2 ME_,'5S)5\]P)2!_+Z@5.P[RD'^CG+_ E!+ P04 " #K@859HQY"A-," M "M# &0 'AL+W=O$(1BDI M)J9M65TSAI@:WC =FW%OR+:28(IF'(AM'$/^YQH1EHR,MK$?>,"KM=0#IC?< MP!4*D'S/VE3_0^!3P$Z-$'+2!SF3!V)/N3*.1 M8>F $$&AU I0/79H@@C10BJ,W[FF42RIB8?MO?J7-'>5RP(*-&'D%X[D>F3T M#1"A)=P2^<"2KRC/IZ/U0D9$^@N2#-M3X' K)(MSLHH@QC1[PN?ML#R=4L M5CSI3>_GX_O;Z?7=#1@'PK0]^%K2J J]EO7:K MFQ3S&Q(KN=4IW.J\0]ETFO2R23&_(;&2E]W"R^Z;RR9C=@Z.>KO?L:Q_RN88 M-3@"^;5!O#'%7I%BKS;%^<.DLKAJ6:\]$$V*^0V)E=SJ%V[UWZ&X^DUZV:28 MWY!8R7@S<4U./H?J2JN8U1%<=4&\=H4S8.[H;[(?X=\A:D !"V5O-7J MJ4KGV>4XZTBV2:^+"R;5Y3-MKM7W!.(:H.:7C,E]1]] BR\4[R]02P,$% M @ ZX&%6<0>D=*T P Z \ !D !X;"]W;W)K&ULM5==^D::9.N@\[^Z#8U[:F@%A) MQ.W^^I6 8#"8-*G[8O-QS^&<"[KW:K1E_(O8 $CT-8X2,38V4J;GIBD6&XB) M.&,I).K.BO&82'7*UZ9(.9!E#HHCT[8LSXP)38QPE%^[Y>&(93*B"=QR)+(X M)OS;!41L.S:P\73A$UUOI+Y@AJ.4K&$.\CZ]Y>K,K%B6-(9$4)8@#JNQ,<'G M4^QK0![QF<)6U(Z1MO+ V!=],EN.#4LK@@@64E,0]?<(4X@BS:1T_%N2&M4S M-;!^_,3^+C>OS#P0 5,6_467FQRMW-!$O\:YY.HN53@9SF[N)C?O9Q?75V@RGU_=S=%;-&5QRA)( MI$!LA6:)),F:/D2 )D* NGAR"9+02)RJV/OY)3IY()J@NPW+!$F68F1* MI4T_P5R4.BX*'?8!'1\7\@P-\&_(MFRG S[MA_])DD-P4V6D2HM=I<7.^08' M^-[1A$IX>ZT^L65'!OZ^5O%H)B$6_W1Y+ Q=![LC\['N MX)F@AC*G4N;T*ILL%EF<142J%Z3T<4G_([HP=(DLF-S:\P=.@/=$=@3A8-@M MTJU$NKTB;U0=[DF>V\H+#O3GV]#EMG39-O:[=7F5+J]7UQTG2T )B:%+5B_V MI5_OD<@:-OW*IO\S5[%_S#PY&O=!I43H,?JU=!:\DY3A#L+;F@M>0:00UEV-IU M6NMH%:ND:JQZS]\O#5U1CFL=$%H;"?"/5*T2W2A;0WN_YI=1#6V6]M=.,U'(N!JA(SR[(D-3;ME'K4)'XNM:7O7AO'@9U8RW-OE7YR+([$U<[%K M_+B_\[^FFCU#B:W#Y:P?^EJWNPD"]X\0SU8TW)XB NSMK\;V%%$/:FK;31&X M?XQX447S6@J&M3&FE-D.\IT#,QC>30&XM[D^6\_\=@+W.T)'#/;VA9FU;9C> M W\@?$T3@2)8*91UYBM?O-A6%B>2I?G.[(%)5=3RPXW:B@/7 >K^BC'Y=*(W M>]7F/OP?4$L#!!0 ( .N!A5G'L-K$Q@( '\) 9 >&PO=V]R:W-H M965TVW(0:PF=F8[T.W3SW;2B)8T(+0WQ([OGOR>"_%YN&'\420 $CUE*14C*Y$R MO[!ML4@@P^*9_+B%EFY'E6L\W[LDJD?J&'0YSO(((Y$-^Q]7,KE5BD@$5A%'$ M83FRQN[%9*#C387 M;:I8QT*+0DB65A4"1UCM"0SMJZPQ.&0 MLPWB.EJIZ8&ICUL?/ME>GGS&8VCZ/,L0A_1-:%$ M KI1]8W1E$I,5V2> KHN9,$!C3/&)?F+S6N(U-\J+M3BZ15(3%)QI@0>HBMT M>G*&3A"A:):P0F :BZ$M%;!^K+VHX"Y+..\-N!\+>8XZ[@?D.5ZW(7W2GOX- MT[?2;56FNE9>72O/Z'4.K563HU*BVRRAO\D+D>,%C"SUT0G@:[#"]^_

_C[C5Q^[O;N(,#N%N5C^3NU=R]?=R#)N[> =RMRD=R]VON?BOW+ '5N9<2>!-]?X?> M]U_3M^H?23^HZ0>M]+?JC*)Z24%E8VL8[.PM[D!OXR_X=X,\S^W50267O=4> M]='D.^8K0@5*8:G2G/.>JA$OVWTYD2PW'7/.I.J_9IBH$Q)P':#6EXS)YXEN MPO69*_P'4$L#!!0 ( .N!A5E6I*%[+00 $$8 9 >&PO=V]R:W-H M965T^1!G^UD0B@\7VTK:PH_?!* M/[P,U[KD!Z&8QEKL(>>8KD$]E+)6T9SCUW-T?;D36QS#P%(%1 #?@Q7\^HO; M<7ZK$]@D+#0)BPS!*F:T2C-:3?3@GG$5H_4TX$4":$>7P-&JM F_85-C MAFMM,@D+3<*B'-;)8'IRV@=>NV_O:\3W2_']1O'_ "F!"\16*,[KCIKGA,1T MFLAV5=8(W4J\5W"0L],\TC^]'F@,<.U M-G7/*DG[I)2$)O-%AF 5\7NE^+U&\8=+5?O5:R5.4,S2E$@M<4/];Z1=*W3O M3&CW5&B3^2)#L(K0GTJA/_V/":#NC?J^$72MQB9AH4E89 A6<<-U7CLSQ] 4 M4( ,^6&4%AJE1:9H54N.FF7WIT\$18KCFM)J5VO*J'D85UM@DA:9HE4M>.V/ MW<:.+QA3U16 D(AC"2C%?$THRA>M@*L^(3M>JWO.=;WC]^];Q^V=B6^T&39* MBTS1JN*_]L-NM.\V)=^+C&N/MW1SBG3+YRQXXU4N 98W4:>=LQ2>0+H#7 MEC6CS;-16F2*5K7UM=-VFUOM:U^QW/-.MN6CM,@4+9?;/EI]U8OK MDZPF"93 2N&=VZ[J(WF^7IWO2+;-%F073$J69IL;P&H6T1>H\RO&Y,N.7N,M M_S4(_@502P,$% @ ZX&%6?HE\&YX @ B04 !D !X;"]W;W)K&ULA91M;YLP$,>_RHE54RMM@9 T6SN"M+3KPXNL4=-N MKQTXP*JQF6U"*^W#SS8$L2G)WN"GN[]_=^8N:H1\406BAM>2<37W"JVK2]]7 M28$E42-1(38(&08:*M C'#%J^0,2MD,'YUFEY_I74< MSG?J-RYV$\N&*+P2["=-=3'W/GN08D9JIA]%!!4BLM MRL[9$)24MR-Y[?(P< C# PYAYQ Z[O8B1WE--(DC*1J0UMJHV8D+U7D;.,KM MHZRU-*?4^.GXZF&YO']:?OO^M(:/L$+IWIDG" O!4P6$IW!;$TFX1E1P>HV: M4*;.X 0HAR5ES.161;XV+%;13[I[%^V]X8%['Q(]@LGX X1!.(7G]36.;4/IXPCZ>T.E.#^@^1M/ M@B#RMWN )CW0Y"C00ZV5-EFD/ =2BIIK$)E#4Y"(+4I[('2!$B15+\JD-6&U M,V^(M'E_^Q]U"S .!MAA.+K8SSWMN:='N6]7:_@--Y2;O%'"(-_]!/L(CDK9 MOG*I*I+@W#.-0Z'_?S>>!5^.O/AY#WI^'+0%$W*0)ELAM*Q+P-=*J%KN MA6YE+X://9K]DS1_4%FV22V)S"E7P# S7L'HDQ&1;>&W"RTJ5VP;H4WINFEA M>B5*:V#.,R'T;F'KM^^^\1]02P,$% @ ZX&%6&ULI53;;MLP#/T500.&#=ABQ[EL MS6P#3=IA?? :--WZK-A,+%073Y+K].\GR8Z7 8D?MA=+I'@.#VF0<2/5LRX! M##IP)G2"2V.J11#HO 1.]$A6(.S+3BI.C#75/M"5 E)X$&=!%(;S@!,JE\!DD^ Q/CH>Z+XTSA&D<47VL 'SHUHK:P4]2T$Y M"$VE0 IV";X>+Y9S%^\#?E)H],D=N4JV4CX[XZY(<.@$ 8/<. 9BCQ=8 6.. MR,KXU7'B/J4#GMZ/[%]][;:6+=&PDNR)%J9,\&>,"MB1FID'V7R#KIZ9X\LE MT_Z+FC9V,L,HK[61O -;!9R*]B2'K@\G@/$E0-0!(J^[3>15WA!#TEC)!BD7 M;=GZG;(RRK]3B3+JZS[*[Q^SV^^,&?41/1"DB# 6-WMV (93I M]W%@;!X7'>0=Y[+EC"YP7J%,"E-J="L**/[&!U9?+S(ZBEQ&@X3WN1FAR?@# MBL)H.L WZ8N>>+[I!;Z,"LIK?JZR0:";D(6N2 X)MB.@0;T 3M^^&<_#+P.R MIKVLZ:"LKONOJ )%97%.WC#!^BH;D#'K9[PB-=E.9HN 3],X'ED%/@FLJR6&6 O- :]Z-V4#7IT(WPO)%,&^"8(,'L;$9_N M^@8T]B\>O.5*J!?FH+?&2S(CXM_UE,DG,_4R]P(2MF1,?%]YDGG\2IP::4QE>'B_ M]_XU@IG.QZAL= \S) F]\\4!W?Y,$R%'^7.KSZ!?LDK:6 =P- M%S1(C&4&@1?&5_R:%.+ #DG#%!B@/(&]@D#.S&(*F?&F458MUC@08_1'6"J MM?2F;J+:1-:2Q@M5-\X$D_]ZTDX,9H^3\??KT7!V=PO&D_OIW8_9\/';Y >X M!K.X9P%=@*$JMB?>P":<$P;&-%CC\.T/#F:"NB]@LHZZ9.KCD(//MT1@S^=? MI(M/P 1\A1GA^XL7@L<5W7 A6'%P)_.8 ME]B/]?80:1R8LG1I_="^?B.D]3AQ10/8\ H@"S7+$M*;_X/#4^9'Z=AI=]J1 M/[MB=Y:5.O;4+/>DEH\;OL8NZ1MR?>"$;8DQ^/TWV++^+,-\)V='T,T4NJGS M/IA%0^L*3#:""SFPO'!Y!49DZ86AO)6S7(Y+EY25(/;K1'[5@K<=0+OE],SM M(9HV>$TT)T5S+D+[B^%0E([XD5-@:.4 M"%J K12@-9% '>OA+D>+T=H%1"N M.Y:5H]#&J4G13BG:%U'(G6-!O!,=T2Y20#L'H0U3$Z*30G2J3Y.[Z*J;(YT" MEN-TE&:%U0=WWDNF0'V@%JR7Y&(DER#+>$2=&7SG(P99XK M?Z56B.CKK,U)[/9! 9K-1C>_.NM3K%L"E)4 O5<)-&MX$@3:AZLX;""4A]4F M4Q M_0BE 3.I ?5:H^YL/K^%)(&/"^ T6C!? .?,E#\FRS0(U(N0ZN/VU&Z3!,IW M97&B?H1:@9E<@7J]4@&XXJ[4+O9064=^A,Z!F="!>J53P'\@ZD1#C=*Q_/QC MV!4;[(-'P@+P^3^"&?]R-*9+R?4AF^!-^0$=$,0?F/)36Y\R\0"6:3F;JY-=*?5YU^S'3=*BBICO+77'$VY=UZ[M*/?/@0#0@;!F= M$W/@TDTHXK/1]&UZ%CV,3F#-K'E\D'V/F?Q8X< G"VEJ-=I2H[#X;#A^$'0= M':\^4R%H$-VN")X3IAK(_Q>4BOV#"I">T _^!U!+ P04 " #K@859 N " M"50# #3"@ &0 'AL+W=OZ>.]Y1-]HQ_B(21 G?\XR*L95(N;FQ;1$EF!/181NDZLN*\9Q(->5K M6VPXDM@(Y9GM.4[?SDE*K7!DUA8\'+%"9BG%!0=1Y#GA_TPQ8[NQY5K[A2_I M.I%ZP0Y'&[+&)895J3XOA6*;5JFUKP>+S7_M$XKYQY)@)G M+/N:QC(96X$%,:Y(DXAF5Y4,!6,$L(72.D%!Z*_!FY7GM@ M]/H)A<08YAL=80&2P:+@4:*B!,N$/AY3KU7A M/)(=\-TK\!RO"[^#O>F"O1$;$N'84A4I MD&_1"M_]YO:=#RV]O U*N9>A*$ZL1KL]X[L=YO-MZOC?FSPH M:09''@PZ0:_9!]=/IGBLT]_";[8)F6?MGOWA*OR$Y#A2HDZG8&Z M&'C90943R3:F:WEF4O5 9IBHKA.YWJ"^KQB3^XDV4/>QX4]02P,$% @ MZX&%664J&^-P P )0L !D !X;"]W;W)K&UL MM99M;]LV$(#_"J$-0PHDUJO?,EN G:1;4*0VXK3]S$AGBXA$>B1E=\!^?(^4 M+7NU+"09]D4D1=[=Z49;(5]4!J#)]R+G:NQD6J^O757\4B4.F<+[7_M$Z MC\X\4P4W(O_&4IV-G8%#4EC2,M>/8OLG[!SJ&GV)R)5]DNWNK.>0I%1:%#MA M)"@8KT;Z?1>((X$P.",0[ 0"RUT9LI2W5--X),662',:M9F)==5*(QSCYJLL MM,1=AG(Z7CS-;CY=32>+NUMR,WN8WWU>3)[N9Y_)%5E4'XJ()4DRRE>@".-$ M9V#LLZ(L""^+9Y#F@,JHQ'US5!0%1AO!DQ=R<0N:LEQ]0'6/H+1DB8:4+.SF M%\ZTVDNBYJ=,E(KR5(U3&MO C.>#$D#X+K3)$[GD+Z;WD7(U*' M)=B'91JT*IPEND-"_Y($7A"17XF[YZR&%@MA'?C06@C/!;Y!4456R47-E$SQ*"& M&+S^BMS9\V=1KPAK^#YGG>X=*[/V7W+-.;*P3%\8+&UT3YD-U:BR!,+OA'_PW_-?EX^6ZNW7\I/ *+PLX@. ,6',""5Z3I^[F"!JZ@TSU3OOQ# MO?=;"_=^/%IZB!?V.=R:A_4/1]]]0]7]*Z?>R1J?7SN_TAC^AND>=2P%R M9?LSA4U$R775Q-1OZQYP4G4^A^-5 _E )::,(CDL4=3K]+&\R*HGJQ9:K&T? M]"PT=E5VFF$?"](

^[X''F\HSD_$/J#A0AQ\)C$F%T.0LYW%X;!_! ED)V3'<+BRP.A">3BE6X- MMJ,(!IE0$AO6<#@V$ACAP6*>M=W0Q9RD/(XPNJ& I4D"Z=,*Q>1P.3 'SPW? MHVW(98.QF._@%FT0O]O=4/%FE"A!E"#,(H(!10^7@Z5YX5DC*9#U^#M"!U9[ M!G(H]X3\D"]7P>5@*"U",?*YA(#BWQZM41Q+)&''OP7HH-0I!>O/S^A?LL&+ MP=Q#AM8D_B<*>'@YF Y @!Y@&O/OY/ G*@:4&>B3F&5_P:'H.QP /V6<)(6P ML"") 50A8QP+."P)V(6"?JL$I!)Q3-8P*@6SH1C[VC#@7 M[W^Z_-JN?%N-] MVRQOKZZ_@<]@&021=":,P17.IZ1T[4<7<1C%[)/H.WSO3Q>VNX;Q-N_?3VAMDV.7$ ML3,\^Z6)(]W]6:[1 *Q)(@(7R^?'DE*(MT@$$P[NGT"]WPU\RIJ7!TB['+K* M53K=*F7,O& [Z*/+@0B*#-$]&BQ^_\T<#__H\H9.,%<_<(46]#)/J63V^YDV[.C3EY')\<< MEYT: QZ5 QXI!WR'*?+)%D?_B1G8&+=/&.\:=(XWJEDQFK4&K53:=W:-6N-N M:_0T:6R0."Y)'"M)7'?,%U#R>@9VB$:DQBD"Y 'P$ &6K6JRD_YAPD&(^A'KW#172OR^ M#M$)YDY:J\!RS-8R:/-MDMXO3:2MB.--V MG%3:T)>LDU1ZFE0V2)V5I,[ZDEI,3'@?H]=)G;4<[5CM.*RTH2^I)ZGT-*EL MD&H.JX1]J [%D(4@B/91@$1:+8HBD6H%8 >C (C8G&?AG*YA9H M]=ELSZ;3(]YUZ6P27ZN43'7FE![=9S MC4Z'*-7U=HA.-+= :^1 MC4='R^%CGYBP8RFW>'8M"JNK=>Y+JJ&75XU=%*H M1.E-H4XTMT";U*B9V.HG\JL8RU476#:+9@0GVGXD45HO=T.?B,7= *@]).HE50O:JQ7-TX76 M=%)5%YJC]S_!,'76A6NM:*Y6-$\76M-[54%JJNNS6U'UX#2Y%P%+));/AX^, MI5ERF>) ?.A>='E0$VU!2N6^+>NGE^O7PHS&3CAL9:%J8WL[ZA2=GBZ=30=4 MA:BIKD0]2+&@CTGNBKQG]Y:PI[4NU8KF:D7S=*$U_5:5NN;T%X0]G;7M6BN: MJQ7-TX76]%Y54YOJHOK=PMZLG1H-.^*>UO+[-*6>+J7-'X&J MQ2%^#?$4:' MC&[Q0+=/;PI[:EU]%XY6-%FUJGJWS/Y;6$EXKFJL5S=.%UO1> M=1Y@J<\#WBOL%6:\DNVIC>WMJ%-T>KIT-AU0'2=8KQPG1,E/!#>M9P1:T5RM M:)XNM*9WJO,&R_D%P4WK0816-%F]ZB#"4O]"_6[!K?W#MF,-1ZWH MIO70X32EGBZEN0N,VH6H1.1HV4TT!GR28IY?<2E;R]MNR^R.UU'[RKQ8FQWM MKGGAY7?9*OC\:MU72+<19B!&#T+5\'PB!D;SVVKY"R>[[#K6/>&<)-ECB*#P ML>P@OC\0PI]?I(+RSN#B?U!+ P04 " #K@8593CN&O3<$ \$@ &0 M 'AL+W=OB+ C<,<0W58797U=0TNW$\9VW@OMBN1*JP)V.UW@)#R"> MUG=,YMQ6)2\J(+R@!#%83)Q+_V+N!\I!6_Q:P)9WTDAUY9G2[RISG4\<3[4( M2LB$DL#R[P5F4)9*2;;CST;4:>M4CMWTF_HWW7G9F6?,84;+WXIO#8B.@]0Q.P2- M0[#O,#CB$#8.X4=K�.@X_6$#4.NNMNW7<-+L4"3\>,;A%3UE)-)31][2UY M%40%RH-@\FLA_<3T^I?9[V;,4!"Y*_EE:/SVDZ.S39_0)%00]KNB&8Y+SL2MDPY2\FS6-N*H;$1QI M1(AN*!$KCN8DA]S@G]K]$XN_*X&T5((W*E>!5? V$^ MFKKS_VJ?_^?:=V"$;8B$6B_\0(B8QK;V'IB]U4)WP=H-2^]C+US@-_[+YTZ?^;U0[6J,4:6;'. M:+7>",@1R+4N4XD.5JC7/Q-,J^JI,/L42VNQN$/)CX*!MP?ST"H>^D=8QBW+ MV,KR0>R&)? OB,B##EV@11.]FNIB(4F;H%KE3X7:IUA:BT4=7$&0#/>8&HST M\FMB.FR9#JU,GPB3F^^2%'_+T%3T2LHY>@8"B\+(T"IW*L,^Q=+A 9[D8(X? MVH1!%)D1CEJ$(RO"^2MD&W46E6MGI29T?8HIBZH0.FG":)4\%6.?8NGH$*._ M'XF'-O$P,%-,6HJ)E>(-X)(C>;A#RK!/L30YY./' M>PP/;<+1D4CTO?>CMF??Q2F3]Q;ROFGGA5P-F019X-)X:K;JG0JQ5[6T4>LB M^AI%^QQ-5GZ<)$=0=FXMOA7EK5@!4P>>"A,5B&\D,ZC#%.=_R+N3BM%Z&S+2 MM59Q,MT^U=)&;8=;$H7[= ^M@O@8V^"=;6!E>_VA,U CTCU$C))XM-O"F<$J M]H-DURHU6/FCP2C8[Z[!S._.W;K#;N<>XY] MG;16>FM* (L.@DN3X=+::DB(*4H0U/14!=+MK)46U+I0;XBI--!5 E.DB@: M$$&9Q'D:UN8Z3]7.';>#CJ^_R0\)-!;4[FR#M9*K7UP725X<@+ @Z%]0S4 M#7L8 ^>>R,GXTW+BKJ0'GLZ/[%^"=^=E20V,%?_%5K;,\$>,5K"F.VX?5?T5 M6C_7GJ]0W(0OJIO<@4LN=L8JT8*= L%D,])#>PXG@"1Y 9"T@"3H;@H%E1-J M:9YJ52/MLQV;GP2K >W$,>DO96&UVV4.9_/I_?AA=H=^W/Z^6Z#WZ-ZUP4,% MFEHF-^B[,@:-J=;/2UILT>4$+&7<7*$+Q"2:,<[=P9J46"?$TY&B+3IJBB8O M%/U&90_UXW \[=OXD'T^15M_4Y;_S7V?"H+)0!9>G"]7 #;TR6'G>,&B?X/;72MECX/NJ^ROD?P%02P,$% @ ZX&%6?6D[:7* @ JP< M !D !X;"]W;W)K&ULK55K;YLP%/TK%JNF3MH* M(0E]C""U2:ME4M 2K!J;V2;I]NMG&T)I2]!4[0OX<<_Q/8&; M8\*<*+1CMR(*>:DH87 KD"SS'(O?%T#Y=N(,G-W @JPS90;<*"SP&I:@[HM; MH7MNPY*0')@DG"$!Z<0Y'YQ- Q-O [X3V,I6&QDE*\X?3&>>3!S/) 048F48 ML/YM8 J4&B*=QJ^:TVF6-,!V>\=^9;5K+2LL8/ !'2#"T%W&2ZE!,G253MDL[,9U>A=5>OZ>]$[1-6=:/-#3^3!8YAXN@K+$%LP(G>OQL$WN74$" M E,DV@ZF[; WA3>*'#<"!SW"KQG M F*^9N0/)/K0V]MA-*V 06INC0"*E9Y3?+\)/094JX];!OBC5P;TIOA& X+& M@*#7@/F39E%7!"-/KU1@TK8$.O4%KS9X<'+J!R\$=D7YP7$3567NMNIA#F)M MGPF)8EXR597&9K1YB9]COX"4$L#!!0 ( .N!A5E-% ?*T0( M !L( 9 >&PO=V]R:W-H965TL MFEII:R#A9>L@$J6MUDE=46FW?37)0;PZ-K4-E/WZV0ZDH:395NT+?KOGN7O. M\1V]E9#W*D74\)@QKOI>JO7\Q/=5G&)&U+&8(SGR,2J[S6][<8-G:7:;OA1;TYF M.$9]-Q])L_(+EH1FR!45'"1.^]Z@>3+L6GMG\(WB2I7F8)5,A+BWB\ND[S5L M0,@PUI:!F&&)0V3,$IDP'C:<7N'2 LOS+?N%TVZT3(C"H6#?::+3OO?!@P2G M9,'TC5A]QHV>MN6+!5/N%U:Y;3?P(%XH+;(-V$2049Z/Y'&3AQ+ \%0#@@T@ M> YHO0 (-X#0"'UU#K>#'^=C> ]CP8B$KXVP5A*/]XX/LT=!R\X_@A7@NM4&6<))KMXWX@HE 1;):=!+>%U MK(\A;+Z#H!&T*N(9UL._$/X2?"> M>9P*Y1*]Z.V;9J?QJ4K:?R+;$=HJA+;JV*,169M7K<%4%,"'!=5KR%"G(C$? MR!*5MH=5"$$1YCI9C.GIBF MZ1#/]'3V[C)HEHQVXNP6<79KXQQD0FKZB^B\7S"B,0$M8'P[_,.7U=V+IKL7 M<:WO?[T!OU1_,U,Z75M2X)*;E^)BM^A\ U?P_2?SO&U>$3FC7 '#J8$VCKLF M\S)O1?E"B[FKYA.A36]PT]1T;Y36P)Q/A=#;A750_!^(?@-02P,$% @ MZX&%6>*G=[#' P X T !D !X;"]W;W)K&UL MK5==;]LV%/TKA!8,"=!:W[*5V0;\H:U]:!K8R_K,2+1-1"(]DK:[?S^2DA6; M8H5TRTLL4>>>>\\A%[B5A 39SK68X]L.J8'46*"'AG@AZJ"[)\Y*NEI MXOC.>6"%MSNA!MSI> ^W:(W$T_Z1R3>W92EPA0C'E "&-A-GYM]GOJ<"-.(O MC$[\XADH*<^4OJB7S\7$\51%J$2Y4!10_AS1 I6E8I)U_-V0.FU.%7CY?&;_ M78N78IXA1PM:?L.%V$VFN&N G0TMU:NS9N M"06"!;\P\7 GSMZX) 4PJ^Y M&(#0_P "+X@L]2S>'A[:Y/R_[-E_SGYE1M@NEU#SA6]>+K89KCDB.X=J??=\ M#W,T<61OXX@=D3/]]1<_\7ZSV?N>9,OW),O>B>QJ(J)V(J(^]NF#W$,PR6F% M;!-0QR8Z5FT5QVDP\GQO[!XOG>VBXBB)KD%+&\A+#:K,DM +HU?4E<:XU1CW M:ORFNSPJ #PB)G#<9D>=)KZHS@_C MT+3#A@J#D>&'%94:J,R*&OEV/Y+6CZ37CVRSD=LKU_H%S5\ /$%F[[%))W_L M&3.[Z&*"T#?4=C%1&!A:NQ@_&=F5#ENEPW>=^0*7!V'=+>;#;G617)J&%Q94 M&,>IX88--3+746;EBE*[(Z/6D5&O(W.UML&MW%L+6I:0<;"7?F@S[FRR:[;A MY>0.O*&AN@OR!I&Y!+J@:&"NI:P+\@=Q8)>E)_0G3:[4*&XM2F MV!#WWL]BWF]BF=$8+V4Y=D9R-Y>R9.T_D^W'J-ZN7YV MEVW8+E=M8G;YI07D1^;RMX!&G<[G7IQ8*\2V^JK I>8#$?5II!UMKR,S?0@W MQN?^_<*WC"_5]46?D%_IZ[O/%\BVF'!0HHU,Y0V&LE)67R?J%T'W^KS\3(4\ M?>O'G;R"(:8 \ON&4G%^40G:2]WT7U!+ P04 " #K@859MKT;>;4# E M$0 &0 'AL+W=O^I-R8ZG20[W%+%=EF'ZWQQ2MU_8E^6[BW=YP@P6)/TGB7@\ MT\8:BF"#=RE_((?W4+W/4/*%)&7E+SHH6W>DH7#'.,DJL(@@2W+UC[]6>3@" M")YV@%4!K%. \QV 70'LAA5@-&Y +<"N*58*KNE-#[F MV)M29;9!F6TQ+/HAO^<9=VPOWSO=MMV?BYX)<_YWW5#5]#,4"FV^:](85=%Z9= M\MD7%&9;A2D6IYU%KN,35N 09II8J!G0/6C>K[^8(^./-GG[)//[) OZ)%OV M2;;JB:Q1)$Y=)$X7NW1M MR\N\D_W2XNF3S.^3+.B3;-DGV4J1F6IWDJ>FO6<,K.%4W[=4Q;"NBF%G53S M=I=BBD+,XEI^<3X)Q2!$J #:J)"VPE .QHVP;/=;7$IQ9>4VK9HV?BM3TR9H ML[DY];9LLQHW;5:=B?G!R3BJTS[J3/OB>-91*'8TC,6$9.A*3$EU=+ANRW4G MZZ63L$\ROT^R0)$-C^0S3=LP3D1^;669EN.8)SKW%%E#9[?6V?T1G5L7V$ZF M2[7MD\SODRQ09#>-J3DZ4?:US7C@G,C:4U -6<>UK.-.6==RAJ*")B&T*3E^ MM=8-W8%Y4I>+3A>72O3:I7TS&+DGB^=9@2W/XEKU%+[*OWYT*\N ;LL+-Q-; MSR[GZAQ&PO=V]R:W-H965T'' 5^$#Q*>_- ;[^]QA'M'C/N;.GJ/XWV2C5$H^A\$V.1]MTG1W.AXGZXT* MW>0DVJEM]LY]%(=NFFW&#^-D%RO7*XK"8$PGD_DX=/WM:'56[+N.5V?18QKX M6W4=D^0Q#-WXRZ4*HN?SD35ZV7'C/VS2?,=X=;9S']2M2C_MKN-L:UQ1/#]4 MV\2/MB16]^>C"^M4VHN\H/C$'[YZ3@Y>D_Q0[J+HWWSCC7<^FN0]4H%:ISG" MS?X\J2L5!#DIZ\=_>^BH:C,O/'S]0N?%P6<'<^MHR I_B7/Y6?G68OKQR2-PGUQMAWZV_*O^WG_11P49)SF M KHOH%T+['V!W;5@NB^8=BV8[0MF70OF^X)YUX+%OF#1M6"Y+U@69[<\'<6Y M=-S479W%T3.)\T]GM/Q%(411G9U"?YN[>YO&V;M^5I>N;C^^O_I=OG_KL)O; M'PG[\.G-Q[_(+\3QGWQ/;;V$7+N^1WYR5.KZ0?)S]M;W9$R2C1NKY&R<9CW( M.>/UOK7+LC5ZI#6;O(NVZ28A;.LI3Z\?9SVOND]?NG])C<#WZ_2$V-8K0B=T MVM"?*W/Y;X^!L=PQEU_LXJQ\4B^['WE0NNQ^[;3B3 M=B6B7?"F1W@99D8^V,3;F]C[#*>J/A)C58_?&?-)[\V MF8&$.4@80\(X$B:0, F":;9-*]NF!=T^8MOA]>V+>Q*6[4>LH]HCGIJI)-'-Q<=&G]BMR M]'\\8WU?MY PAH1Q)$P@81($T]R:5V[-C7ID5[/LQB(]*I>YNAI1')7+6-]7 M+B2,(6$<"1-(F 3!-+D6E5P+HQX78?28N76M8G*;WP T"582E@4AOV]^6DU. M[,7L;/QTJ)&QG;X:(6$,">-(F$#") BF:;2L-%IV&.E3XTC?2.@[VD+"'"2, M(6$<"1-(F 3!--M>5[:]!H_T7R/=0\(<)(PA81P)$TB8!,$T]ZQ)/;LV&3+6 M-U?W=:VE+\6$C^G6P8%VAT%I'$H34)I$T73)#J9PK4&#?G-Y;\O,G:FF%8]; MANP.@](XE":@-(FBZ9;1VC(Z>/1O1O0VC3;=3.BW$@ZT20:E<2A-0&D21=-M MJF?[K2[3_9;Q)L",Z&T3=,(?2F-0&H?2!)0F431=NWK:WT+/^UO0B7\HS8'2 M&)3&H30!I4D439>PGO^W!@4 YNK>QD'S@)8C*T)A2H\/_ABT.QQ*$U":1-%T MR>H@P!J6!)C+>UL :#JWZZ<%QRZ!I )0FH#2)HNF6U8F -3P2,"-ZFP;- M#JS&O$*_Q6#0)CF4)J TB:+I-M7!@-6:#$S)AZGYI@ :#4!I#I3&H#0.I0DH M3:)HNG9U0F"A(P(+FA% :0Z4QJ T#J4)*$VB:/KO6.ND@ Y*"LS5?8V#TAPH MC;5\3\6/9DTI!H=V1T!I$D73):N3 CHL*3"7][8,27.@--;R154_S3YN&30I M@-(DBJ9;5B<%='A28$;T-@U)%)@1O4V#)@50&H/2..V08@AHDQ)% MTVVJDP+:)2DP/T-@1O2V"9H40&D,2N-0FH#2)(JF:ULDU$F!/2@I,%?W-0Y*VS)H4@"E,2B-0VFBY21JSV(T6_8MD@*[3@KLX4F!&=';-&A2 M *4Q*(U#:<)N2C'H5\]U2U2;NDX'2PAUB0K,#Q68$;UUPJXBA%U&"+N.$'8A M(>Q*0M\B*K#KJ,!&1P4V-"J TAPHC4%I'$H34)I$T70)ZZC 'A05F*M[&P>- M"J T!J5Q*$U :;+%B/)AC$GCZ$^7K(X*[&%1@;F\MV70J !*8U :A]($E"9; ME"@M6W:PK(X*[.%1@1G1VS1H5 "E,2B-0VD"2I-V4XQQ<(]1ZC0^6.PV5/%# ML?!Q0M:Y,^7"L=7>:G'EBV))X:_V7UJGLEPBN<:4*S:_<^,'?YN00-UGR,G) M(KO0QN4BR.5&&NV*)77OHC2-PN+E1KF>BO,/9._?1U'ZLI$W4"U%O?H?4$L# M!!0 ( .N!A5FD!NQOFPD (* 9 >&PO=V]R:W-H965T\YSU_. M^OUL]BR787:2O,A8??.8I,LP5YOI4S][264X+RLM%WTR& S[RS"*>Y/S]"[=,Q&,BPIEB;\BN=BX^/\HC]LVBXJ[G]_HO#QY=3(/82:GR>+O:)X_ M7_1.>\Y'UUY_Q$91Y&B^QGY]?J,&1ZWL]5BT6]_JRB3S=T MTD+WG$])G#]G#HOG;M>'XB5>#W+3QS/ M_<4A ^(W79#CJM/#JWM-E_.XUOEQK0M[]3_"N*UUHRN\K72]DN>W2;>2I3-- MXIF,\S0L![?;*/OL_.=)P5E33KQD3I! MPB@2QI PCH0)$,S02;#526 =::Y6RP>EDN1Q:X6-&ME @A)2_ GX.E'#W.MN MQUN;Z=KQ2!A#PC@2)KZ]JM[VJAJ].=SVYO (WU [U9Y9[EQFFT%<\(91DCI$Z0,(J$,22,(V$"!#-T+;JTJ:+6.\['S#VN[70<) M)(PB80P)XTB8 ,$,6;D#G;X,4'92D4!2@=(HE,:@- ZE"13-U,M.6N=:!Z(; MF18R"9]D82W+OKC6U.]*"H)$LE$:A-%;1]DZ H'EK2Z-^BP7I*-6U9ZG? M84$'3("0B>,42J-0&H/2.)0F4#1363K6=<NW=SG.94= M?OVQ-]UU4('2*)3&H#0.I0D4S128SG<)09D0@::V4!J%TAB4QJ$T@:*9>M&I M+;'?]WJ<"7F'F1 TH(72&)3&H331[W6-7^"96]T:ZC#I1&H30&I7$H3:!HIK1T8NRY M*)?RH $PE$:A- :E<2A-H&BF7G0 [-EO\#W*I2KVGFG&U'X(G:4!S7JA- ZE M"13-E,;.$@=[LMYDK<:1C_%_2;@XQP*&AI7-)<8?G=* M/P:'.YD>^:Y5A+N9%7R^E:RI&A64Z@SM;L M*1W.>GO"V5;#L$]X;(X!C6RA- JE,2B-0VD"13-UI9-=#[;N@0=-:J$T"J4Q M*(U#:0)%,_6BDUH/LOZ!G=)9*WN74Z -1;RZ(]B6#ZBZ:B]%H,[,O/XZ^?3V M))_?Z0.-CY/:S %Z6RR41J$T!J5Q*$V@:.8J:CI+]6&K&/C0@!1*HU :@](X ME"90-%,O.B#UWW$5 SN[LX(:']HGXYIMM!2K6T=+L?IC-\W%W%JC G6F9B_I M6-+?$TMB+&3S0([%0NR'T;E#H4$GE,:@- ZE"13-%)L..GW84@0^-,&$TBB4 MQJ T#J4)%,W4R\[*K=;$ZT@+@6::%:T^FM<#J>9BI.X@S;#Z!*2EV*CN(.\1 M&_HZ-O3WQ(8@!ZGN9[9Y"#1CA-(HE,:@- ZE"13-E)O./GW86@(^--.$TBB4 MQJ T#J4)%,W4B\XT_7=<2\#.[JR@YD?GO;J'-!<;U4T$FDM":0)%,_M$V5ON+!SH3:A0&H/2.)0F4#137SKM#6"K$ 30P!9*HU : M@](XE"90-%,O.K -WG$5 CN[LX*\IENSW.$W7M58CGBUI(X%C0_QDQJ.M^#\ MVJ\] G6R9D?II#2P)Z4'& ?NA=XS"J4Q*(U#:0)%,W6W\\XLV+(" M 32]A=(HE,:@- ZE"13-U(M.;X-W7%; SNZL(&B>"Z4Q*(T'!RU2(%"-FM+0 M06U@#VKOBS<7)\OE*HYF&VOZ&#^FX<;+5JF$3(*@>2Z41J$T!J5Q*$V@:*;0 M=#H>*ZN]5/Y,OO,*5>2V;Q!>KO7J=YM?W99 MOB:^MG_JGE&W83]SSWBYOZ_QD_,7U=.?PO0IBC-G(1]54X.3D?JS*=V\\'ZS MD2&PO=V]R:W-H965TR6JLHEBFZ_)+9\^E!UNDGVJ2XV3^[JYH_VNJJZZ-M\MFA?'UUWWS=O5O=+?&6GT4 MG=^V73W?-.Z_P7RZ6/\_^;818JN!E(\TD)L&J=2_P=+$<69^[IO_K MM&_7G7XNWKXO/GR)/A4??_OTY=V'M]&/>=5-IK/VI^B':+J(OES7M^UD<=&> M''?]\9:MCL\WW&_6W/(1;A6]KQ?==1L5BXOJ@FB?\^U3IOUQ'^=#L/(^V#>2 M)?SMO/LY4N)%)&.IH]\_Y]&//_Q$?*]L.(UB:/(1WR9JJZO^Q.T(NB+,MRIY MFG].%OLTVM%>/0PTM>)5CPVT=5S1I^JF;KKIXBIZMUA?&/L+##6VUG2:IEM> M<%^U-Y/SZO51?T5MJ^9K=73Z][\)&_^#ZM"09'E(LB(D61F(;*>#]4,':X[] M]+>;JIFL.G8SA*._F,'\AB4[M'M#DN5K,K,B6]Z8OYZ*D^.OVWT6\G!E(+*= M/C,/?6;8/OM4?:T6MQ5Y;5^WM%LR2./B.-G5(L,P894S9A>68YC5PL4 5F"8 MCA/GTEU8R48U4C/[H)EE--G7;1C=-?3DE+PH.A:"UD@[(AE$B ME0J..(Q*E7(6B(91QLD8=%3)1C52L^1!LX35[',_Z^ZOJB^BJVK17V%G43\9 MBR87_5QPVG;+*^[7*JJ^]4ZCI<=B@M52:0K4R@B4Z$]CH"E&*9=H,,(* B6U M!;U8LE&/U#1]T#1E-7VW.*_G5?3CK!^./T6733V/ZO7MJUZ0(J8XI%@I"43$ M*)=8>#9CD#%&0@TQ2FJG--"0C7*DAB+VUB'F[_C===7T'F%+RQ?1HB+/[ W5 M=D#6:G V9@1*.:6 @@2JOY5H($Y!P)R4H,]*/L:Q&F[9+W' 2#RK^BEQ=2]I M-_E&G](;SAV9; JO]!D!$\*D2$X,<_VM7D(YB8.*U%BH)QOO6#VEUU,.T;.7 M[OZB2 HH42Q):I%^&&4%O.WF!$KTUT0D'P$35B#YV/#&RN=-FF MPNF'JMN, M/E(VA:]*22QBJ!N&&6TUU(U"Q6D,=2..&2L=0]V>P_H([WT$;WY^F2]-[?]6 M-Y#EY'"ZZ":+J^G9[)$3&'N,%(V^_9B%I(H8Q$HCV'#Q'>B C>B7QLEI.6[ON+ MZ&8VZ?WV'LB>'^2W3;-2KNVK3I:.&P8G'!"0VM'X(S0L1-0O&%\Q4"^!!MR+\UL.CF;SOJ1]IOE_*! M?,5 OI+ J5C*K5GZKC[>40C>4KRMZXN[Z6Q&BD+,YI,87[\&P?)AL&(8K-P+ MV\VT>W,@>7/PI>Z67O71$TD2LW.;)&B@$#ACE37P*C20KQC(5VYP.R=2FDCY MR(DD_8Q?[IOQ=U73S[!N)HOO43&;]D;^<=_)SMDN3M$I<_E]BX*!-#K\0?X."N MPL?4"3QF$?2892BVW2[PSDORSBNKF_X*:CRAEOQAGM?"I5O?G!!%;$&!^0E(/!L)R!PF(;ZVKNJ>K>N>+?^ MA!RKP@MF<,&8@" 5][(4^UE*/LJQ*GH_K/A5N?UY544LC\DX-C!'1N"; W*O"[D]86!>342@#[\/Y(*YB$%?)1S=6/>\0 M%>\0]V4B%5'P)Z5(84J?P#EE4*7;0+IB&%W)!S=6/&^Z%+\P][&^ZV@RD;UFNK M0.9FT\\AV?*@;$50MC(4VVX_>U.H>%/()3 5MF*ROXFFT 2."&%@FG'G,#I MU I8D550QTUM(M&4.U9$!U0!ZP([^>43-"LAO*(SL&"X9S :2D- M+,HN")PT1L)*G9(/<:R$W@.J/6NF>\J!%5%VF20"J8=A0AD![1X!<\H*:)\) MF!96H-'W'&Y/>[>G>;?WU"29QLXKT1:>V@3**EBBE1,H*5P":VH(F' .7B9* M/O"QPGK#IP\IR!R0)M-$762L4"T- 7.XF)! &9&@ZF ")E6*QB@?ZE@IO>O3 MO.L[)$NFL1$S%A81901**3BSS@F4T J/1PQ+XP1:/S[&L1IZZZ=YZSK>" "E8P%GR(8V5S%M O<<"CD^!:5Q&*54,2WP(E(%3I)P :2.1 MGD3=IH CNN0#'BNH-U=ZSQ-D>[-AFGKDJY_!H8%(//.5IKCH=2!?,9"OY ,< M*Z!W+7I8F>:>?)@F#(?HY]_H.D@8#MU/AF!.;"!?,9"OY*,9P&8'3TJ(Y>#Z0 MKQC(5_+AC7W@V!L7PQN732IQVFN8]7>-KKE=;S%R<&:1/\ZA&:>@;'E0MB(H M6QF*;;?_O;\R(FQFT00M@0W*E@=E*X*RE:'8=OO9FS_#FS]V:P'LO+10< := M$3"5:/@0;$[ A-(6/@Y94+A8:%1;P@Q;X!>45#>"WK#!*0@*D$ M6K*<@/73FD3!^S.!2Q(#NZWDXQNKGW=XAG=X^Y**AO!E)H%UN20*[3% H(1- M8-U.0<%DB@I(^,#&"K>U%PCO\YZ:4C2$]T*; V04RDHXZ2%0QJ(,#H'J.PE. ML_FPQ\KJW9[AW=[!"45#52:BO08H5(I*G B4$ (^M%T0L'X4PU08'^A8(;WK M,[SK.R2=:(@U*2A@(/>U$9KP?%#DD >#3XP8[/?3T^ !,3F#PT^,D"#Y5R<*(7!"AU2,WG,#O6FQW[U/I&2ZQOQ>A$R@B82A.X;) /8RN& ML95\<&/%\X;'!JENM-1&(!:6M6<4S"0*G6Q>RP/D\FU MV'ND:#.N;! J'X0J!J%*/J2QDGFS8WFSLR^+:[&UL$[ 39$R F8SV\7T_.UBUFF\)K).I=[V\\##\[E\D<\-,<7 ME"T/RE8$92M#L>V.!._(K N;R[4A+5 6E"T/RE8$92M#L>WVLS=[EC=[7"[7 M$@^N&;AQ9$:@= PGSCF!$G&*-HDE8=K"ZB<^J+&B>5-G>5,W:)]8PEQ9M)<0 MA4K@#F@Y@7)I@K2C]JA42+KG\'/.^SG'^[F]V\1B@Y7"98&, F!*FH)E$QA MP4A!H:R"^5L^JK&J>4OG>$OWU/RM(RH4X;F7$2 +RX]S B1ZWP%%)7PD?O2* M#WJLJ-[9N4'[20[/WCKLN20L\\P(D(&>-B= *5J3H9C0 UA\C&,U] ;/\0;O MD,2MPX;K);P>\H<[]+Y/'!'.RZDO!4UTJ"^UJ[&W@(ZW@*/RL0X[-8GJ5 @0 M,58)SX<>I*:84&D9'^=8';TO=+POW)=*=,3R%4Q9920(>D("I. #&@4)@H\( M\B&-E7V[Z-9OA'KX].'M<[^LWKD& M/G\C7F6"^#P7KXKUN^4\_?I5=^\GS=5TT4:SZK(_5/SS\M[7K-\>M_ZEJV]6 M;SL[J[NNGJ]^O*XF%U6S!/1_OZSK[OZ7Y0$>WN%W^G]02P,$% @ ZX&% M6>)3&%'; @ W0< !D !X;"]W;W)K&ULK55= M;]HP%/TK5E9-K;0U(9_0021*6XVI!01T>S;A0JPF<68;0O_];"=$% +:0U\2 MVSGGWG.NX^MN0=D;CP$$VJ5)QGM&+$1^9YH\BB'%_);FD,DO*\I2+.24K4V> M,\!+34H3T[8LWTPQR8RPJ]F9!T+ MM6"&W1RO80;B-9\P.3/K*$N20L8)S1"#5<_HM^X&@<)KP&\"!3\8(^5D0>F; MF@R7/<-2@B"!2*@(6+ZV,( D48&DC+]53*-.J8B'XWWT)^U=>EE@#@.:_"%+ M$?>,MH&6L,*;1$QI\1,J/YZ*%]&$ZR3Y\>5Q-.\_HZ?AJ#\:#.5H-N_/]2H:CI[&TY?^?#@>H>]H+&)@:+!A M##*!^IR#X.CZ 00F";^1@-?9 [J^ND%7B&1H'M,-Q]F2=TTAM:J,9E3INB]U MV6=TC2-QBYS6-V1;MMM 'URF_\+9.;HI*U27R:[+9.MXSB>4J\(R!8O$D!RKY%,FF.RE/N_1T+C_I=Y?)U']9IMV&IW;+]K;@^]-J%L/ZA1 M'TRXM0GWHHDI+N09$L (3K@4NI4_,V7O32K+0-Y!?L=UVDQF14&M*+BH:$X%3A#5[2FJVA/6[:E)9G#R5SFN%W2.=#:@.K;7.1)J M'C1?=?&]8+8F&4<)K"3/N@VD459>)N5$T%SWXP45LKOK82SO7V *(+^O*!7[ MB6KQ]8T>_@-02P,$% @ ZX&%6=G;:[?" @ M0< !D !X;"]W;W)K M&ULK95=;]HP%(;_BI554R=MS7<"78A$::LQM8 * MW:Y-.!"O3IS9!KI_/SL)$86 >M$;\,=Y7S_G)#F.MHR_B!1 HM>,YJ)GI%(6 MUZ8IDA0R+*Y8 ;G:63*>8:FF?&6*@@->E**,FHYE!6:&26[$4;DVX7'$UI*2 M'"8P13D#4,>7 ;\(;,7>&.E,YHR]Z,EPT3,L#004$JD=L/K;P HU48*XV_M M:31':N'^>.=^7^:N[Q;C3K/Z#[X:@_&@S5:#KK MS\I5-!S=CY\>^[/A>(2^H7Z2\#4LT-VK>HT$"'1Y"Q(3*KZHS>?I+;J\^((N M$,G1+&5K@?.%B$RI./5I9E(SW51,S@FF<2*OD&M_18[E>"WRP7GY3YR?DINJ M.DV)G*9$3NGG?D")VI*MW+UV=_V57HL")] SU&UOJ'V3V MIA!N4PCWG'N\>_@%9W_45X@2)F3KXZUL@M)&MY%-[':[EA.9F_U4CJ.\KNWZ M3=0;1J]A]-[%F+!,OZ%8]XHVQ,K%WSO<<6VW>X#8$F4[5M".Z#>(_EG$!U!M M!U&"YX022:"UA/[QR8'7. =!S5 M"7RO'2ELD,*S2#,F,54-OWJR4+>>-L;PZ)4*.V[7/6 \CNK8H6,?0)I[355? M:(^8KT@N$(6ETEE7H4J25Y=$-9&L*/OLG$G5M6QEUY#B9X[*67S]? M.TT_\.TZ'@9=*HA]C\^YQ_9-8^A7>BG8W8PQ'2QR(:L!F6E=?@S#:C)C.:TN MBI))@V2%RJDV734-JU(QFE9 RD78:;7B,*=J\V*MX]2'R/-";"_V)F'B(IPWO%*%U6]Y\&TSH6')8 ME\FPGQ5R72T1<0&C3G,6/%(Q(",J^%AQ8&4TYV+IPAT(3 I1J$";,C7IVA"I MGAS<=CVHX%HGY[)0-K?+X'Z/Z^$[P*H'!KD0C<$.<8%AOZ1:,R5O3,<.ML%G M4%"W[Y>E<3A5=-GN7)$UP=Y,DG&A4J::-&VR"@W[@F5@1_'I#.ZZ*$, M2YR MTT@YG1:26@\K1MTPLA,FQ!T\WC^R+>U%MK%O=M=DTS2&ZJ:3<1W0WU1SVINR MER_2#4K^6.C/\8%8H_F2R0:E,3( I$CPRI?ED,_)+T?*>+?2JG!89[KESA)[_[3I/F62* MBDW3IO;?\BJ_V''4?2W+]EMEU[#78_W.?NLFKX[!9'P,)H^B)GO'8#(Y I/= M5_O6/-QD]#87,JQ/0AO'K:W#5A,-X% [(-_AB"S628/QG O-9=V;\31E\MF9 MR\AK.C9_J&WIF_$IR^A:)%$4Q]B*CD9>!R-LW>(8?OQJF#=@ M8'D@T]^M-;[;>(7LKP-L3_=5"#93O!*QF>)K#8A_W8"1)/[=QO( ]L%K'8@ MOS\/U)2?$T6PJY@W[ G&D23!$*A%?XW&,;(Z,7S\^X,])5&4)'X$,+^#*,(0 M>!IQ!', 'C DBNQ[<.=]%*[>4^'ZOY?#WU!+ P04 " #K@859EXJ[', M 3 @ "P %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S9?$6!/D! M5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X 4BV)8]I MSI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA-/E_G;@2=&A(E@6FD7)TZ(=I7\= MQ_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0 ( .N! MA5DH'_/KB@4 (DL / >&PO=V]R:V)O;VLN>&ULQ9I;<]HX%(#_BH:7 M[BQ4?%ZO'G,MJ'T?% MLQI0EANQ+7M$LIQ?]0ZG$"930F6E@T0"N;^4/K>^4_W30;J_ZTKC&C%4%T(? M4$':@.-!CN;AF(8Q'1/]+9Y/@[&?Z(TXT1\S&AJ0%@!IG03RVI_ZX8@2 ](& M(.T30GZS#$@'@'1.V-PM2!> =$\):1N0'@#IX4*.:3R*@D42S$,RGY#DEI+K M91R$-(Z)'XX-R', \AP7,J)W-%S2F$RB^:R.9A+YHR0F7X/DEHR6!N1' /(C MT?I/Y+Z%_+X,Z?TC!I@DB"\(X:D)\ R$^XD!,_B(A&6U(RHWZ\C.K1 M,8G-07P C>(#7#Q_-)HOZZA%=$1U"*^G9MR&H&"0#1.$B1_>!)J(^'%,VS&# MI#)$MLHD"/7('(0WQ(\BC7CN-/FU%$!XWJ MT-$6&F2,(;(RXF0^^G)V[>^E,5MH??CUT&SR0;(8(MLB"#45)8G_=SMFD!N& MR'*@?A3JAHS)@D8DOO6CUI !"6&(;82E;L^9IM+/VHC6TJK;LA4X2 5#9!?$ M]*;NEWJL70Q%>*R0=>_U=I,D*. ML) = >:@K6S>@KQA(7L#S$+;F)!#+.QI!Y2'MC$AE5C(*GDC$R4?$J9!6L\F M9!<+V2Y':=\!\'>3$+*,A6R9MW*&5U 3$[*-A6P;,W7HBJ$-&<=&-LYQ#M&) M"-G&1K9-T\RW\^F81O%O3<]._NF$A&QC8U>XNC.>CDYM@R4N9.$<93Z=@81< M8R.[!DR!6H.X#;G&1G8-K$2SQ&5#KK&170-C.B8FY!K[E&6N;ZZ)"0G'1A8. MC.F9F)!P;&3AP)CG9B$;4H^#K!XX73.[D /IQ\%>8 $QS2[D0 )RL 4$8II= MR($$Y&!7Q4!,LPLYX"H+LH7>RM'/R$1(9B[].9"%'&0+=52-R8I MB0D9R,.>!;U5+=S'T\2$#.1A&^BX6MC5X)!]/&S[@.7"UJMFX+MFR/:!,ME]O5CEHWTOKF< M%BP]O$E[> OX\[]02P,$% @ ZX&%6! M-T#(HPS=1Y +Z1 ITA@\%3$D>/E7'X@AGWZ50SONNU/=[?NZ^#@> M3G75[,:Q_Y%27>_*L:UW75].YRN;;CBVXWDY;%/?KM_;;4FZ7.8TW,YHGI]N M9RY>/_OR/Q.[S6:_+C^[]>]C.8W_&)S^=,-[W94R-HO7=MB6<=6DC\/U=$V7 M@]R=)S>+E[=5,[R\29/F#E((TOF##()L_B"'()\_*" HY@_*$)3G#[J'H/OY M@QX@Z&'^H$<(>IP_2)8HXY(@:8(U@=:"7 N!UX)@"X'8@F0+@=F": N!VH)L M"X';@G +@=R"= N!W8)X"X'>BGHK@=Z*>BN!WCIYV2;06U%O)=!;46\ET%M1 M;R706U%O)=!;46\ET%M1;R706U%O)=#;4&\CT-M0;R/0VU!O(]#;)ILE!'H; MZFT$>AOJ;01Z&^IM!'H;ZFT$>AOJ;01Z&^IM!'H[ZNT$>COJ[01Z.^KM!'H[ MZNT$>OMDLYM ;T>]G4!O1[V=0&]'O9U ;T>]G4!O1[V=0.] O8- [T"]@T#O M0+V#0.] O8- [T"]@T#OF'RL)- [4.\@T#M0[R#0.U#O(- [4.\@T#NCWIE M[XQZ9P*],^J="?3.J'2KWV M?*WQ^=])]7B^MUP??UE^G9RP<\$YW5;4Y[]02P,$% @ ZX&%6>(A,D+Q M 0 &2< !, !;0V]N=&5N=%]4>7!E&ULS=K+3L,P$ 707ZFR18WK M)P_1;H ML. '3#*E49/8LETH?X^3 A((*E"1N)M&K>VY$X]T5CV_>_84)]NN M[>.\6*7DSQB+U8HZ&TOGJ<\K2QTM)LV3:ZV^>?8N'Y>!&IC,;G8;1RRYH7UOFTJF_(Z>^SK3RG3UX0RGQSW MQ%7CXU'>4+ O$X:5[P->S]T\4@A-39-;&]*U[?(NMFU93,\MQ7)_B2]Z=,ME M4U'MJDV7CY31![)U7!&EKBUW18_V)Z=\P[3[Y ?GCV7V!>:=M\'YF"<6Z/=Q M;R,93D]]+D0A-?M?\3TQES[X_6B8=DWU#[/S]3ZYL![G$=GX./R./\[XO?XO M^Q @?4B0/A1('QJD#P/2QS%('R<@?9R"],%G*(V@B,I12.4HIG(45#F*JAR% M58[B*D>!E:/(*E!D%2BR"A19!8JL D56@2*K0)%5H,@J4&05*+)*%%DEBJP2 M15:)(JM$D56BR"I19)4HLDH4626*K I%5H4BJT*15:'(JE!D52BR*A19%8JL M"D56A2*K1I%5H\BJ4635*+)J%%DUBJP:15:-(JM&D56CR&I09#4HLAH460V* MK 9%5H,BJT&1U?RGK/?.K?\X?GR6G6WZMWPV_B-N\0)02P$"% ,4 " #K M@859!T%-8H$ "Q $ @ $ 9&]C4')O<',O87!P M+GAM;%!+ 0(4 Q0 ( .N!A5EOZ9)Z[@ "L" 1 " M :\ !D;V-0&UL4$L! M A0#% @ ZX&%6>K$-ES$!0 W!X !@ ("!#0@ 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%6>)^ M(P0- P M H !@ ("!2!L 'AL+W=O !X;"]W;W)K<' 3(@ & @($"*@ >&PO=V]R:W-H965T M&UL4$L! A0#% @ ZX&%6<*6=(Z$"0 2!D !@ M ("!'S( 'AL+W=O&PO=V]R:W-H965T&UL4$L! M A0#% @ ZX&%6B8_ P APH !D ("!NT\ 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&% M64L^Q+X !0 M0L !D ("!R%L 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%6=.?#]']!@ /Q@ M !D ("!EFD 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%6: ^E@$B! ]@T !D M ("!57X 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ ZX&%68,?4<>! @ O@< !D ("!\H\ 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%6?O$ M/XQ$ P 9@D !D ("!_YX 'AL+W=OO,.XO,# "8#P &0 M @(%ZH@ >&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%65,G--A9 P J D !D M ("![JD 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ ZX&%628,)UU; P W@H !D ("! M;[4 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ ZX&%6;CP]N_/!P _"8 !D ("!X+X 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%65)#$222 M P M@T !D ("!<,X 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%61;Q/%OL @ HPD !D M ("!$=@ 'AL+W=O&PO=V]R M:W-H965T !X;"]W;W)K&UL M4$L! A0#% @ ZX&%64 J;S!+!P GS0 !D ("!.>$ M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MZX&%63V/>E$8 P 4PT !D ("!N.\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%6<>PVL3& @ M?PD !D ("!_/D 'AL+W=ORT$ !!& &0 @('Y M_ >&PO=V]R:W-H965T ( (D% 9 " @5T! 0!X;"]W;W)K&UL4$L! A0#% @ ZX&%6&PO=V]R:W-H M965T&UL4$L! M A0#% @ ZX&%664J&^-P P )0L !D ("!UPX! 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&% M62"%+. - @ (00 !D ("!-QT! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%6>*G=[#' P X T M !D ("!A"4! 'AL+W=O;4# E$0 &0 @(&"*0$ M>&PO=V]R:W-H965T&UL4$L! A0#% @ ZX&%6:0&[&^;"0 @H !D M ("!J30! 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ ZX&%6=G;:[?" @ M0< !D ("!(% ! 'AL+W=O M&PO&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-0 M2P$"% ,4 " #K@859XB$R0O$! 9)P $P @ %]7P$ I6T-O;G1E;G1?5'EP97-=+GAM;%!+!08 2P!+ (04 "?80$ ! end XML 81 Show.js IDEA: XBRL DOCUMENT // Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission. Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105. var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0); e.removeAttribute('id');a.parentNode.appendChild(e)}} if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'} e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}} XML 82 report.css IDEA: XBRL DOCUMENT /* Updated 2009-11-04 */ /* v2.2.0.24 */ /* DefRef Styles */ ..report table.authRefData{ background-color: #def; border: 2px solid #2F4497; font-size: 1em; position: absolute; } ..report table.authRefData a { display: block; font-weight: bold; } ..report table.authRefData p { margin-top: 0px; } ..report table.authRefData .hide { background-color: #2F4497; padding: 1px 3px 0px 0px; text-align: right; } ..report table.authRefData .hide a:hover { background-color: #2F4497; } ..report table.authRefData .body { height: 150px; overflow: auto; width: 400px; } ..report table.authRefData table{ font-size: 1em; } /* Report Styles */ ..pl a, .pl a:visited { color: black; text-decoration: none; } /* table */ ..report { background-color: white; border: 2px solid #acf; clear: both; color: black; font: normal 8pt Helvetica, Arial, san-serif; margin-bottom: 2em; } ..report hr { border: 1px solid #acf; } /* Top labels */ ..report th { background-color: #acf; color: black; font-weight: bold; text-align: center; } ..report th.void { background-color: transparent; color: #000000; font: bold 10pt Helvetica, Arial, san-serif; text-align: left; } ..report .pl { text-align: left; vertical-align: top; white-space: normal; width: 200px; white-space: normal; /* word-wrap: break-word; */ } ..report td.pl a.a { cursor: pointer; display: block; width: 200px; overflow: hidden; } ..report td.pl div.a { width: 200px; } ..report td.pl a:hover { background-color: #ffc; } /* Header rows... */ ..report tr.rh { background-color: #acf; color: black; font-weight: bold; } /* Calendars... */ ..report .rc { background-color: #f0f0f0; } /* Even rows... */ ..report .re, .report .reu { background-color: #def; } ..report .reu td { border-bottom: 1px solid black; } /* Odd rows... */ ..report .ro, .report .rou { background-color: white; } ..report .rou td { border-bottom: 1px solid black; } ..report .rou table td, .report .reu table td { border-bottom: 0px solid black; } /* styles for footnote marker */ ..report .fn { white-space: nowrap; } /* styles for numeric types */ ..report .num, .report .nump { text-align: right; white-space: nowrap; } ..report .nump { padding-left: 2em; } ..report .nump { padding: 0px 0.4em 0px 2em; } /* styles for text types */ ..report .text { text-align: left; white-space: normal; } ..report .text .big { margin-bottom: 1em; width: 17em; } ..report .text .more { display: none; } ..report .text .note { font-style: italic; font-weight: bold; } ..report .text .small { width: 10em; } ..report sup { font-style: italic; } ..report .outerFootnotes { font-size: 1em; } XML 84 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.3 html 204 298 1 false 61 0 false 6 false false R1.htm 995200090 - Document - Document and Entity Information Sheet http://www.arganinc.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 995200100 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS Sheet http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS Statements 2 false false R3.htm 995200200 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS Sheet http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets CONDENSED CONSOLIDATED BALANCE SHEETS Statements 3 false false R4.htm 995200205 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS(Parenthetical) Sheet http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical CONDENSED CONSOLIDATED BALANCE SHEETS(Parenthetical) Statements 4 false false R5.htm 995200300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Sheet http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Statements 5 false false R6.htm 995200400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 995210101 - 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 995210201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers REVENUES FROM CONTRACTS WITH CUSTOMERS Notes 8 false false R9.htm 995210301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments CASH, CASH EQUIVALENTS AND INVESTMENTS Notes 9 false false R10.htm 995210401 - Disclosure - FAIR VALUE MEASUREMENTS Sheet http://www.arganinc.com/role/DisclosureFairValueMeasurements FAIR VALUE MEASUREMENTS Notes 10 false false R11.htm 995210501 - Disclosure - ACCOUNTS RECEIVABLE Sheet http://www.arganinc.com/role/DisclosureAccountsReceivable ACCOUNTS RECEIVABLE Notes 11 false false R12.htm 995210601 - Disclosure - INTANGIBLE ASSETS Sheet http://www.arganinc.com/role/DisclosureIntangibleAssets INTANGIBLE ASSETS Notes 12 false false R13.htm 995210701 - Disclosure - FINANCING ARRANGEMENTS Sheet http://www.arganinc.com/role/DisclosureFinancingArrangements FINANCING ARRANGEMENTS Notes 13 false false R14.htm 995210801 - Disclosure - COMMITMENTS Sheet http://www.arganinc.com/role/DisclosureCommitments COMMITMENTS Notes 14 false false R15.htm 995210901 - Disclosure - LEGAL CONTINGENCIES Sheet http://www.arganinc.com/role/DisclosureLegalContingencies LEGAL CONTINGENCIES Notes 15 false false R16.htm 995211001 - Disclosure - STOCK-BASED COMPENSATION Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensation STOCK-BASED COMPENSATION Notes 16 false false R17.htm 995211101 - Disclosure - INCOME TAXES Sheet http://www.arganinc.com/role/DisclosureIncomeTaxes INCOME TAXES Notes 17 false false R18.htm 995211201 - Disclosure - EARNINGS PER SHARE Sheet http://www.arganinc.com/role/DisclosureEarningsPerShare EARNINGS PER SHARE Notes 18 false false R19.htm 995211401 - Disclosure - CUSTOMER CONCENTRATIONS Sheet http://www.arganinc.com/role/DisclosureCustomerConcentrations CUSTOMER CONCENTRATIONS Notes 19 false false R20.htm 995211501 - Disclosure - SEGMENT REPORTING Sheet http://www.arganinc.com/role/DisclosureSegmentReporting SEGMENT REPORTING Notes 20 false false R21.htm 995211601 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION Notes 21 false false R22.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 22 false false R23.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 23 false false R24.htm 99920102 - 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 24 false false R25.htm 99930203 - 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 25 false false R26.htm 99930303 - 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 26 false false R27.htm 99930403 - Disclosure - FAIR VALUE MEASUREMENTS (Tables) Sheet http://www.arganinc.com/role/DisclosureFairValueMeasurementsTables FAIR VALUE MEASUREMENTS (Tables) Tables http://www.arganinc.com/role/DisclosureFairValueMeasurements 27 false false R28.htm 99930603 - Disclosure - INTANGIBLE ASSETS (Tables) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsTables INTANGIBLE ASSETS (Tables) Tables http://www.arganinc.com/role/DisclosureIntangibleAssets 28 false false R29.htm 99931003 - Disclosure - STOCK-BASED COMPENSATION (Tables) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationTables STOCK-BASED COMPENSATION (Tables) Tables http://www.arganinc.com/role/DisclosureStockBasedCompensation 29 false false R30.htm 99931103 - Disclosure - INCOME TAXES (Tables) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesTables INCOME TAXES (Tables) Tables http://www.arganinc.com/role/DisclosureIncomeTaxes 30 false false R31.htm 99931203 - Disclosure - EARNINGS PER SHARE (Tables) Sheet http://www.arganinc.com/role/DisclosureEarningsPerShareTables EARNINGS PER SHARE (Tables) Tables http://www.arganinc.com/role/DisclosureEarningsPerShare 31 false false R32.htm 99931303 - Disclosure - STOCKHOLDERS' EQUITY (Tables) Sheet http://www.arganinc.com/role/DisclosureStockholdersEquityTables STOCKHOLDERS' EQUITY (Tables) Tables 32 false false R33.htm 99931403 - Disclosure - CUSTOMER CONCENTRATIONS (Tables) Sheet http://www.arganinc.com/role/DisclosureCustomerConcentrationsTables CUSTOMER CONCENTRATIONS (Tables) Tables http://www.arganinc.com/role/DisclosureCustomerConcentrations 33 false false R34.htm 99931503 - Disclosure - SEGMENT REPORTING (Tables) Sheet http://www.arganinc.com/role/DisclosureSegmentReportingTables SEGMENT REPORTING (Tables) Tables http://www.arganinc.com/role/DisclosureSegmentReporting 34 false false R35.htm 99931603 - 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 35 false false R36.htm 99940201 - 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 36 false false R37.htm 99940202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Termination (Details) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Termination (Details) Details 37 false false R38.htm 99940203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Assets and Liabilities (Details) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractAssetsAndLiabilitiesDetails REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Assets and Liabilities (Details) Details 38 false false R39.htm 99940204 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Variable Consideration (Details) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersVariableConsiderationDetails REVENUES FROM CONTRACTS WITH CUSTOMERS - Variable Consideration (Details) Details 39 false false R40.htm 99940205 - 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 40 false false R41.htm 99940301 - 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 41 false false R42.htm 99940302 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails CASH, CASH EQUIVALENTS AND INVESTMENTS - Investments (Details) Details 42 false false R43.htm 99940303 - 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 43 false false R44.htm 99940304 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Investments (Details) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsEarningsOnInvestmentsDetails CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Investments (Details) Details 44 false false R45.htm 99940401 - 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 45 false false R46.htm 99940501 - Disclosure - ACCOUNTS RECEIVABLE (Details) Sheet http://www.arganinc.com/role/DisclosureAccountsReceivableDetails ACCOUNTS RECEIVABLE (Details) Details http://www.arganinc.com/role/DisclosureAccountsReceivable 46 false false R47.htm 99940601 - Disclosure - INTANGIBLE ASSETS - Additional Information (Details) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails INTANGIBLE ASSETS - Additional Information (Details) Details 47 false false R48.htm 99940602 - Disclosure - INTANGIBLE ASSETS - Components of Intangible Assets (Details) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails INTANGIBLE ASSETS - Components of Intangible Assets (Details) Details 48 false false R49.htm 99940603 - 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 49 false false R50.htm 99940701 - Disclosure - FINANCING ARRANGEMENTS (Details) Sheet http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails FINANCING ARRANGEMENTS (Details) Details http://www.arganinc.com/role/DisclosureFinancingArrangements 50 false false R51.htm 99940801 - Disclosure - COMMITMENTS - Performance Bonds and Guarantees (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails COMMITMENTS - Performance Bonds and Guarantees (Details) Details 51 false false R52.htm 99940802 - Disclosure - COMMITMENTS - Warranties (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails COMMITMENTS - Warranties (Details) Details 52 false false R53.htm 99941001 - 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 53 false false R54.htm 99941002 - 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 54 false false R55.htm 99941003 - Disclosure - STOCK-BASED COMPENSATION - Summary of changes in the maximum number of shares of common stock (Details) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails STOCK-BASED COMPENSATION - Summary of changes in the maximum number of shares of common stock (Details) Details 55 false false R56.htm 99941004 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails STOCK-BASED COMPENSATION - Additional Information (Details) Details 56 false false R57.htm 99941101 - Disclosure - INCOME TAXES - Income Tax Expense Reconciliation (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails INCOME TAXES - Income Tax Expense Reconciliation (Details) Details 57 false false R58.htm 99941102 - Disclosure - INCOME TAXES - Net Operating Loss Carryback (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails INCOME TAXES - Net Operating Loss Carryback (Details) Details 58 false false R59.htm 99941103 - Disclosure - INCOME TAXES - Research and Development Tax Credits and Income Tax Refunds (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsAndIncomeTaxRefundsDetails INCOME TAXES - Research and Development Tax Credits and Income Tax Refunds (Details) Details 59 false false R60.htm 99941104 - Disclosure - INCOME TAXES - Solar Energy Projects (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsDetails INCOME TAXES - Solar Energy Projects (Details) Details 60 false false R61.htm 99941201 - Disclosure - EARNINGS PER SHARE (Details) Sheet http://www.arganinc.com/role/DisclosureEarningsPerShareDetails EARNINGS PER SHARE (Details) Details http://www.arganinc.com/role/DisclosureEarningsPerShareTables 61 false false R62.htm 99941301 - Disclosure - STOCKHOLDERS' EQUITY (Details) Sheet http://www.arganinc.com/role/DisclosureStockholdersEquityDetails STOCKHOLDERS' EQUITY (Details) Details http://www.arganinc.com/role/DisclosureStockholdersEquityTables 62 false false R63.htm 99941302 - Disclosure - STOCKHOLDERS' EQUITY - Dividends Paid (Details) Sheet http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails STOCKHOLDERS' EQUITY - Dividends Paid (Details) Details 63 false false R64.htm 99941401 - Disclosure - CUSTOMER CONCENTRATIONS (Details) Sheet http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails CUSTOMER CONCENTRATIONS (Details) Details http://www.arganinc.com/role/DisclosureCustomerConcentrationsTables 64 false false R65.htm 99941501 - Disclosure - SEGMENT REPORTING (Details) Sheet http://www.arganinc.com/role/DisclosureSegmentReportingDetails SEGMENT REPORTING (Details) Details http://www.arganinc.com/role/DisclosureSegmentReportingTables 65 false false R66.htm 99941601 - 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 66 false false R67.htm 99941602 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) Details 67 false false All Reports Book All Reports agx-20241031.xsd agx-20241031_cal.xml agx-20241031_def.xml agx-20241031_lab.xml agx-20241031_pre.xml agx-20241031x10q.htm agx-20241031x10q001.jpg http://fasb.org/us-gaap/2024 http://xbrl.sec.gov/dei/2024 http://xbrl.sec.gov/ecd/2024 true true JSON 87 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "agx-20241031x10q.htm": { "nsprefix": "agx", "nsuri": "http://www.arganinc.com/20241031", "dts": { "schema": { "local": [ "agx-20241031.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/2023/calculation-1.1.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/2024/elts/srt-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd", "https://xbrl.sec.gov/country/2024/country-2024.xsd", "https://xbrl.sec.gov/dei/2024/dei-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd", "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" ] }, "calculationLink": { "local": [ "agx-20241031_cal.xml" ] }, "definitionLink": { "local": [ "agx-20241031_def.xml" ] }, "labelLink": { "local": [ "agx-20241031_lab.xml" ] }, "presentationLink": { "local": [ "agx-20241031_pre.xml" ] }, "inline": { "local": [ "agx-20241031x10q.htm" ] } }, "keyStandard": 249, "keyCustom": 49, "axisStandard": 22, "axisCustom": 0, "memberStandard": 32, "memberCustom": 27, "hidden": { "total": 19, "http://www.arganinc.com/20241031": 3, "http://xbrl.sec.gov/dei/2024": 6, "http://fasb.org/us-gaap/2024": 10 }, "contextCount": 204, "entityCount": 1, "segmentCount": 61, "elementCount": 564, "unitCount": 6, "baseTaxonomies": { "http://fasb.org/us-gaap/2024": 857, "http://xbrl.sec.gov/dei/2024": 29, "http://xbrl.sec.gov/ecd/2024": 4 }, "report": { "R1": { "role": "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation", "longName": "995200090 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings", "longName": "995200100 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R3": { "role": "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets", "longName": "995200200 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical", "longName": "995200205 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS(Parenthetical)", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS(Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_Il0HQV-KP0-O9xVNgRGBuQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_Il0HQV-KP0-O9xVNgRGBuQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R5": { "role": "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity", "longName": "995200300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "As_Of_1_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_iKRbctpnuEecVtnl7gQ4bg", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_iKRbctpnuEecVtnl7gQ4bg", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R6": { "role": "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows", "longName": "995200400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ProfitLoss", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:IncreaseDecreaseInAccruedInterestReceivableNet", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R7": { "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentation", "longName": "995210101 - 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_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R8": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers", "longName": "995210201 - 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_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments", "longName": "995210301 - 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_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.arganinc.com/role/DisclosureFairValueMeasurements", "longName": "995210401 - Disclosure - FAIR VALUE MEASUREMENTS", "shortName": "FAIR VALUE MEASUREMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.arganinc.com/role/DisclosureAccountsReceivable", "longName": "995210501 - Disclosure - ACCOUNTS RECEIVABLE", "shortName": "ACCOUNTS RECEIVABLE", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "agx:TradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "agx:TradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssets", "longName": "995210601 - Disclosure - INTANGIBLE ASSETS", "shortName": "INTANGIBLE ASSETS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.arganinc.com/role/DisclosureFinancingArrangements", "longName": "995210701 - Disclosure - FINANCING ARRANGEMENTS", "shortName": "FINANCING ARRANGEMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.arganinc.com/role/DisclosureCommitments", "longName": "995210801 - Disclosure - COMMITMENTS", "shortName": "COMMITMENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:CommitmentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:CommitmentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.arganinc.com/role/DisclosureLegalContingencies", "longName": "995210901 - Disclosure - LEGAL CONTINGENCIES", "shortName": "LEGAL CONTINGENCIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensation", "longName": "995211001 - Disclosure - STOCK-BASED COMPENSATION", "shortName": "STOCK-BASED COMPENSATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxes", "longName": "995211101 - Disclosure - INCOME TAXES", "shortName": "INCOME TAXES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.arganinc.com/role/DisclosureEarningsPerShare", "longName": "995211201 - Disclosure - EARNINGS PER SHARE", "shortName": "EARNINGS PER SHARE", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.arganinc.com/role/DisclosureCustomerConcentrations", "longName": "995211401 - Disclosure - CUSTOMER CONCENTRATIONS", "shortName": "CUSTOMER CONCENTRATIONS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.arganinc.com/role/DisclosureSegmentReporting", "longName": "995211501 - Disclosure - SEGMENT REPORTING", "shortName": "SEGMENT REPORTING", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation", "longName": "995211601 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R22": { "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": "Notes", "order": "22", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": null }, "R23": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies", "longName": "99920102 - 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": "24", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ConsolidationPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ConsolidationPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables", "longName": "99930203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables", "longName": "99930303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:InvestmentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:InvestmentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.arganinc.com/role/DisclosureFairValueMeasurementsTables", "longName": "99930403 - Disclosure - FAIR VALUE MEASUREMENTS (Tables)", "shortName": "FAIR VALUE MEASUREMENTS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsTables", "longName": "99930603 - Disclosure - INTANGIBLE ASSETS (Tables)", "shortName": "INTANGIBLE ASSETS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables", "longName": "99931003 - Disclosure - STOCK-BASED COMPENSATION (Tables)", "shortName": "STOCK-BASED COMPENSATION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesTables", "longName": "99931103 - Disclosure - INCOME TAXES (Tables)", "shortName": "INCOME TAXES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.arganinc.com/role/DisclosureEarningsPerShareTables", "longName": "99931203 - Disclosure - EARNINGS PER SHARE (Tables)", "shortName": "EARNINGS PER SHARE (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:EarningsPerShareTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:EarningsPerShareTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.arganinc.com/role/DisclosureStockholdersEquityTables", "longName": "99931303 - Disclosure - STOCKHOLDERS' EQUITY (Tables)", "shortName": "STOCKHOLDERS' EQUITY (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:DividendsDeclaredTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:DividendsDeclaredTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.arganinc.com/role/DisclosureCustomerConcentrationsTables", "longName": "99931403 - Disclosure - CUSTOMER CONCENTRATIONS (Tables)", "shortName": "CUSTOMER CONCENTRATIONS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.arganinc.com/role/DisclosureSegmentReportingTables", "longName": "99931503 - Disclosure - SEGMENT REPORTING (Tables)", "shortName": "SEGMENT REPORTING (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationTables", "longName": "99931603 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "35", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails", "longName": "99940201 - 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": "36", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_srt_StatementGeographicalAxis_country_US_3Svy5y9ZVEObvIxJvN3gvw", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R37": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails", "longName": "99940202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Termination (Details)", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Termination (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "Duration_5_4_2024_To_5_4_2024_dei_LegalEntityAxis_agx_AtlanticProjectsCompanyLimitedMember_JFhLC5TUq0CZyC-i6PDZDg", "name": "us-gaap:ProceedsFromLinesOfCredit", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_5_4_2024_To_5_4_2024_dei_LegalEntityAxis_agx_AtlanticProjectsCompanyLimitedMember_JFhLC5TUq0CZyC-i6PDZDg", "name": "us-gaap:ProceedsFromLinesOfCredit", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractAssetsAndLiabilitiesDetails", "longName": "99940203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Assets and Liabilities (Details)", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS - Contract Assets and Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersVariableConsiderationDetails", "longName": "99940204 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Variable Consideration (Details)", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS - Variable Consideration (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:NPricedChangeOrdersIncludedInTransactionPrices", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:NPricedChangeOrdersIncludedInTransactionPrices", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails", "longName": "99940205 - 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": "40", "firstAnchor": { "contextRef": "As_Of_10_31_2024_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_agx_cnst_date_20241101_vXGkI7T0N0WgVONd-6qN8A", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-8", "ancestors": [ "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_agx_cnst_date_20241101_vXGkI7T0N0WgVONd-6qN8A", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-8", "ancestors": [ "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails", "longName": "99940301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Details)", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:AccruedInvestmentIncomeDividendReceivable", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:AccruedInvestmentIncomeDividendReceivable", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails", "longName": "99940302 - 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": "42", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:ShortTermInvestments", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:InvestmentTableTextBlock", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:ShortTermInvestments", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:InvestmentTableTextBlock", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "longName": "99940303 - 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": "43", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "us-gaap:DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_eDiYxHo8mUWAZWsc478flQ", "name": "us-gaap:DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R44": { "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsEarningsOnInvestmentsDetails", "longName": "99940304 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Investments (Details)", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS - Earnings on Investments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:InvestmentIncomeNonoperating", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:InvestmentIncomeNonoperating", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails", "longName": "99940401 - 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": "45", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:AvailableForSaleSecuritiesDebtSecurities", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_TqTyR1UbbE60Aa4Kxck_sg", "name": "us-gaap:AssetsFairValueDisclosure", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R46": { "role": "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails", "longName": "99940501 - Disclosure - ACCOUNTS RECEIVABLE (Details)", "shortName": "ACCOUNTS RECEIVABLE (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:ProvisionForDoubtfulAccounts", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "agx:TradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:ProvisionForDoubtfulAccounts", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "agx:TradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "longName": "99940601 - Disclosure - INTANGIBLE ASSETS - Additional Information (Details)", "shortName": "INTANGIBLE ASSETS - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:Goodwill", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024_us-gaap_BusinessAcquisitionAxis_agx_GemmaPowerSystemLlcMember_6Bslchu9lkyXEOk-BKEJIQ", "name": "us-gaap:Goodwill", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R48": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails", "longName": "99940602 - 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": "48", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails", "longName": "99940603 - 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": "49", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails", "longName": "99940701 - Disclosure - FINANCING ARRANGEMENTS (Details)", "shortName": "FINANCING ARRANGEMENTS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "As_Of_5_31_2024_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_WpuDmivJWUqhJ06F90fkMw", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_5_31_2024_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_WpuDmivJWUqhJ06F90fkMw", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails", "longName": "99940801 - Disclosure - COMMITMENTS - Performance Bonds and Guarantees (Details)", "shortName": "COMMITMENTS - Performance Bonds and Guarantees (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:RemainingBondedPerformanceObligations", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-8", "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:RemainingBondedPerformanceObligations", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-8", "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "longName": "99940802 - Disclosure - COMMITMENTS - Warranties (Details)", "shortName": "COMMITMENTS - Warranties (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": null, "uniqueAnchor": null }, "R53": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails", "longName": "99941001 - 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": "53", "firstAnchor": { "contextRef": "As_Of_1_31_2024_eDiYxHo8mUWAZWsc478flQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Unit_Standard_shares_JjZOETMmdkiwS4cDtd-8MA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "unitRef": "Unit_Standard_shares_JjZOETMmdkiwS4cDtd-8MA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R54": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails", "longName": "99941002 - 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": "54", "firstAnchor": { "contextRef": "As_Of_1_31_2024_eDiYxHo8mUWAZWsc478flQ", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Unit_Standard_shares_JjZOETMmdkiwS4cDtd-8MA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_eDiYxHo8mUWAZWsc478flQ", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Unit_Standard_shares_JjZOETMmdkiwS4cDtd-8MA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R55": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails", "longName": "99941003 - Disclosure - STOCK-BASED COMPENSATION - Summary of changes in the maximum number of shares of common stock (Details)", "shortName": "STOCK-BASED COMPENSATION - Summary of changes in the maximum number of shares of common stock (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "As_Of_1_31_2024_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember_vJjKsJIEWkm9b6MGUN0GIQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "Unit_Standard_shares_JjZOETMmdkiwS4cDtd-8MA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2024_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember_vJjKsJIEWkm9b6MGUN0GIQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "Unit_Standard_shares_JjZOETMmdkiwS4cDtd-8MA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "longName": "99941004 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details)", "shortName": "STOCK-BASED COMPENSATION - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:ShareBasedCompensation", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R57": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails", "longName": "99941101 - 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": "57", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_TRNSoDwdL0qck_YEj1T8-Q", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_TRNSoDwdL0qck_YEj1T8-Q", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R58": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails", "longName": "99941102 - 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": "58", "firstAnchor": { "contextRef": "As_Of_1_31_2021__uYWQRCvDEuVgFN5HgXZ7w", "name": "us-gaap:DeferredIncomeTaxesAndOtherTaxReceivableCurrent", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_1_31_2021__uYWQRCvDEuVgFN5HgXZ7w", "name": "us-gaap:DeferredIncomeTaxesAndOtherTaxReceivableCurrent", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsAndIncomeTaxRefundsDetails", "longName": "99941103 - Disclosure - INCOME TAXES - Research and Development Tax Credits and Income Tax Refunds (Details)", "shortName": "INCOME TAXES - Research and Development Tax Credits and Income Tax Refunds (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:IncomeTaxReconciliationTaxCreditsResearch", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:IncomeTaxReconciliationTaxCreditsResearch", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsDetails", "longName": "99941104 - Disclosure - INCOME TAXES - Solar Energy Projects (Details)", "shortName": "INCOME TAXES - Solar Energy Projects (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:PaymentsToAcquireEquityMethodInvestments", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:CashInvestmentCommitments", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R61": { "role": "http://www.arganinc.com/role/DisclosureEarningsPerShareDetails", "longName": "99941201 - Disclosure - EARNINGS PER SHARE (Details)", "shortName": "EARNINGS PER SHARE (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_g7mLJMeVZ02qx1EKo0WwFQ", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "unitRef": "Unit_Standard_shares_JjZOETMmdkiwS4cDtd-8MA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "us-gaap:EarningsPerShareTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R62": { "role": "http://www.arganinc.com/role/DisclosureStockholdersEquityDetails", "longName": "99941301 - Disclosure - STOCKHOLDERS' EQUITY (Details)", "shortName": "STOCKHOLDERS' EQUITY (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "As_Of_9_17_2024_AteDU8Z1kE-WYwhM9UaBwQ", "name": "agx:PercentageIncreaseInCommonStockDividendPerShare", "unitRef": "Unit_Standard_pure_TRNSoDwdL0qck_YEj1T8-Q", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_17_2024_AteDU8Z1kE-WYwhM9UaBwQ", "name": "agx:PercentageIncreaseInCommonStockDividendPerShare", "unitRef": "Unit_Standard_pure_TRNSoDwdL0qck_YEj1T8-Q", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R63": { "role": "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails", "longName": "99941302 - Disclosure - STOCKHOLDERS' EQUITY - Dividends Paid (Details)", "shortName": "STOCKHOLDERS' EQUITY - Dividends Paid (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_us-gaap_DividendsAxis_agx_O2025Q3DividendsMember__shwMWFFLUC_pjq-911zng", "name": "us-gaap:DividendsPayableDateOfRecordDayMonthAndYear", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_8_1_2024_To_10_31_2024_us-gaap_DividendsAxis_agx_O2025Q3DividendsMember__shwMWFFLUC_pjq-911zng", "name": "us-gaap:DividendsPayableDateOfRecordDayMonthAndYear", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R64": { "role": "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "longName": "99941401 - Disclosure - CUSTOMER CONCENTRATIONS (Details)", "shortName": "CUSTOMER CONCENTRATIONS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "Duration_10_31_2024_To_10_31_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_dmajovfM-E65QSJnNxzdVw", "name": "agx:NumberOfMajorCustomers", "unitRef": "Unit_Standard_customer_js_ysM_LX02MOhzDSVwWBg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_10_31_2024_To_10_31_2024_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_dmajovfM-E65QSJnNxzdVw", "name": "agx:NumberOfMajorCustomers", "unitRef": "Unit_Standard_customer_js_ysM_LX02MOhzDSVwWBg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R65": { "role": "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "longName": "99941501 - Disclosure - SEGMENT REPORTING (Details)", "shortName": "SEGMENT REPORTING (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "65", "firstAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "Unit_Standard_segment_Or7ZugLQLECeth60SRDd7Q", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_2_1_2024_To_10_31_2024_88p8Q5QA30WHFEYFIJGznQ", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "Unit_Standard_segment_Or7ZugLQLECeth60SRDd7Q", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } }, "R66": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails", "longName": "99941601 - 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": "66", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:IncomeTaxRefundsAndPrepaidIncomeTaxes", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "us-gaap:InventoryRawMaterials", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "unique": true } }, "R67": { "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails", "longName": "99941602 - 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": "67", "firstAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:AccruedProjectCostsCurrent", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_10_31_2024__Jl2jvuKfEykIpQCqA6t7Q", "name": "agx:AccruedProjectCostsCurrent", "unitRef": "Unit_Standard_USD_FpRTspskbk-6cvAXdpsYYA", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "agx-20241031x10q.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AccountsNotesAndLoansReceivableLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsNotesAndLoansReceivableLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "label": "Accounts, Notes, Loans and Financing Receivable [Line Items]", "terseLabel": "ACCOUNTS AND NOTES RECEIVABLE", "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": [ "r217", "r911" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsPayableCurrent", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r49", "r754" ] }, "us-gaap_AccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r687" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r910" ] }, "us-gaap_AccruedEmployeeBenefitsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedEmployeeBenefitsCurrent", "crdr": "credit", "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": [ "r52" ] }, "agx_AccruedInvestmentIncomeDividendReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "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/20241031", "localname": "AccruedLeaseLiabilitiesCurrent", "crdr": "credit", "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/2024", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r52" ] }, "agx_AccruedProjectCostsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "AccruedProjectCostsCurrent", "crdr": "credit", "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_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r14", "r15", "r68", "r122", "r571", "r608", "r609" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r1", "r7", "r15", "r446", "r449", "r489", "r604", "r605", "r890", "r891", "r892", "r897", "r898", "r899", "r901" ] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r822" ] }, "us-gaap_AdditionalFinancialInformationDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r62" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r620", "r897", "r898", "r899", "r901", "r948", "r998" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r835" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r835" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r835" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r835" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r36", "r37", "r371" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities" } } }, "auth_ref": [] }, "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]", "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table" } } }, "auth_ref": [ "r868" ] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r794", "r804", "r814", "r846" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r797", "r807", "r817", "r849" ] }, "ecd_AggtPnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtPnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Pension Adjustments Service Cost [Member]", "terseLabel": "Aggregate Pension Adjustments Service Cost" } } }, "auth_ref": [ "r869" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r835" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r842" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r798", "r808", "r818", "r842", "r850", "r854", "r862" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r860" ] }, "us-gaap_AllowanceForNotesAndLoansReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r123", "r218", "r257" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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/20241031", "localname": "AmortizationOfEquityInvestmentsInSolarEnergyProjects", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsDetails" ], "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/2024", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r5", "r284", "r291", "r722" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShareDetails" ], "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": [ "r176" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Assets", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets", "terseLabel": "Total assets", "totalLabel": "TOTAL ASSETS", "documentation": "Amount of asset recognized for present right to economic benefit." } } }, "auth_ref": [ "r94", "r104", "r121", "r147", "r180", "r186", "r204", "r208", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r439", "r443", "r472", "r567", "r647", "r714", "r715", "r754", "r785", "r940", "r941", "r959" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "ASSETS" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrent", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current", "terseLabel": "Current assets", "totalLabel": "TOTAL CURRENT ASSETS", "documentation": "Amount of asset recognized for present right to economic benefit, classified as current." } } }, "auth_ref": [ "r116", "r126", "r147", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r439", "r443", "r472", "r754", "r940", "r941", "r959" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "CURRENT ASSETS" } } }, "auth_ref": [] }, "us-gaap_AssetsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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 asset recognized for present right to economic benefit." } } }, "auth_ref": [ "r456", "r457", "r743" ] }, "us-gaap_AssetsTotalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/20241031", "localname": "AtlanticProjectsCompanyLimitedMember", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertains to Atlantic Projects Company Limited.", "label": "APC", "terseLabel": "Atlantic Projects Company Limited" } } }, "auth_ref": [] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r224" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r225" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r221", "r264", "r566" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtSecurities", "crdr": "debit", "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": [ "r222", "r264", "r456", "r558", "r743", "r746", "r913", "r952", "r953", "r954" ] }, "us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "auth_ref": [ "r857" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r858" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]", "terseLabel": "Award Timing Disclosures" } } }, "auth_ref": [ "r853" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r853" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r853" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r853" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r853" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r853" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AwardTypeAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails", "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": [ "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "auth_ref": [ "r856" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r855" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r854" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r854" ] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [] }, "agx_BillableContractsReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "BillableContractsReceivables", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "documentation": "Amounts due from billable services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the Company and, at a minimum, one other party. An example would be amounts billed to customers under contracts or programs but not paid as of the balance sheet date.", "label": "Billable Contracts Receivables", "terseLabel": "Billable amounts" } } }, "auth_ref": [] }, "agx_BondsOutstandingCoveringOtherRisks": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "BondsOutstandingCoveringOtherRisks", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails" ], "lang": { "en-us": { "role": { "documentation": "The aggregate amount of bonds covering other risks including warranty obligations.", "label": "Bonds Outstanding Covering Other Risks", "terseLabel": "Outstanding amount of bonds covering other risks including warranty obligations" } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails", "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": [ "r285", "r286", "r287", "r288", "r289", "r435", "r736", "r737" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails", "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": [ "r38", "r39", "r285", "r286", "r287", "r288", "r289", "r435", "r736", "r737" ] }, "us-gaap_CashAndCashEquivalentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r21", "r118", "r703" ] }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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 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": [ "r950", "r951" ] }, "us-gaap_CashAndCashEquivalentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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_CashCashEquivalentsAndShortTermInvestmentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r912" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r21", "r78", "r145" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "NET (DECREASE) INCREASE 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": [ "r0", "r78" ] }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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/20241031", "localname": "CashInvestmentCommitments", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsDetails" ], "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/2024", "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": [ "r833" ] }, "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]", "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year" } } }, "auth_ref": [ "r830" ] }, "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]", "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested" } } }, "auth_ref": [ "r828" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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/2024", "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": [ "r834" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r834" ] }, "agx_CommitmentDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20241031", "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/2024", "localname": "CommitmentsAndContingencies", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies", "terseLabel": "COMMITMENTS AND CONTINGENCIES (see Notes 8 and 9)", "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": [ "r57", "r95", "r568", "r634" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "LEGAL CONTINGENCIES" } } }, "auth_ref": [] }, "us-gaap_CommitmentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r85" ] }, "us-gaap_CommonStockDividendsPerShareCashPaid": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockDividendsPerShareCashPaid", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "label": "Common Stock, Dividends, Per Share, Cash Paid", "verboseLabel": "Amount Per Share", "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r88" ] }, "us-gaap_CommonStockDividendsPerShareDeclared": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockDividendsPerShareDeclared", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r88" ] }, "us-gaap_CommonStockDividendsShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r8" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockMember", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r775", "r776", "r777", "r779", "r780", "r781", "r782", "r897", "r898", "r901", "r948", "r997", "r998" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "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": [ "r60" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "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": [ "r60", "r635" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "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": [ "r60" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "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": [ "r8", "r60", "r635", "r653", "r998", "r999" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockValue", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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,569,104 and 13,242,520 shares outstanding at October 31, 2024 and January 31, 2024, 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": [ "r60", "r570", "r754" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r839" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r838" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r840" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r837" ] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "COMPREHENSIVE INCOME", "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": [ "r16", "r132", "r134", "r138", "r559", "r580", "r581" ] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r25", "r26", "r46", "r47", "r215", "r687" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r25", "r26", "r46", "r47", "r215", "r611", "r687" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r25", "r26", "r46", "r47", "r215", "r687", "r876" ] }, "us-gaap_ConcentrationRiskDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r81" ] }, "us-gaap_ConcentrationRiskLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r687" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r25", "r26", "r46", "r47", "r215" ] }, "us-gaap_ConcentrationRiskTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskTable", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [Table]", "documentation": "Disclosure of information about concentration risk. Includes, but is not limited to, percentage of concentration risk and benchmark serving as denominator in calculation of percentage of concentration risk." } } }, "auth_ref": [ "r24", "r25", "r26", "r27", "r46", "r93", "r687" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r25", "r26", "r46", "r47", "r215", "r687" ] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]" } } }, "auth_ref": [ "r102", "r149", "r180", "r188", "r202", "r203", "r204", "r205", "r206", "r208", "r209", "r210", "r317", "r318", "r319", "r320", "r322", "r323", "r324", "r325", "r326", "r714", "r715", "r940", "r941" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]" } } }, "auth_ref": [ "r102", "r149", "r180", "r188", "r202", "r203", "r204", "r205", "r206", "r208", "r209", "r210", "r317", "r318", "r319", "r320", "r322", "r323", "r324", "r325", "r326", "r714", "r715", "r940", "r941" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r44", "r705" ] }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]", "terseLabel": "Schedule of revenues recognized contract liabilities", "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability." } } }, "auth_ref": [ "r943" ] }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetNetCurrent", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r344", "r346", "r357" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r344", "r345", "r357" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Revenue Recognized", "verboseLabel": "Revenues recognized from 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": [ "r358" ] }, "us-gaap_CorporateNonSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r11", "r203", "r204", "r205", "r206", "r209", "r906" ] }, "us-gaap_CostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfRevenue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r71", "r147", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r472", "r714", "r940" ] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r316", "r938" ] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r316", "r938", "r939" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r82", "r215" ] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r41", "r924", "r925", "r926", "r927", "r929", "r930", "r933", "r934" ] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "FINANCING ARRANGEMENTS" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r87", "r146", "r300", "r301", "r302", "r303", "r304", "r315", "r316", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r336", "r337", "r338", "r340", "r483" ] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "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_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentVariableInterestRateTypeExtensibleEnumeration", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Variable Interest Rate, Type [Extensible Enumeration]", "documentation": "Indicates type of variable interest rate on debt instrument." } } }, "auth_ref": [ "r563" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r227", "r264", "r265" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r265" ] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxAfterYearOneThroughThree": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxAfterYearOneThroughThree", "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 Three", "terseLabel": "Gross Unrealized Gains, Due in one to three years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxAfterYearThreeThroughFive": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxAfterYearThreeThroughFive", "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 Three Through Five", "terseLabel": "Gross Unrealized Gains, Due in three to five years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxWithinOneYear": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedGainBeforeTaxWithinOneYear", "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 Within One Year", "terseLabel": "Gross Unrealized Gains, Due within one year" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterWithinOneYear": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterWithinOneYear", "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 within one year", "terseLabel": "Gross Unrealized Losses, Due within one year" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterYearOneThroughThree": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterYearOneThroughThree", "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 third fiscal year following current fiscal year.", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax after Year One Through Three", "terseLabel": "Gross Unrealized Losses, Due in one to three years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterYearThreeThroughFive": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAccumulatedGrossUnrealizedLossBeforeTaxAfterYearThreeThroughFive", "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 third and five fiscal year following current fiscal year.", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax after Year Three Through Five", "terseLabel": "Gross Unrealized Losses, Due in three to five years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearOneToThree": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearOneToThree", "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 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 One to Three", "terseLabel": "Amortized cost, Due in one to three years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearThreeToFive": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearThreeToFive", "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 third fiscal year though five 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 Three to Five", "terseLabel": "Amortized Cost, Due in three to five years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearWithinOneYear": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearWithinOneYear", "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 within one year", "terseLabel": "Amortized cost, Due within one year" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearOneToThree": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearOneToThree", "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 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 One to Three", "terseLabel": "Fair Value, Due in one to three years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearThreeToFive": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearThreeToFive", "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 third fiscal year through fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year Three to Five", "terseLabel": "Fair Value, Due in three to five years" } } }, "auth_ref": [] }, "agx_DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearWithinOneYear": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearWithinOneYear", "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 within one year", "terseLabel": "Fair Value, Due in within one year" } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r407", "r408" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Expense (Benefit)", "verboseLabel": "Deferred income tax expense", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r5", "r109", "r896" ] }, "us-gaap_DeferredIncomeTaxesAndOtherTaxReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r5", "r31" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r356", "r726", "r727", "r728", "r729", "r730", "r731", "r732" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r356", "r726", "r727", "r728", "r729", "r730", "r731", "r732" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r944" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r369", "r374", "r401", "r402", "r404", "r739" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "STOCK-BASED COMPENSATION" } } }, "auth_ref": [] }, "us-gaap_DividendPayableDateToBePaidDayMonthAndYear": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendPayableDateToBePaidDayMonthAndYear", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "label": "Dividends Payable, Date to be Paid", "terseLabel": "Payment date", "documentation": "Date the declared dividend will be paid, in YYYY-MM-DD format." } } }, "auth_ref": [ "r23" ] }, "us-gaap_DividendsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendsAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "label": "Dividends [Axis]", "documentation": "Information by distribution of earnings to shareholder. Includes, but is not limited to, distribution paid and declared." } } }, "auth_ref": [] }, "us-gaap_DividendsCommonStockCash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendsCommonStockCash", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r88" ] }, "us-gaap_DividendsDeclaredTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendsDeclaredTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityTables" ], "lang": { "en-us": { "role": { "label": "Dividends Declared [Table Text Block]", "terseLabel": "Schedule of dividends paid", "documentation": "Tabular disclosure of information related to dividends declared, including paid and unpaid dividends." } } }, "auth_ref": [] }, "us-gaap_DividendsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendsDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "label": "Dividends [Domain]", "documentation": "Distributions of earnings to shareholders including but not limited to cash, property or capital stock." } } }, "auth_ref": [] }, "us-gaap_DividendsPayableDateOfRecordDayMonthAndYear": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendsPayableDateOfRecordDayMonthAndYear", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "label": "Dividends Payable, Date of Record", "terseLabel": "Record date", "documentation": "Date the holder must own the stock to be entitled to the dividend, in YYYY-MM-DD format." } } }, "auth_ref": [] }, "us-gaap_DividendsPayableLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendsPayableLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "label": "Dividends Payable [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_DividendsPayableTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendsPayableTable", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "label": "Dividends Payable [Table]", "documentation": "Disclosure of information about distribution of earnings to shareholder declared but not yet paid. Includes, but is not limited to, total amount and amount per share of distribution, declaration date, and date to be paid." } } }, "auth_ref": [ "r23" ] }, "agx_DocumentAndEntityInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "DocumentAndEntityInformationAbstract", "lang": { "en-us": { "role": { "documentation": "Document and entity information.", "label": "Document And Entity Information" } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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/2024", "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/2024", "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_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r789" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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": [ "r821" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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/2024", "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": [ "r735", "r914", "r915", "r945" ] }, "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]", "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year" } } }, "auth_ref": [ "r832" ] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "EARNINGS PER SHARE", "terseLabel": "NET INCOME PER SHARE" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShareDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r139", "r155", "r156", "r157", "r158", "r159", "r160", "r166", "r168", "r173", "r174", "r175", "r179", "r433", "r437", "r453", "r454", "r560", "r582", "r707" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShareDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r139", "r155", "r156", "r157", "r158", "r159", "r160", "r168", "r173", "r174", "r175", "r179", "r433", "r437", "r453", "r454", "r560", "r582", "r707" ] }, "agx_EarningsPerSharePerformanceBasedRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "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_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShare" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Text Block]", "verboseLabel": "EARNINGS PER SHARE", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r165", "r176", "r177", "r178" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r475" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r148", "r410", "r424", "r740" ] }, "agx_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessExecutiveCompensationAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessExecutiveCompensationAmount", "crdr": "debit", "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": "Executive compensation limitation" } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r403" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r403" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeStockOptionMember", "presentation": [ "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/2024", "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/2024", "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/2024", "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/2024", "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/2024", "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": [ "r787" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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/2024", "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/2024", "localname": "EntityDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "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/2024", "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": [ "r787" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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/2024", "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": [ "r787" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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/2024", "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": [ "r871" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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": [ "r787" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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": [ "r787" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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": [ "r787" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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": [ "r787" ] }, "ecd_EqtyAwrdsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments, Footnote [Text Block]", "terseLabel": "Equity Awards Adjustments, Footnote" } } }, "auth_ref": [ "r826" ] }, "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]", "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table" } } }, "auth_ref": [ "r867" ] }, "ecd_EqtyAwrdsAdjsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments [Member]", "terseLabel": "Equity Awards Adjustments" } } }, "auth_ref": [ "r867" ] }, "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]", "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table" } } }, "auth_ref": [ "r867" ] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityComponentDomain", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r8", "r112", "r135", "r136", "r137", "r150", "r151", "r152", "r154", "r159", "r161", "r163", "r181", "r255", "r256", "r298", "r343", "r422", "r423", "r430", "r431", "r432", "r434", "r436", "r437", "r445", "r446", "r447", "r448", "r449", "r450", "r452", "r477", "r478", "r479", "r480", "r481", "r482", "r484", "r486", "r489", "r578", "r604", "r605", "r606", "r620", "r672" ] }, "us-gaap_EquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityMethodInvestments", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsDetails" ], "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": [ "r180", "r196", "r208", "r253", "r886", "r920" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r836" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r794", "r804", "r814", "r846" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r791", "r801", "r811", "r843" ] }, "agx_EstimatedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "EstimatedLoss", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "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/20241031", "localname": "EstimatedLossIncludingReversalOfNetGrossProfitRecordedInPreviousYears", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "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/2024", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "auth_ref": [ "r842" ] }, "agx_ExpiresOnMay312027Member": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "ExpiresOnMay312027Member", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to letters of credit expire on May 31, 2027.", "label": "Expires on May 31, 2027 [Member]", "terseLabel": "Expires on May 31, 2027" } } }, "auth_ref": [] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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]", "terseLabel": "Fair value of assets and liabilities measured on recurring and nonrecurring basis", "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": [ "r456", "r457", "r465", "r743" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r456", "r457", "r465", "r743" ] }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r950", "r951" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r335", "r361", "r362", "r363", "r364", "r365", "r366", "r455", "r457", "r458", "r459", "r460", "r464", "r465", "r466", "r493", "r494", "r495", "r723", "r724", "r733", "r734", "r735", "r743", "r746" ] }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByMeasurementFrequencyAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Axis]", "documentation": "Information by measurement frequency." } } }, "auth_ref": [ "r456", "r457", "r458", "r460", "r743", "r953", "r956" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "FAIR VALUE MEASUREMENTS" } } }, "auth_ref": [] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r461", "r462", "r463", "r464", "r466", "r467", "r468", "r469", "r470", "r556", "r743", "r747" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Level 1 Inputs", "terseLabel": "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": [ "r335", "r361", "r366", "r457", "r465", "r493", "r733", "r734", "r735", "r743" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Level 2 Inputs", "terseLabel": "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": [ "r335", "r361", "r366", "r457", "r458", "r465", "r494", "r723", "r724", "r733", "r734", "r735", "r743" ] }, "us-gaap_FairValueMeasurementFrequencyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementFrequencyDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Domain]", "documentation": "Measurement frequency." } } }, "auth_ref": [ "r456", "r457", "r458", "r460", "r743", "r953", "r956" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r335", "r361", "r362", "r363", "r364", "r365", "r366", "r455", "r457", "r458", "r459", "r460", "r464", "r465", "r466", "r493", "r494", "r495", "r723", "r724", "r733", "r734", "r735", "r743", "r746" ] }, "us-gaap_FairValueMeasurementsRecurringMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsRecurringMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair value, recurring", "terseLabel": "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": [ "r743", "r950", "r951", "r952", "r953", "r954", "r956" ] }, "us-gaap_FinancialGuaranteeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancialGuaranteeMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails" ], "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/2024", "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": [ "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r258", "r259", "r261", "r262", "r263", "r266", "r267", "r268", "r339", "r342", "r451", "r471", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r506", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r579", "r720", "r743", "r745", "r746", "r747", "r748", "r749", "r750", "r751", "r752", "r755", "r879", "r880", "r881", "r882", "r883", "r884", "r885", "r916", "r917", "r918", "r919", "r949", "r952", "r953", "r954", "r955", "r956" ] }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "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": [ "r120", "r271", "r290", "r722" ] }, "agx_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFour", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Four", "terseLabel": "Thereafter" } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months", "terseLabel": "2026", "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": [ "r292", "r700", "r722" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "terseLabel": "2025 (remainder)", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year." } } }, "auth_ref": [ "r1001" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four", "terseLabel": "2029", "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": [ "r292", "r700", "r722" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three", "terseLabel": "2028", "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": [ "r292", "r700", "r722" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsFiniteLivedIntangibleFutureAmortizationScheduleDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two", "terseLabel": "2027", "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": [ "r292", "r700", "r722" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r283", "r285", "r286", "r287", "r289", "r290", "r293", "r294", "r524", "r525", "r700" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "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": [ "r271", "r290", "r525", "r722" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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]", "verboseLabel": "Indefinite-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": [ "r283", "r290", "r293", "r294", "r296", "r524", "r700", "r722" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r283", "r285", "r286", "r287", "r289", "r290", "r293", "r294", "r700" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "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": [ "r524", "r930" ] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r798", "r808", "r818", "r850" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r798", "r808", "r818", "r850" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r798", "r808", "r818", "r850" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r798", "r808", "r818", "r850" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r798", "r808", "r818", "r850" ] }, "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]", "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year" } } }, "auth_ref": [ "r831" ] }, "country_GB": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2024", "localname": "GB", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "United Kingdom", "terseLabel": "United Kingdom" } } }, "auth_ref": [] }, "agx_GemmaPowerSystemLlcMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "GemmaPowerSystemLlcMember", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The Gemma Power System, LLC.", "label": "GPS." } } }, "auth_ref": [] }, "agx_GemmaPowerSystemsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "GemmaPowerSystemsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails" ], "lang": { "en-us": { "role": { "documentation": "Gemma power systems.", "label": "GPS" } } }, "auth_ref": [] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Goodwill", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Goodwill", "terseLabel": "Goodwill", "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r119", "r272", "r557", "r715", "r721", "r744", "r754", "r922", "r923" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "INTANGIBLE ASSETS" } } }, "auth_ref": [] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GrossProfit", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r69", "r71", "r103", "r147", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r472", "r709", "r714", "r903", "r905", "r907", "r908", "r909", "r940" ] }, "us-gaap_GuaranteeObligationsByNatureAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GuaranteeObligationsByNatureAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails" ], "lang": { "en-us": { "role": { "label": "Guarantor Obligations, Nature [Axis]", "documentation": "Information by nature of guarantee." } } }, "auth_ref": [ "r311", "r312", "r313", "r314" ] }, "us-gaap_GuaranteeObligationsMaximumExposure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GuaranteeObligationsMaximumExposure", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails" ], "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": [ "r312" ] }, "us-gaap_GuaranteeObligationsNatureDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GuaranteeObligationsNatureDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails" ], "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": [ "r311", "r312", "r313", "r314" ] }, "us-gaap_HeldtomaturitySecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "HeldtomaturitySecuritiesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Held-to-maturity Securities", "terseLabel": "Held-to-maturity Securities", "documentation": "Investments in debt securities classified as held-to-maturity." } } }, "auth_ref": [ "r105" ] }, "country_IE": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2024", "localname": "IE", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Republic of Ireland", "terseLabel": "Republic of Ireland" } } }, "auth_ref": [] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r70", "r99", "r103", "r561", "r575", "r709", "r714", "r903", "r905", "r907", "r908", "r909" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "INCOME TAXES" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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 tax." } } }, "auth_ref": [ "r148", "r406", "r410", "r415", "r416", "r417", "r418", "r419", "r425", "r427", "r428", "r429", "r617", "r740" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r106", "r110", "r162", "r163", "r180", "r194", "r208", "r409", "r410", "r426", "r583", "r740" ] }, "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential", "crdr": "debit", "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": [ "r411", "r414", "r740", "r946" ] }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "crdr": "debit", "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": [ "r410", "r740" ] }, "us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment", "crdr": "debit", "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": [ "r946", "r947" ] }, "us-gaap_IncomeTaxReconciliationNondeductibleExpenseOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxReconciliationNondeductibleExpenseOther", "crdr": "debit", "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": [ "r740", "r946", "r947" ] }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "crdr": "debit", "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": [ "r413", "r740", "r946" ] }, "us-gaap_IncomeTaxReconciliationTaxCreditsResearch": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxReconciliationTaxCreditsResearch", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsAndIncomeTaxRefundsDetails" ], "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": [ "r740", "r946", "r947" ] }, "agx_IncomeTaxRefundsAndPrepaidIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "IncomeTaxRefundsAndPrepaidIncomeTaxes", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsAndIncomeTaxRefundsDetails", "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_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Income Taxes Paid, Net", "verboseLabel": "Cash paid for income taxes, net of refunds", "documentation": "Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax." } } }, "auth_ref": [ "r22", "r144", "r420", "r421" ] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r4" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r4" ] }, "us-gaap_IncreaseDecreaseInAccruedInterestReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccruedInterestReceivableNet", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r4" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInContractWithCustomerAsset", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r893" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r522", "r893" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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/2024", "localname": "IncreaseDecreaseInOtherOperatingAssets", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r4" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShareDetails" ], "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": [ "r169", "r170", "r171", "r175", "r373" ] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r798", "r808", "r818", "r842", "r850", "r854", "r862" ] }, "agx_IndustrialConstructionServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "IndustrialConstructionServicesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to industrial construction services.", "label": "Industrial Construction Services [Member]", "terseLabel": "Industrial Construction Services" } } }, "auth_ref": [] }, "us-gaap_InformationByCategoryOfDebtSecurityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]", "terseLabel": "Insider Trading Arrangements:" } } }, "auth_ref": [ "r860" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]", "terseLabel": "Insider Trading Policies and Procedures:" } } }, "auth_ref": [ "r790", "r866" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r790", "r866" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r790", "r866" ] }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r282", "r295", "r297", "r699", "r700" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r283", "r930", "r932" ] }, "us-gaap_InterestReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r887", "r1000" ] }, "us-gaap_IntersegmentEliminationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r102", "r180", "r188", "r202", "r203", "r204", "r205", "r206", "r208", "r209", "r714" ] }, "us-gaap_InventoryRawMaterials": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryRawMaterials", "crdr": "debit", "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": [ "r888" ] }, "us-gaap_InvestmentIncomeNonoperating": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentIncomeNonoperating", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsEarningsOnInvestmentsDetails" ], "lang": { "en-us": { "role": { "label": "Investment Income, Nonoperating", "terseLabel": "Earnings on investments", "documentation": "The aggregate amount of income from investments (for example, dividends) not considered a component of the entity's core operations." } } }, "auth_ref": [ "r74" ] }, "agx_InvestmentMaturityPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.arganinc.com/20241031", "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/2024", "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": [ "r877", "r878", "r912" ] }, "us-gaap_Investments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Investments", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsInvestmentsDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r564", "r565", "r772", "r774" ] }, "agx_KilrootProjectMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "KilrootProjectMember", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to kilroot project.", "label": "Kilroot Project [Member]", "terseLabel": "Kilroot Project" } } }, "auth_ref": [] }, "dei_LegalEntityAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LegalEntityAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "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/2024", "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": [ "r86" ] }, "agx_LettersOfCreditExpireOnMay312024Member": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "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/2024", "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/2024", "localname": "Liabilities", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities", "totalLabel": "TOTAL LIABILITIES", "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others." } } }, "auth_ref": [ "r13", "r51", "r52", "r53", "r55", "r56", "r57", "r58", "r147", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r440", "r443", "r444", "r472", "r633", "r708", "r785", "r940", "r959", "r960" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r66", "r96", "r573", "r754", "r895", "r921", "r957" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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/2024", "localname": "LiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r53", "r117", "r147", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r440", "r443", "r444", "r472", "r754", "r940", "r959", "r960" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "CURRENT LIABILITIES" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesNoncurrent", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r13", "r55", "r56", "r57", "r58", "r147", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r440", "r443", "r444", "r472", "r940", "r959", "r960" ] }, "agx_LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "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/2024", "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": [ "r316", "r894", "r938" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r50", "r54" ] }, "us-gaap_LineOfCreditFacilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityTable", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility [Table]", "documentation": "Disclosure of information about short-term and long-term contractual arrangements with lender under which borrowing can occur up to maximum amount. Includes, but is not limited to, letter of credit, standby letter of credit, and revolving credit arrangement." } } }, "auth_ref": [ "r50", "r54", "r316", "r894", "r938" ] }, "us-gaap_LineOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "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": [] }, "agx_MajorCustomerFourMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "MajorCustomerFourMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "documentation": "Major customer four.", "label": "Major Customer Four" } } }, "auth_ref": [] }, "agx_MajorCustomerOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "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/20241031", "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/20241031", "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/2024", "localname": "MajorCustomersAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r215", "r728", "r765", "r770", "r944", "r968", "r969", "r970", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996" ] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MaximumMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Maximum", "terseLabel": "Maximum" } } }, "auth_ref": [ "r307", "r308", "r309", "r310", "r367", "r405", "r460", "r521", "r602", "r603", "r610", "r625", "r626", "r675", "r677", "r679", "r680", "r682", "r697", "r698", "r719", "r725", "r738", "r746", "r747", "r751", "r752", "r766", "r942", "r961", "r962", "r963", "r964", "r965", "r966" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "auth_ref": [ "r834" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "auth_ref": [ "r834" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MinimumMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Minimum", "terseLabel": "Minimum" } } }, "auth_ref": [ "r307", "r308", "r309", "r310", "r367", "r405", "r460", "r521", "r602", "r603", "r610", "r625", "r626", "r675", "r677", "r679", "r680", "r682", "r697", "r698", "r719", "r725", "r738", "r746", "r747", "r751", "r766", "r942", "r961", "r962", "r963", "r964", "r965", "r966" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r853" ] }, "us-gaap_MoneyMarketFundsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MoneyMarketFundsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureFairValueMeasurementsFinancialInstrumentsOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Money market funds", "terseLabel": "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": [ "r945" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r861" ] }, "agx_NPricedChangeOrdersIncludedInTransactionPrices": { "xbrltype": "decimalItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "NPricedChangeOrdersIncludedInTransactionPrices", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersVariableConsiderationDetails" ], "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/2024", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "auth_ref": [ "r215", "r728", "r765", "r770", "r944", "r968", "r969", "r970", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r835" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r143" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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/2024", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r143" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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/2024", "localname": "NetCashProvidedByUsedInOperatingActivities", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by 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": [ "r78", "r79", "r80" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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/2024", "localname": "NetIncomeLoss", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShareDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "NET INCOME", "verboseLabel": "Net income", "label": "Net Income (Loss)", "terseLabel": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r72", "r80", "r100", "r115", "r131", "r133", "r137", "r147", "r153", "r155", "r156", "r157", "r158", "r159", "r162", "r163", "r172", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r433", "r437", "r454", "r472", "r577", "r655", "r670", "r671", "r783", "r940" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "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": [ "r834" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "auth_ref": [ "r798", "r808", "r818", "r842", "r850" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r825" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r824" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r842" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r861" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r861" ] }, "agx_NoticePeriodOfBreachOfContractOwnersToBeConsideredAsContractTermination": { "xbrltype": "durationItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "NoticePeriodOfBreachOfContractOwnersToBeConsideredAsContractTermination", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "lang": { "en-us": { "role": { "documentation": "The notice period given to owners breaches of contract to decide as contract termination.", "label": "Notice Period Of Breach of Contract, Owners, To Be Considered as Contract Termination", "terseLabel": "Termination period" } } }, "auth_ref": [] }, "agx_NumberOfMajorCustomers": { "xbrltype": "integerItemType", "nsuri": "http://www.arganinc.com/20241031", "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/2024", "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": [ "r715", "r904" ] }, "agx_NumberOfSharesIssuableUnderRestrictedStockUnitsAwardedDuringPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://www.arganinc.com/20241031", "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": [] }, "agx_O2024Q1DividendsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "O2024Q1DividendsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information relating to O 2024 Q1 dividend.", "label": "O 2024 Q1 Dividends [Member]", "verboseLabel": "2024 Q1 dividend" } } }, "auth_ref": [] }, "agx_O2024Q2DividendsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "O2024Q2DividendsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information relating to O 2024 Q2 dividend.", "label": "O 2024 Q2 Dividends [Member]", "verboseLabel": "2024 Q2 dividend" } } }, "auth_ref": [] }, "agx_O2024Q3DividendsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "O2024Q3DividendsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to O 2024 Q3 dividends.", "label": "O 2024 Q3 Dividends [Member]", "terseLabel": "2024 Q3 dividend" } } }, "auth_ref": [] }, "agx_O2024Q4DividendsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "O2024Q4DividendsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to O 2024 Q4 dividends.", "label": "O 2024 Q4 Dividends [Member]", "terseLabel": "2024 Q4 dividend" } } }, "auth_ref": [] }, "agx_O2025Q1DividendsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "O2025Q1DividendsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to O 2025 Q1 dividends.", "label": "O 2025 Q1 Dividends [Member]", "terseLabel": "2025 Q1 dividend" } } }, "auth_ref": [] }, "agx_O2025Q2DividendsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "O2025Q2DividendsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to O 2025 Q2 dividends.", "label": "O 2025 Q2 Dividends [Member]", "terseLabel": "2025 Q2 dividend" } } }, "auth_ref": [] }, "agx_O2025Q3DividendsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "O2025Q3DividendsMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDividendsPaidDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information relating to O 2025 Q3 Dividends.", "label": "O 2025 Q3 Dividends [Member]", "terseLabel": "2025 Q3 dividend" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingIncomeLoss", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r103", "r709", "r903", "r905", "r907", "r908", "r909" ] }, "us-gaap_OperatingLeaseExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseExpense", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Expense", "verboseLabel": "Lease expense", "documentation": "Amount of operating lease expense. Excludes sublease income." } } }, "auth_ref": [ "r958" ] }, "agx_OperatingLeaseRightOfUseAssetAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "OperatingLeaseRightOfUseAssetAndOtherAssets", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [] }, "agx_OperatingLeasesPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "OperatingLeasesPaid", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Cash paid for operating leases.", "label": "Operating Leases Paid", "terseLabel": "Cash paid for operating leases" } } }, "auth_ref": [] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r202", "r203", "r204", "r205", "r206", "r209", "r714", "r715" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "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": [ "r48", "r92", "r612", "r613" ] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "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": [ "r52" ] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsCurrent", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r125", "r754" ] }, "us-gaap_OtherAssetsMiscellaneousCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsMiscellaneousCurrent", "crdr": "debit", "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/2024", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r2", "r68", "r473", "r474", "r476" ] }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax", "verboseLabel": "Net unrealized losses 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": [ "r127", "r128", "r129", "r578" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r2", "r578" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]", "terseLabel": "OTHER COMPREHENSIVE INCOME, NET OF TAXES" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r3", "r68", "r130", "r252" ] }, "us-gaap_OtherNoncashIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNoncashIncomeExpense", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r80" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r75" ] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r834" ] }, "us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCategoriesOfInvestmentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r12" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r796", "r806", "r816", "r848" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "auth_ref": [ "r799", "r809", "r819", "r851" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r799", "r809", "r819", "r851" ] }, "agx_OverseasProjectMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "OverseasProjectMember", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to overseas project.", "label": "Overseas Project [Member]", "terseLabel": "Overseas Project" } } }, "auth_ref": [] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r823" ] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r77" ] }, "us-gaap_PaymentsOfDividendsCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsOfDividendsCommonStock", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r77" ] }, "us-gaap_PaymentsToAcquireAvailableForSaleSecuritiesDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireAvailableForSaleSecuritiesDebt", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r18", "r141", "r219" ] }, "us-gaap_PaymentsToAcquireEquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireEquityMethodInvestments", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r19" ] }, "us-gaap_PaymentsToAcquireHeldToMaturitySecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireHeldToMaturitySecurities", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r18", "r219" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r76" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r833" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r833" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r825" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "auth_ref": [ "r842" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "auth_ref": [ "r835" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r824" ] }, "agx_PercentageIncreaseInCommonStockDividendPerShare": { "xbrltype": "percentItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "PercentageIncreaseInCommonStockDividendPerShare", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDetails" ], "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_PerformanceBasedRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "PerformanceBasedRestrictedStockUnitsMember", "presentation": [ "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" } } }, "auth_ref": [] }, "ecd_PnsnAdjsPrrSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsPrrSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Adjustments Prior Service Cost [Member]", "terseLabel": "Pension Adjustments Prior Service Cost" } } }, "auth_ref": [ "r826" ] }, "ecd_PnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Adjustments Service Cost [Member]", "terseLabel": "Pension Adjustments Service Cost" } } }, "auth_ref": [ "r870" ] }, "ecd_PnsnBnftsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnBnftsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Benefits Adjustments, Footnote [Text Block]", "terseLabel": "Pension Benefits Adjustments, Footnote" } } }, "auth_ref": [ "r825" ] }, "agx_PowerIndustryServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "PowerIndustryServicesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "documentation": "Power industry services.", "label": "Power Industry Services" } } }, "auth_ref": [] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "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": [ "r59", "r341" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "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": [ "r59", "r635" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Issued", "terseLabel": "Preferred stock, shares issued", "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt." } } }, "auth_ref": [ "r59", "r341" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "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": [ "r59", "r635", "r653", "r998", "r999" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockValue", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r59", "r569", "r754" ] }, "us-gaap_PrepaidExpenseCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseCurrent", "crdr": "debit", "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": [ "r124", "r269", "r270", "r704" ] }, "us-gaap_ProceedsFromLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromLinesOfCredit", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "lang": { "en-us": { "role": { "label": "Proceeds from Lines of Credit", "terseLabel": "Amounts drawn against this letter of credit", "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements." } } }, "auth_ref": [ "r20", "r894" ] }, "us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromSaleAndMaturityOfMarketableSecurities", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Sale and Maturity of Marketable Securities", "verboseLabel": "Maturities of available-for-sale securities", "documentation": "The cash inflow associated with the aggregate amount received by the entity through sale or maturity of marketable securities (held-to-maturity or available-for-sale) during the period." } } }, "auth_ref": [] }, "us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r17", "r141", "r219", "r251" ] }, "us-gaap_ProceedsFromSaleOfHeldToMaturitySecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromSaleOfHeldToMaturitySecurities", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r17", "r219" ] }, "agx_ProceedsFromShareBasedAwardSettlementsNetOfWithholdingTaxesPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "ProceedsFromShareBasedAwardSettlementsNetOfWithholdingTaxesPaid", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from share-based award settlements, net of withholding taxes paid.", "label": "Proceeds From Share-Based Award Settlements, Net Of Withholding Taxes Paid", "terseLabel": "Settlements of share-based awards, net of withholding taxes paid" } } }, "auth_ref": [] }, "us-gaap_ProductConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r83" ] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails", "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "lang": { "en-us": { "role": { "label": "Products and Services [Axis]" } } }, "auth_ref": [ "r211", "r523", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r701", "r726", "r764", "r766", "r767", "r771", "r773", "r936", "r937", "r944", "r968", "r969", "r970", "r971", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails", "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails" ], "lang": { "en-us": { "role": { "label": "Products and Services [Domain]" } } }, "auth_ref": [ "r211", "r523", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r701", "r726", "r764", "r766", "r767", "r771", "r773", "r936", "r937", "r944", "r968", "r969", "r970", "r971", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996" ] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProfitLoss", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Net income", "verboseLabel": "Net income", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r115", "r131", "r133", "r142", "r147", "r153", "r159", "r162", "r163", "r254", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r326", "r327", "r433", "r437", "r438", "r441", "r442", "r454", "r472", "r561", "r576", "r619", "r655", "r670", "r671", "r741", "r742", "r784", "r892", "r940" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "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": [ "r6", "r488", "r562", "r574", "r754" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "terseLabel": "Provision for credit losses", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r140", "r260" ] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r823" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r823" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Range [Axis]" } } }, "auth_ref": [ "r307", "r308", "r309", "r310", "r360", "r367", "r397", "r398", "r399", "r405", "r460", "r496", "r505", "r521", "r602", "r603", "r610", "r625", "r626", "r675", "r677", "r679", "r680", "r682", "r697", "r698", "r719", "r725", "r738", "r746", "r747", "r751", "r752", "r766", "r777", "r935", "r942", "r953", "r962", "r963", "r964", "r965", "r966" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Range [Domain]" } } }, "auth_ref": [ "r307", "r308", "r309", "r310", "r360", "r367", "r397", "r398", "r399", "r405", "r460", "r496", "r505", "r521", "r602", "r603", "r610", "r625", "r626", "r675", "r677", "r679", "r680", "r682", "r697", "r698", "r719", "r725", "r738", "r746", "r747", "r751", "r752", "r766", "r777", "r935", "r942", "r953", "r962", "r963", "r964", "r965", "r966" ] }, "us-gaap_ReceivablesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReceivablesAbstract", "lang": { "en-us": { "role": { "label": "ACCOUNTS RECEIVABLE" } } }, "auth_ref": [] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]", "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure" } } }, "auth_ref": [ "r791", "r801", "r811", "r843" ] }, "agx_RemainingBondedPerformanceObligations": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "RemainingBondedPerformanceObligations", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails" ], "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/20241031", "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", "terseLabel": "Renewable energy performance-based restricted stock units" } } }, "auth_ref": [] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r792", "r802", "r812", "r844" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "auth_ref": [ "r793", "r803", "r813", "r845" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r800", "r810", "r820", "r852" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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/20241031", "localname": "RetainedAmountUnderConstructionContracts", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractAssetsAndLiabilitiesDetails" ], "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/2024", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r63", "r88", "r572", "r607", "r609", "r616", "r636", "r754" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsMember", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Retained Earnings", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r112", "r150", "r151", "r152", "r154", "r159", "r161", "r163", "r255", "r256", "r298", "r422", "r423", "r430", "r431", "r432", "r434", "r436", "r437", "r445", "r447", "r448", "r450", "r452", "r484", "r486", "r604", "r606", "r620", "r998" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r101", "r102", "r180", "r187", "r188", "r202", "r208", "r211", "r213", "r215", "r355", "r356", "r523" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r111", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r359" ] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r107" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails", "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction", "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/2024", "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": [ "r108" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r108" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersContractTerminationDetails", "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/2024", "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": [ "r874" ] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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": [ "r487", "r753" ] }, "us-gaap_RisksAndUncertaintiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RisksAndUncertaintiesAbstract", "lang": { "en-us": { "role": { "label": "CUSTOMER CONCENTRATIONS" } } }, "auth_ref": [] }, "agx_RobertsCompanyIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "RobertsCompanyIncMember", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The Roberts Company Inc.", "label": "TRC." } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r861" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r861" ] }, "us-gaap_SalesRevenueNetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r215", "r875" ] }, "srt_ScenarioUnspecifiedDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ScenarioUnspecifiedDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Scenario, Unspecified [Domain]" } } }, "auth_ref": [ "r164", "r368", "r872", "r900" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]", "terseLabel": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]", "documentation": "Disclosure of information about accounts and financing receivables. Includes, but is not limited to, amount of receivable and allowance for credit loss." } } }, "auth_ref": [ "r61", "r67", "r217", "r911" ] }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "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/2024", "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": "Disclosure of information about cash and cash equivalent by type. Excludes restricted cash and cash equivalent." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShareTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Schedule of basic and diluted earnings 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": [ "r902" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r412", "r740", "r946" ] }, "agx_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.arganinc.com/20241031", "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/2024", "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": "Disclosure of information about finite-lived intangible asset. Excludes indefinite-lived intangible asset." } } }, "auth_ref": [ "r283", "r290", "r293", "r294", "r296", "r524", "r700", "r722" ] }, "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r90" ] }, "us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": "Disclosure of information about profit (loss) and total assets by reportable segment." } } }, "auth_ref": [ "r28", "r29", "r30" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r28", "r29", "r30" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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": [ "r370", "r372", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400" ] }, "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r89" ] }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r9", "r10", "r89" ] }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r722", "r931" ] }, "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsTables" ], "lang": { "en-us": { "role": { "label": "Schedules of Concentration of Risk, by Risk Factor [Table Text Block]", "terseLabel": "schedule of the percentage of consolidated revenues", "documentation": "Tabular disclosure of the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark." } } }, "auth_ref": [ "r24", "r25", "r26", "r27", "r46", "r93" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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": [ "r786" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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": [ "r788" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentDomain", "presentation": [ "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": [ "r101", "r102", "r103", "r104", "r180", "r183", "r186", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r208", "r209", "r210", "r215", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r296", "r305", "r306", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r591", "r592", "r593", "r594", "r711", "r714", "r715", "r721", "r769", "r968", "r969", "r970", "r971", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996" ] }, "us-gaap_SegmentExpenditureAdditionToLongLivedAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r180", "r197", "r208", "r714", "r715" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "auth_ref": [ "r213", "r214", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r554", "r555", "r622", "r623", "r624", "r676", "r678", "r681", "r683", "r686", "r688", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696", "r702", "r727", "r756", "r757", "r758", "r759", "r760", "r761", "r762", "r763", "r768", "r777", "r944", "r968", "r969", "r970", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "SEGMENT REPORTING" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r104", "r180", "r182", "r183", "r184", "r185", "r186", "r198", "r200", "r201", "r206", "r207", "r208", "r209", "r210", "r211", "r212", "r215", "r710", "r712", "r713", "r714", "r716", "r717", "r718" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r73" ] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensation", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation", "terseLabel": "Stock compensation expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r4" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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": [ "r391" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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": [ "r391" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period", "verboseLabel": "Granted (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": [ "r389" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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": "Granted, 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": [ "r389" ] }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsIssuedInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsIssuedInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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)", "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": [ "r386", "r387" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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": [ "r386", "r387" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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": [ "r390" ] }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionExercisableWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.arganinc.com/20241031", "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/20241031", "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": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails" ], "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": [ "r370", "r372", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r380" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r380" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r393" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r384" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "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": [ "r382" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "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": [ "r392" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r34" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r378", "r379" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r378", "r379" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r394" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r394" ] }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingsWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingsWeightedAverageGrantDateFairValue", "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, Outstandings, 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/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangesInMaximumNumberOfSharesOfCommonStockDetails", "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": [ "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r383" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r384" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r382" ] }, "agx_ShareBasedPaymentArrangementAveragePricePerShareOfSharesWithheldForTaxWithholdingObligation": { "xbrltype": "perShareItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "ShareBasedPaymentArrangementAveragePricePerShareOfSharesWithheldForTaxWithholdingObligation", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "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/2024", "localname": "SharePrice", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDetails" ], "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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r34" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r34" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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", "documentation": "Number of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "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, Forfeited", "documentation": "Weighted average grant-date fair value of non-vested options forfeited." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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", "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/2024", "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": [ "r91" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r394" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "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/2024", "localname": "SharesOutstanding", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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/2024", "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "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/2024", "localname": "ShortTermInvestments", "crdr": "debit", "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": [ "r97", "r98", "r889" ] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r101", "r102", "r103", "r104", "r114", "r180", "r183", "r186", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r208", "r209", "r210", "r215", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r296", "r299", "r305", "r306", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r591", "r592", "r593", "r594", "r711", "r714", "r715", "r721", "r769", "r968", "r969", "r970", "r971", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r8", "r60", "r64", "r65", "r112", "r135", "r136", "r137", "r150", "r151", "r152", "r154", "r159", "r161", "r163", "r181", "r255", "r256", "r298", "r343", "r422", "r423", "r430", "r431", "r432", "r434", "r436", "r437", "r445", "r446", "r447", "r448", "r449", "r450", "r452", "r477", "r478", "r479", "r480", "r481", "r482", "r484", "r486", "r489", "r578", "r604", "r605", "r606", "r620", "r672" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "auth_ref": [ "r213", "r214", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r554", "r555", "r622", "r623", "r624", "r676", "r678", "r681", "r683", "r686", "r688", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696", "r702", "r727", "r756", "r757", "r758", "r759", "r760", "r761", "r762", "r763", "r768", "r777", "r944", "r968", "r969", "r970", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995", "r996" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementLineItems", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r150", "r151", "r152", "r181", "r486", "r523", "r614", "r621", "r627", "r628", "r629", "r630", "r631", "r632", "r635", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645", "r646", "r648", "r649", "r650", "r651", "r652", "r654", "r656", "r657", "r658", "r659", "r660", "r661", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669", "r672", "r778" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED BALANCE SHEETS" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "srt_StatementScenarioAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "StatementScenarioAxis", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "auth_ref": [ "r164", "r368", "r872", "r873", "r900" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementTable", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsPerformanceBondsAndGuaranteesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "terseLabel": "Statement [Table]", "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity." } } }, "auth_ref": [ "r150", "r151", "r152", "r181", "r216", "r486", "r523", "r614", "r621", "r627", "r628", "r629", "r630", "r631", "r632", "r635", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645", "r646", "r648", "r649", "r650", "r651", "r652", "r654", "r656", "r657", "r658", "r659", "r660", "r661", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669", "r672", "r778" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r795", "r805", "r815", "r847" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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/2024", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture", "terseLabel": "Stock option exercises and restricted stock unit settlements, net (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": [ "r8", "r59", "r60", "r88" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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 and restricted stock unit settlements (in shares)", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r8", "r59", "r60", "r88", "r383" ] }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture", "terseLabel": "Stock option exercises and restricted stock unit settlements, net", "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r35", "r59", "r60", "r88" ] }, "us-gaap_StockRepurchasedDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedDuringPeriodShares", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Repurchased During Period, Shares", "negatedLabel": "Common stock repurchases (in shares)", "terseLabel": "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": [ "r8", "r59", "r60", "r88", "r615", "r672", "r684" ] }, "us-gaap_StockRepurchasedDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Repurchased During Period, Value", "negatedLabel": "Common stock repurchases", "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": [ "r8", "r59", "r60", "r88", "r620", "r672", "r684", "r784" ] }, "agx_StockRepurchasedIncludingExciseTaxDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "StockRepurchasedIncludingExciseTaxDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/DisclosureStockholdersEquityDetails" ], "lang": { "en-us": { "role": { "documentation": "Equity impact of the value of stock that has been repurchased including excise tax 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.", "label": "Stock Repurchased Including Excise Tax During Period, Value", "verboseLabel": "Common stock repurchased" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquity", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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": [ "r60", "r64", "r65", "r84", "r637", "r653", "r673", "r674", "r754", "r785", "r895", "r921", "r957", "r998" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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/2024", "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r42", "r43", "r45", "r112", "r113", "r136", "r150", "r151", "r152", "r154", "r159", "r161", "r255", "r256", "r298", "r343", "r422", "r423", "r430", "r431", "r432", "r434", "r436", "r437", "r445", "r446", "r447", "r448", "r449", "r450", "r452", "r477", "r478", "r482", "r485", "r489", "r605", "r606", "r618", "r637", "r653", "r673", "r674", "r685", "r784", "r895", "r921", "r957", "r998" ] }, "us-gaap_StockholdersEquityNoteAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityNoteAbstract", "lang": { "en-us": { "role": { "label": "STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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/20241031", "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/2024", "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": [ "r841" ] }, "agx_TelecommunicationInfrastructureServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "TelecommunicationInfrastructureServicesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "lang": { "en-us": { "role": { "documentation": "Telecommunication Infrastructure Services.", "label": "Telecommunication Infrastructure Services" } } }, "auth_ref": [] }, "agx_TelecommunicationsInfrastructureServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "TelecommunicationsInfrastructureServicesMember", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "lang": { "en-us": { "role": { "documentation": "Telecommunications infrastructure services.", "label": "Telecommunications Infrastructure Services" } } }, "auth_ref": [] }, "agx_TimeBasedRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.arganinc.com/20241031", "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", "terseLabel": "Time-based restricted stock units" } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r833" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r840" ] }, "agx_TradeAndOtherReceivablesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.arganinc.com/20241031", "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/2024", "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": [ "r40", "r924", "r925", "r926", "r927", "r928", "r929", "r930", "r932", "r933", "r934" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "auth_ref": [ "r860" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r862" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "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/2024", "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": [ "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r339", "r342", "r451", "r471", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r506", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r579", "r743", "r745", "r746", "r747", "r748", "r749", "r750", "r751", "r752", "r755", "r879", "r880", "r881", "r882", "r883", "r884", "r885", "r916", "r917", "r918", "r919", "r949", "r952", "r953", "r954", "r955", "r956" ] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "auth_ref": [ "r863" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "auth_ref": [ "r864" ] }, "ecd_TrdArrExpirationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrExpirationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Expiration Date", "terseLabel": "Expiration Date" } } }, "auth_ref": [ "r864" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r862" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "auth_ref": [ "r862" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r865" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "auth_ref": [ "r863" ] }, "us-gaap_TreasuryStockCommonMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonMember", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Treasury Stock", "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r32" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "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": [ "r32" ] }, "agx_TreasuryStockSettlementOfStockOptionExercisesAndOtherShareBasedAwards": { "xbrltype": "sharesItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "TreasuryStockSettlementOfStockOptionExercisesAndOtherShareBasedAwards", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "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/2024", "localname": "TreasuryStockValue", "crdr": "debit", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Value", "negatedLabel": "Treasury stock, at cost - 2,259,185 and 2,585,769 shares at October 31, 2024 and January 31, 2024, 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": [ "r32", "r33", "r60", "r64" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2024", "localname": "US", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "United States", "terseLabel": "United States" } } }, "auth_ref": [] }, "us-gaap_USTreasuryNotesSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r967" ] }, "us-gaap_USTreasurySecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "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": [ "r706", "r733", "r735", "r743", "r967" ] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "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": [ "r859" ] }, "agx_UnrecognizedIncomeTaxBenefitsRelatedToResearchAndDevelopmentCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "UnrecognizedIncomeTaxBenefitsRelatedToResearchAndDevelopmentCredits", "crdr": "credit", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsAndIncomeTaxRefundsDetails" ], "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": [] }, "agx_UnrecognizedTaxLossBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.arganinc.com/20241031", "localname": "UnrecognizedTaxLossBenefit", "crdr": "credit", "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": [] }, "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]", "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year" } } }, "auth_ref": [ "r829" ] }, "agx_WarrantyPeriodForConstructionContracts": { "xbrltype": "stringItemType", "nsuri": "http://www.arganinc.com/20241031", "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/2024", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShareDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r167", "r175" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]", "terseLabel": "WEIGHTED AVERAGE SHARES OUTSTANDING" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.arganinc.com/role/DisclosureEarningsPerShareDetails", "http://www.arganinc.com/role/StatementCondensedConsolidatedStatementsOfEarnings" ], "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": [ "r166", "r175" ] }, "agx_WeightedAverageRateDepositCertificatesOfDeposit": { "xbrltype": "percentItemType", "nsuri": "http://www.arganinc.com/20241031", "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": [] }, "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]", "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested" } } }, "auth_ref": [ "r827" ] } } } }, "std_ref": { "r0": { "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/2147477401/830-230-45-1" }, "r1": { "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" }, "r2": { "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" }, "r3": { "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" }, "r4": { "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" }, "r5": { "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" }, "r6": { "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" }, "r7": { "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" }, "r8": { "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" }, "r9": { "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" }, "r10": { "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" }, "r11": { "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" }, "r12": { "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" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14" }, "r15": { "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" }, "r16": { "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" }, "r17": { "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" }, "r18": { "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" }, "r19": { "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" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r21": { "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" }, "r22": { "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" }, "r23": { "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" }, "r24": { "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" }, "r25": { "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" }, "r26": { "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" }, "r27": { "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" }, "r28": { "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" }, "r29": { "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" }, "r30": { "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" }, "r31": { "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" }, "r32": { "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" }, "r33": { "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" }, "r34": { "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" }, "r35": { "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" }, "r36": { "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" }, "r37": { "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" }, "r38": { "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" }, "r39": { "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" }, "r40": { "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" }, "r41": { "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" }, "r42": { "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" }, "r43": { "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" }, "r44": { "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" }, "r45": { "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" }, "r46": { "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" }, "r47": { "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" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/205/tableOfContent" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r53": { "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(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r54": { "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(22)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r55": { "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" }, "r56": { "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(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r57": { "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(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r58": { "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))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r59": { "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" }, "r60": { "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" }, "r61": { "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(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r62": { "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" }, "r63": { "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" }, "r64": { "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" }, "r65": { "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" }, "r66": { "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" }, "r67": { "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(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r68": { "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" }, "r69": { "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))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r70": { "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" }, "r71": { "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" }, "r72": { "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" }, "r73": { "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" }, "r74": { "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" }, "r75": { "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" }, "r76": { "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" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r78": { "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" }, "r79": { "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" }, "r80": { "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" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/275/tableOfContent" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18" }, "r84": { "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" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/440/tableOfContent" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/450/tableOfContent" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/470/tableOfContent" }, "r88": { "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" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r91": { "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" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/810/tableOfContent" }, "r93": { "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" }, "r94": { "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/2147478546/942-210-S99-1" }, "r95": { "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(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r96": { "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/2147478546/942-210-S99-1" }, "r97": { "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/2147478546/942-210-S99-1" }, "r98": { "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/2147478546/942-210-S99-1" }, "r99": { "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/2147478524/942-220-S99-1" }, "r100": { "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/2147478524/942-220-S99-1" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "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" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "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" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "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" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "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" }, "r105": { "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" }, "r106": { "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" }, "r107": { "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" }, "r108": { "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" }, "r109": { "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" }, "r110": { "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" }, "r111": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/606/tableOfContent" }, "r112": { "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" }, "r113": { "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" }, "r114": { "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" }, "r115": { "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" }, "r116": { "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" }, "r117": { "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" }, "r118": { "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" }, "r119": { "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" }, "r120": { "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" }, "r121": { "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" }, "r122": { "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" }, "r123": { "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" }, "r124": { "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" }, "r125": { "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" }, "r126": { "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" }, "r127": { "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" }, "r128": { "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" }, "r129": { "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" }, "r130": { "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" }, "r131": { "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" }, "r132": { "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" }, "r133": { "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" }, "r134": { "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" }, "r135": { "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" }, "r136": { "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" }, "r137": { "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" }, "r138": { "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" }, "r139": { "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" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r141": { "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" }, "r142": { "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" }, "r143": { "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" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A" }, "r145": { "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" }, "r146": { "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" }, "r147": { "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" }, "r148": { "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" }, "r149": { "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" }, "r150": { "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" }, "r151": { "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" }, "r152": { "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" }, "r153": { "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" }, "r154": { "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" }, "r155": { "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" }, "r156": { "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" }, "r157": { "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" }, "r158": { "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" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r160": { "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" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/260/tableOfContent" }, "r166": { "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" }, "r167": { "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" }, "r168": { "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" }, "r169": { "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" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r181": { "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" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/280/tableOfContent" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "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" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26A" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C" }, "r202": { "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" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r209": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r220": { "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" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "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" }, "r225": { "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" }, "r226": { "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" }, "r227": { "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" }, "r228": { "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" }, "r229": { "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" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "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" }, "r235": { "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" }, "r236": { "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" }, "r237": { "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" }, "r238": { "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" }, "r239": { "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" }, "r240": { "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" }, "r241": { "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" }, "r242": { "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" }, "r243": { "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" }, "r244": { "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" }, "r245": { "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" }, "r246": { "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" }, "r247": { "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" }, "r248": { "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" }, "r249": { "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" }, "r250": { "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" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "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" }, "r256": { "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" }, "r257": { "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" }, "r258": { "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" }, "r259": { "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" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r261": { "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" }, "r262": { "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" }, "r263": { "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" }, "r264": { "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" }, "r265": { "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" }, "r266": { "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" }, "r267": { "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" }, "r268": { "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" }, "r269": { "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" }, "r270": { "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" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1" }, "r272": { "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" }, "r273": { "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" }, "r274": { "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" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "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" }, "r279": { "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" }, "r280": { "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" }, "r281": { "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" }, "r282": { "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" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r289": { "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" }, "r290": { "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" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-4" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1" }, "r299": { "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" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r305": { "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" }, "r306": { "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" }, "r307": { "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" }, "r308": { "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" }, "r309": { "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" }, "r310": { "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" }, "r311": { "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" }, "r312": { "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" }, "r313": { "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" }, "r314": { "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" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "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" }, "r336": { "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" }, "r337": { "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" }, "r338": { "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" }, "r339": { "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" }, "r340": { "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" }, "r341": { "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" }, "r342": { "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" }, "r343": { "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" }, "r344": { "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" }, "r345": { "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" }, "r346": { "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" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r350": { "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" }, "r351": { "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" }, "r352": { "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" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "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" }, "r363": { "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" }, "r364": { "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" }, "r365": { "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" }, "r366": { "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" }, "r367": { "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" }, "r368": { "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" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/718/tableOfContent" }, "r370": { "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" }, "r371": { "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" }, "r372": { "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" }, "r373": { "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" }, "r374": { "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" }, "r375": { "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" }, "r376": { "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" }, "r377": { "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" }, "r378": { "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" }, "r379": { "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" }, "r380": { "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" }, "r381": { "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" }, "r382": { "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" }, "r383": { "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" }, "r384": { "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" }, "r385": { "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" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "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" }, "r390": { "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" }, "r391": { "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" }, "r392": { "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" }, "r393": { "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" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "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" }, "r398": { "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" }, "r399": { "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" }, "r400": { "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" }, "r401": { "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" }, "r402": { "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" }, "r403": { "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" }, "r404": { "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" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/740/tableOfContent" }, "r407": { "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" }, "r408": { "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" }, "r409": { "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" }, "r410": { "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" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12A", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C" }, "r417": { "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" }, "r418": { "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" }, "r419": { "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" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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.1.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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/2147477891/740-270-50-1" }, "r429": { "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" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r435": { "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" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r438": { "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" }, "r439": { "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" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r456": { "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" }, "r457": { "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" }, "r458": { "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" }, "r459": { "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" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6B" }, "r472": { "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" }, "r473": { "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" }, "r474": { "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" }, "r475": { "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/2147477401/830-230-45-1" }, "r476": { "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" }, "r477": { "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" }, "r478": { "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" }, "r479": { "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" }, "r480": { "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" }, "r481": { "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" }, "r482": { "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" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "12A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A" }, "r487": { "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" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A" }, "r489": { "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" }, "r490": { "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" }, "r491": { "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" }, "r492": { "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" }, "r493": { "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" }, "r494": { "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" }, "r495": { "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" }, "r496": { "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" }, "r497": { "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" }, "r498": { "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" }, "r499": { "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" }, "r500": { "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" }, "r501": { "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" }, "r502": { "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" }, "r503": { "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" }, "r504": { "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" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r506": { "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" }, "r507": { "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" }, "r508": { "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" }, "r509": { "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" }, "r510": { "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" }, "r511": { "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" }, "r512": { "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" }, "r513": { "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" }, "r514": { "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" }, "r515": { "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" }, "r516": { "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" }, "r517": { "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" }, "r518": { "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" }, "r519": { "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" }, "r520": { "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" }, "r521": { "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" }, "r522": { "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/2147478345/912-310-45-11" }, "r523": { "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" }, "r524": { "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" }, "r525": { "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/2147478859/928-340-50-1" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r552": { "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/2147477215/932-235-50-8" }, "r553": { "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/2147477215/932-235-50-8" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "280", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "940", "SubTopic": "820", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478119/940-820-50-1" }, "r557": { "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/2147478546/942-210-S99-1" }, "r558": { "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/2147478546/942-210-S99-1" }, "r559": { "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/2147478524/942-220-S99-1" }, "r560": { "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/2147478524/942-220-S99-1" }, "r561": { "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/2147477314/942-235-S99-1" }, "r562": { "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/2147478451/942-360-50-1" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "470", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3" }, "r564": { "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)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r565": { "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/2147478777/944-210-S99-1" }, "r566": { "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/2147478777/944-210-S99-1" }, "r567": { "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/2147478777/944-210-S99-1" }, "r568": { "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/2147478777/944-210-S99-1" }, "r569": { "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/2147478777/944-210-S99-1" }, "r570": { "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/2147478777/944-210-S99-1" }, "r571": { "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/2147478777/944-210-S99-1" }, "r572": { "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/2147478777/944-210-S99-1" }, "r573": { "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/2147478777/944-210-S99-1" }, "r574": { "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/2147478777/944-210-S99-1" }, "r575": { "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/2147477250/944-220-S99-1" }, "r576": { "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/2147477250/944-220-S99-1" }, "r577": { "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/2147477250/944-220-S99-1" }, "r578": { "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(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r579": { "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/2147477250/944-220-S99-1" }, "r580": { "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(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r581": { "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/2147477250/944-220-S99-1" }, "r582": { "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/2147477250/944-220-S99-1" }, "r583": { "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/2147477250/944-220-S99-1" }, "r584": { "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/2147477965/944-235-S99-1" }, "r585": { "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/2147477965/944-235-S99-1" }, "r586": { "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/2147477965/944-235-S99-1" }, "r587": { "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/2147477965/944-235-S99-1" }, "r588": { "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/2147477965/944-235-S99-1" }, "r589": { "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/2147477965/944-235-S99-1" }, "r590": { "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/2147477965/944-235-S99-1" }, "r591": { "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/2147477965/944-235-S99-1" }, "r592": { "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/2147477965/944-235-S99-1" }, "r593": { "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/2147477965/944-235-S99-1" }, "r594": { "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/2147477965/944-235-S99-1" }, "r595": { "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/2147477965/944-235-S99-2" }, "r596": { "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/2147477965/944-235-S99-2" }, "r597": { "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/2147477965/944-235-S99-2" }, "r598": { "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/2147477965/944-235-S99-2" }, "r599": { "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/2147477965/944-235-S99-2" }, "r600": { "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/2147477965/944-235-S99-2" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r603": { "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" }, "r604": { "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" }, "r605": { "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" }, "r606": { "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" }, "r607": { "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" }, "r608": { "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" }, "r609": { "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" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.W.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1" }, "r611": { "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/2147477351/944-825-50-1B" }, "r612": { "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" }, "r613": { "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" }, "r614": { "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" }, "r615": { "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" }, "r616": { "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" }, "r617": { "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" }, "r618": { "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/2147478009/946-205-45-3" }, "r619": { "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/2147478009/946-205-45-3" }, "r620": { "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/2147478009/946-205-45-4" }, "r621": { "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/2147477796/946-210-45-4" }, "r622": { "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/2147478795/946-210-50-1" }, "r623": { "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/2147478795/946-210-50-2" }, "r624": { "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/2147478795/946-210-50-6" }, "r625": { "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/2147478795/946-210-50-6" }, "r626": { "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/2147478795/946-210-50-6" }, "r627": { "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/2147479170/946-210-S99-1" }, "r628": { "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/2147479170/946-210-S99-1" }, "r629": { "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/2147479170/946-210-S99-1" }, "r630": { "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/2147479170/946-210-S99-1" }, "r631": { "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/2147479170/946-210-S99-1" }, "r632": { "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/2147479170/946-210-S99-1" }, "r633": { "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/2147479170/946-210-S99-1" }, "r634": { "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/2147479170/946-210-S99-1" }, "r635": { "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/2147479170/946-210-S99-1" }, "r636": { "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/2147479170/946-210-S99-1" }, "r637": { "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/2147479170/946-210-S99-1" }, "r638": { "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/2147479170/946-210-S99-1" }, "r639": { "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/2147479170/946-210-S99-1" }, "r640": { "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/2147479170/946-210-S99-1" }, "r641": { "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/2147479170/946-210-S99-1" }, "r642": { "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/2147479170/946-210-S99-1" }, "r643": { "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/2147479170/946-210-S99-1" }, "r644": { "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/2147479170/946-210-S99-1" }, "r645": { "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/2147479170/946-210-S99-1" }, "r646": { "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/2147479170/946-210-S99-1" }, "r647": { "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/2147479170/946-210-S99-1" }, "r648": { "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/2147479170/946-210-S99-1" }, "r649": { "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/2147479170/946-210-S99-1" }, "r650": { "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/2147479170/946-210-S99-1" }, "r651": { "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/2147479170/946-210-S99-1" }, "r652": { "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/2147479170/946-210-S99-2" }, "r653": { "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/2147479170/946-210-S99-2" }, "r654": { "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/2147479105/946-220-45-3" }, "r655": { "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/2147479105/946-220-45-7" }, "r656": { "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/2147479134/946-220-S99-1" }, "r657": { "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/2147479134/946-220-S99-1" }, "r658": { "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/2147479134/946-220-S99-1" }, "r659": { "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/2147479134/946-220-S99-1" }, "r660": { "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/2147479134/946-220-S99-1" }, "r661": { "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/2147479134/946-220-S99-1" }, "r662": { "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/2147479134/946-220-S99-1" }, "r663": { "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/2147479134/946-220-S99-1" }, "r664": { "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/2147479134/946-220-S99-1" }, "r665": { "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/2147479134/946-220-S99-1" }, "r666": { "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/2147479134/946-220-S99-1" }, "r667": { "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/2147479134/946-220-S99-1" }, "r668": { "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/2147479134/946-220-S99-1" }, "r669": { "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/2147479134/946-220-S99-1" }, "r670": { "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/2147479134/946-220-S99-1" }, "r671": { "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/2147479134/946-220-S99-3" }, "r672": { "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/2147479134/946-220-S99-3" }, "r673": { "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/2147479134/946-220-S99-3" }, "r674": { "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/2147479134/946-220-S99-3" }, "r675": { "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/2147477271/946-320-S99-1" }, "r676": { "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/2147477271/946-320-S99-1" }, "r677": { "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/2147477271/946-320-S99-2" }, "r678": { "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/2147477271/946-320-S99-2" }, "r679": { "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/2147477271/946-320-S99-3" }, "r680": { "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/2147477271/946-320-S99-3" }, "r681": { "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/2147477271/946-320-S99-3" }, "r682": { "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/2147477271/946-320-S99-6" }, "r683": { "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/2147477271/946-320-S99-6" }, "r684": { "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/2147478448/946-505-50-2" }, "r685": { "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/2147478448/946-505-50-3" }, "r686": { "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(Column A)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1" }, "r687": { "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/2147478785/954-310-50-2" }, "r688": { "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 A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r689": { "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/2147478979/970-360-S99-1" }, "r690": { "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/2147478979/970-360-S99-1" }, "r691": { "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/2147478979/970-360-S99-1" }, "r692": { "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/2147478979/970-360-S99-1" }, "r693": { "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/2147478979/970-360-S99-1" }, "r694": { "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/2147478979/970-360-S99-1" }, "r695": { "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/2147478979/970-360-S99-1" }, "r696": { "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/2147478979/970-360-S99-1" }, "r697": { "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/2147477332/976-310-50-1" }, "r698": { "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/2147479230/978-310-50-1" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/985-20/tableOfContent" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" }, "r701": { "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" }, "r702": { "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" }, "r703": { "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" }, "r704": { "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" }, "r705": { "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" }, "r706": { "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" }, "r707": { "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" }, "r708": { "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" }, "r709": { "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" }, "r710": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r711": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r712": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r713": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r714": { "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" }, "r715": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "49", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49" }, "r716": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r717": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r718": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r719": { "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" }, "r720": { "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" }, "r721": { "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" }, "r722": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40" }, "r723": { "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" }, "r724": { "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" }, "r725": { "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" }, "r726": { "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" }, "r727": { "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" }, "r728": { "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" }, "r729": { "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" }, "r730": { "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" }, "r731": { "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" }, "r732": { "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" }, "r733": { "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" }, "r734": { "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" }, "r735": { "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" }, "r736": { "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" }, "r737": { "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" }, "r738": { "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" }, "r739": { "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" }, "r740": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "231", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231" }, "r741": { "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" }, "r742": { "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" }, "r743": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r744": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r745": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "101", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101" }, "r746": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "103", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103" }, "r747": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r748": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r749": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r750": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r751": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r752": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r753": { "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" }, "r754": { "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" }, "r755": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481395/860-30-55-4" }, "r756": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17" }, "r757": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21" }, "r758": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29" }, "r759": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3" }, "r760": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2" }, "r761": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4" }, "r762": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5" }, "r763": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6" }, "r764": { "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" }, "r765": { "role": "http://www.xbrl.org/2003/role/exampleRef", "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" }, "r766": { "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" }, "r767": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r768": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r769": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r770": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r771": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E" }, "r772": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-14" }, "r773": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18" }, "r774": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-9" }, "r775": { "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/2147478795/946-210-50-1" }, "r776": { "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/2147478795/946-210-50-6" }, "r777": { "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/2147477439/946-210-55-1" }, "r778": { "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/2147477802/946-310-45-1" }, "r779": { "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/2147477271/946-320-S99-1" }, "r780": { "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/2147477271/946-320-S99-2" }, "r781": { "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/2147477271/946-320-S99-3" }, "r782": { "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/2147477271/946-320-S99-6" }, "r783": { "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/2147479168/946-830-55-10" }, "r784": { "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/2147479168/946-830-55-11" }, "r785": { "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/2147479168/946-830-55-12" }, "r786": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r787": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r788": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r789": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r790": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r791": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r792": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r793": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r794": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r795": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r796": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r797": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r798": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r799": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r800": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r801": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r802": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r803": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r804": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r805": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r806": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r807": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r808": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r809": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r810": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r811": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r812": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r813": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r814": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r815": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r816": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r817": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r818": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r819": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r820": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r821": { "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" }, "r822": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r823": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r824": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r825": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r826": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "ii" }, "r827": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "i" }, "r828": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "ii" }, "r829": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iii" }, "r830": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iv" }, "r831": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "v" }, "r832": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "vi" }, "r833": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r834": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r835": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r836": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r837": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r838": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r839": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r840": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r841": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r842": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r843": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r844": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r845": { "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" }, "r846": { "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" }, "r847": { "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" }, "r848": { "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" }, "r849": { "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" }, "r850": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r851": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r852": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r853": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r854": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r855": { "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" }, "r856": { "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" }, "r857": { "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" }, "r858": { "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" }, "r859": { "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" }, "r860": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r861": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r862": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r863": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r864": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r865": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r866": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r867": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Number": "229", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1" }, "r868": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "A", "Number": "229" }, "r869": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Number": "229" }, "r870": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "i", "Number": "229" }, "r871": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r872": { "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" }, "r873": { "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" }, "r874": { "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" }, "r875": { "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" }, "r876": { "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/2147477351/944-825-50-1B" }, "r877": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Topic": "321", "Publisher": "FASB", "URI": "https://asc.fasb.org/321/tableOfContent" }, "r878": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Topic": "325", "Publisher": "FASB", "URI": "https://asc.fasb.org/325/tableOfContent" }, "r879": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "a", "Publisher": "SEC" }, "r880": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(1)", "Publisher": "SEC" }, "r881": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(2)", "Publisher": "SEC" }, "r882": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(3)", "Publisher": "SEC" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r885": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r886": { "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" }, "r887": { "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" }, "r888": { "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" }, "r889": { "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" }, "r890": { "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" }, "r891": { "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" }, "r892": { "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" }, "r893": { "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" }, "r894": { "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" }, "r895": { "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" }, "r896": { "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" }, "r897": { "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" }, "r898": { "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" }, "r899": { "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" }, "r900": { "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" }, "r901": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r902": { "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" }, "r903": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r904": { "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" }, "r905": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r906": { "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" }, "r907": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r908": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r909": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r910": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r911": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "40", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481628/310-20-40-7" }, "r912": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/320/tableOfContent" }, "r913": { "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" }, "r914": { "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" }, "r915": { "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" }, "r916": { "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" }, "r917": { "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" }, "r918": { "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" }, "r919": { "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" }, "r920": { "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" }, "r921": { "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" }, "r922": { "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" }, "r923": { "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" }, "r924": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r925": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r926": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r927": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r928": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r929": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r930": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r931": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r932": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r933": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r934": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r935": { "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" }, "r936": { "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" }, "r937": { "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" }, "r938": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r940": { "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" }, "r941": { "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" }, "r942": { "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" }, "r943": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r944": { "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" }, "r945": { "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" }, "r946": { "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" }, "r947": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A" }, "r948": { "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" }, "r949": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r950": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r951": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r952": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r953": { "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" }, "r954": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r955": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r956": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r957": { "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" }, "r958": { "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" }, "r959": { "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" }, "r960": { "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" }, "r961": { "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" }, "r962": { "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" }, "r963": { "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" }, "r964": { "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" }, "r965": { "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" }, "r966": { "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" }, "r967": { "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/2147477268/942-320-50-2" }, "r968": { "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" }, "r969": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r970": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r971": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C" }, "r972": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D" }, "r973": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4G", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G" }, "r974": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r975": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r976": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r977": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r978": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r979": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r980": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r981": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r982": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r983": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r984": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r985": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r986": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r987": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r988": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r989": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r990": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r991": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r992": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r993": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r994": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r995": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r996": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r997": { "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/2147478009/946-205-45-4" }, "r998": { "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/2147479134/946-220-S99-3" }, "r999": { "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/2147479134/946-220-S99-3" }, "r1000": { "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/2147477802/946-310-45-1" }, "r1001": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" } } } ZIP 88 0001558370-24-016050-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-24-016050-xbrl.zip M4$L#!!0 ( .N!A5FNX7-+.18 $?D 0 86=X+3(P,C0Q,#,Q+GAS M9.U=6W,B.;)^WXCS'W3\LG,B%MOX,C/MF)X-C,O=Q&)@ /?,/FV(*@':*:I8 MJ.8Z\]:/9W__^7_^\M/_MEJ_W8_[Q+!U=\4LA^B"48<9Y)4[2S*U MUVMJD2X* ;J55<,OW:KBRM:"TG588T[E3$GD M%^P2.YLUDZG4JF2+G+WIRW11L&2+5#IKD3&(4+)%:E&NRW1:5;3=KG"R1 Z+ MMC&21AKJ@$_[XK>G_D2I?$!L.&*G]2U0H?@"BY'!5>ORNH6J[]6DB[=^INY]N!"VR2XB MRACB6)*.N"K9&CW!YID\OK^ TFAZYJ2.QH\6\6(M;N_;&R!TY(QHY M95EYJMG]WC.[?,>^M-@LV\9@X;;AT(T,NZ$;NX0MZ][ FK 'W@4C=MZ0HV@5$U MJ# ZEM%UI6.O.F]#!VTPT1[PK\FPWWOH3.'#9 K_/&F#Z80,'XG6 M&0]Z@T^3!M?2N-Y3$PWA9,F84PK0[0J%2%Z51?*^T^\,NAJ9?-:T:8-@O9G9 MI7+Y:-JOE:=F5+$0T9MZ<[/;F7PFC_WAKPVVZ6LG0H#_:?]Q^0LU$1=8OGK6 M"Y..0BGVYP-S*#<3:VF=)O+7UIO+Z\NKW>45H?R;!ZCVRW/O2Z>O0.X,'DAO M\$6;3#W06R3&CGSG,_R_!OY4^'O02VN!X4Q'2C"M77NUMBUO=NZ69SC*N()0.(2D$"$1G$*%0>^ M9%/ZQF3XI_:VQL5^S'3;TKG)57O[ 5HL@O[[)/23Y]&H MK_SX3I\\]@80I?7@K]"[A^G].!P_=::]X0#(%6_B,V^6_P/K2D?7A^5_%7E=J;_ M;'!/7;$?F-0%7RMO:W[O2FXQBRHY@#:*#<3NZERE:@'2$&PE';8';=(= M]T9JI050IY\UCN^],>@KNT5B;X(*-E W,]9*RE5.PQ9!>)R$M MEW%M,$S%$'Q-/#$DQTQG@,G,9+N@I5 4HG2;1*G3[0Z?$9>QUM4 I/N^UD!2 M*MU9E+@LAB,E<$WD(!LP4L'P(T1KT1$"1IVEVK5THD)8?DC"X@>'@T^D,QX# M0%ICNW+6'WNUXADK3:RH$(B7VA,@'K@PX]]L^G)Y;Q=*I"9&Y25O1GL%9/@ JL)%U8U\?*4C63)6,I80MT MGL9LC><.K$5B$=DM+X0D)22<:)_4[L=8&PW'N+HW8.R;3AO9)D_SQ>HTD;_1 M!<8ON=%5*[M&O@M8-GGTFHFV*:9EJJ?;_&KY0%]?7B>/,)4\Y?B=QZ'!M5RF M)QW&#*HBU$H=/&L JA%1I<.42UL %@17";"R@JL&L])15M9\VB4H0J>=-I5B MQ_8:1"I%7NFP9% 587.5Q";M/%Z#4!5W/\/"I5,5(72;8MMV/?\&H'R QNR% M62Z3C\)>84I54-V1OW)G&43($FCI8B'P^K!R\H,:&:?@]F\P'_:;RY3LR%C[ MH@V>P6 ^CH=/*J4[[G3!"_FU-_T :QY(:Z#=%]K."PP?A@V/MI@ P83IK@!),YW> [18K YU MF(""/&OD2>M,GL=:H!LA8Q+CC._Y41)R)XI] MHRB5C[QF:$ V81&TY,VJY/7^W+I%>)8Y0(L8ASSB M]\ :F.N!&S^ M"5[X% ^S%!MU9S-BU !>'O!?*4Z]/#<[C[88RN232EM01DTVH-7:OIZXJQ45 MF^&\HSO\A3N;9\O (W:K-;4V$U5GJ$X*C4R:F>D[9-,%*E'EY#$6>3+@ID$@ M!7%1#.++\5=)E"3$$X4H61I=VD^7NDM+)A]^!A"U/1%_W M)'%L$DA)/#%5926HKZ:-9AY ,V7/>J)O?.6N G4YL!Y68E"L=>6/ VUIG>[) M@FKG+!E9>1(1*U1!&>J8[NF8;'2LMHY5B4=KM%"L)3<5M*0)3O<]3C9@SG"M MGM*W%GU;RBYXHIL9S;0;5:H689URV'KGY3A@04(>!)F0D$N#B49SRBC.Q32HTBXG%9B3L?S,]YRW:,I6*@4^8_QW@5>/$ M:YT$S3>0EEGKM]X4REO24PF+H$O9-$Y[7JB!JCI4$/ ;#"S7B'*C/&YIM8I! M3 \-=T%$&K]Y@NTWJ-:Z&YJ5;,PE+L*P_$71!K6*9\BS)E\&61%29>Z/-ACM M?4*O^DF[XD<]:I\$;U L?]*EU/&58JS*'TIIP-GOM>+:[Q(7W[7?\Z'J!MF: MQC/]VE3I>OE+(+B;R4B_Y.GCYG95=8.:#F8>:1%^-TG\L@[\-8!5C/MR[F2G MT15 U4XYQIL>H#I%P*:\8E'I MUQ0:M ]T6]0_16L9?4YGW,R[9G&81HL.BM7WAF+W1_V?8,'-CY@(31YA;[7Y M0@7'F8SC_A3_GB?^;4?PMO#EY4]\X0//Q3/+5&M^1][Y;"C;_ M>$87;RW\Q?7VY77[7]#3\[>5&5 XW#&A6OP1.H(2R;\1:H94*$/F[]!?>QJX M.X2^=$$35.B)5EZO51MM4(8+106-V&LFY3._G3Q)HT[NEYS M<-/Q*_\+R[*]*:6^PZ^@U[9PB$573*ZI[C.5P#4F\-5U7"M;[?/V&9'ZDJUH MW];5=U&UG;XFJYX#6U_0' D" 233SQ?VRP73#6SM)IMQ*CG^H2"LQ]5@O K7 M@!S_J,8UJ2'BW\JM6^:EV7'_&M)@U'7.#4P!Y=M:"M MZ[*HI]14GV4U$/Q^W:I/AE-Z(((*. *WM1'XX,U1"U\N8D8YYJ806[50@@^( M0?O[_>4H.0 Q&9PZ_.=4SE1#KFQA.[+,!(A76E"Z]N>>Z##'A*@!97NK+;UA;JIW)F77%(A M BRT_^HX)EX&TX/3;?X=GSY?<9A*3PS/O9\I83^>E:3EIGJ$X>.9(UPPI-Y" M#]:II:S1G6'C.RX]AZW0(X:^N3,)R[J+/?LD;'?]\0R[Q>^@T=49H5"* 6W0 MG%<&:S"WC:G7M"O\#<'L;N;]3&TV&Y?LLI/O2M3<'#S.[-% M;7S.Q.5GV!7@FM&6R++J"M9Y?&)SBV'+9BHT8\Y->6!.J(F=<\R0$2Q MF3#QPG66F/ZY1">(CKK\E;SN$SU:<+^)2$9THPSV*Q6&MTT9>^0E=FM6>V-" MYQ)E^Y7QQ1)6KZHPZ3IUJ)JO9,R(*%2 M@--LN"8;SA\QQ<7Z_ 40Q,RWG_3ROME]Z.9^XUE\DTIO]WS*WIQ[$]0B@B[M&-@QV-8'MK8E=[J8;9VC M&<*[X/Z702^K5RO0/Y ;#\_L 6".34YUDA]M5VR'V=G%IQA9^\_)^//CT<;S M1]XZ 17#W>@0L++4AU/0>MT:XPZD!9JUPE2._PQ+3LKNLR7 S5E8 M_ \671^^9Q:LXOAJH8G9Y*F=?O?8O_<;C,5AFOHVJJ$K_OG+Y?;=:I!_)-B: M=U4:VS!1PZ0NR+H]V;.+3W%F[V8[^^9.=_((3K%#VGS. M\#6NZ.X[.CO@;MN6SDVNZ@]L6'8,7'! >NT-XV#X![1+:F],=['V5GBLEJI@ M0([)X+@S/1J^JDM>'U;LX=PSOX\4N^ELPA_<=F @!(-U+7KXY=X6PGZ%TBY= M [FS"0;O$ U]HT$J-OY]YCA@O8+^ >Y/O/U36D])%R^\YOB7R28?.L>TO4''H5"WA5=]6G;2?WTDPK8<\:EZV'A -THZQ5Z #1,Z.02GUJGM M#3;O'3^T-RBD"HW3=%&9+68\N!C=!]FVWF.>3J6!!.0Z=-Q[;H*S=0(UDBN'<&6!(H!DO MNUDM1[]K#PXX) _*,NTU*$$3>QJ]8PQ(].8=^H]C7*.'\V?I;2@$.7=O=R$: M@DJ5]K(5^TR+LKZZ?_1(UX \\ZMH2(E%7"(9-AT>9AMAHX2=0#SME8+WDS@_PF1@T*,P4#D_ ML?7@0,T=U7U*&Z1"_TD=9H))']]HR3K14([Z!)4AOK$PI6_X+JV_K7"6NH^Q M2W-D,Y #7,6E8-MM42\)9ODT?N&[Z=H_N"ELV_$]DUW53"\]0574@.$*-[)0 MP6+6=_OKDT&E:.&)B^UMS8!^X5UJ(:DYG ^8 P)*";C 1,)$N%![-R/!7KCM MRG\R*K)&H7YS[V7T1MY!"8H_(.%EMWM6_*%^WR$)5N2S^#9SM8K['M$X1NR> MS+E&&5D_A:KV]8)>!(D+O)2_9"8>? [K3[9)NI)E*1*.]1X!"9[9V^/LJ9W M5OBHY1^JVG >Y+##B^$]*^6YYYAS7*OV>YEQ#VSF1#]GNOM+JW[?<9] AF?6 M.J:)5X;4X<0)*(#)@A+,[:/%0>W@UM!2'Z*1_!J\WDE\DC\4T7-FQQWR_?G\ M*88;PE\OC<<,M9BBXTM-5$7/YX6H#W>N.W.'U53M^@S>R0"#X=,9,]1C,3M! M7A0;JM_;F,>6#G5F9]LEW[NA]V)X'[./=,=7'/\\A%(-U @\N1F-UEZ-O!/5 MJCNU/D%@$TZM T_;O+9/95@+DZ1U#P'X6_W>3Z;A=5;0+ET=1,2O8O=;Y->X M:W-0:;Z"_UH]+/ .N\CHM,L/B4QE)L4)QOM'\0)A]DUM=*K(9C:C[#T''G$MSC].8:\W+H2+M>H?//M[)8.3_]:! MKN&1[,OEG0QUXMY]S>OZ1[VM?XQ0 T_MRE@(V+4A],,M"W6IG,O?8VG^,K2G M@G?AIC=>B?BE'?[ W2ZR6>4G"*$GZE5!5Y+E)]@5M1,Y9FO_A^6-<#M7>\-# M,K!\QD\6[^9'ZE1^+[G0@>UX.X[0]'!^#ZZ%OL1?:/=N-P]?+?PU'OL^?&@< M['/X6/V4B16W=C8Y#]9@? 0KO\-PE,W,>[_1\.YW['&,F#7+I7HO>C'$8PZ, MRHPC+AG%)SCUT4K=_G*=:\72RD^V*_D&.:W\9+N2OTRFE9]H5VY^N2E8)I/E M)]N5_+F25OYMN^(]RNV]J/KS_P-02P,$% @ ZX&%63JA,9C]#P _UVJ_ M/DX&DH959XE,6U()4FRD26^ZO9!F>+523.D)$:(;AO1(=.T%25*C?MF\K%^V M[J1:[8M;QJ-B01YL2FYAUY>-X(>V7QPV/TF-ZZN[J^OZ]:WT\.GV^M/=M31^ M"M(]0=/F>E9"0S?_^$3_\PSU20#1M#Z]6_KGBX5MKSY=7;V]O5V^W5QB\@+9 MZXVK7Y\&4W6!EDI--RU;,55T(4'Z3Y;[Y0"KBNW*)Y3]_9D800$W5YNZF"GH M7[4@68U^56MZ'2O9+\Z^"=WT M17\VD&Q9P(TV7JZPZ0EW^[?". M54J"J&ZAA>68U+3[+;I8=:&TH^@+_]2FB;#N SA5&A M=QM!1FWSK6[3.ENM.^ICU^M23=H4 I_;HV&G.YQV._33=#3H=^09_#&=P?^> MNL/95!KUI*X\&?:'7Z>NMQD@-+ :J=B@_CDFR?)T93E7K&=7H(Y5>U&4E3MI MN$*&;07?N,1U1>M_\1L=RPA:@"# IGNF;HCLT1SL75"3H3PC Z9)/#FNCH_ MZ]WQ1@VP9?4P0?J+Z?5]=3TCBFDIJMLA3,W]RZ.0K/WN>(Y*!OC#5/;;_4WS MO@7 [NZ;]]>W]6;S;DN4(;K+)"I5Z(I!8_U>6:S3S@E>H96&[OPA&0_D5K*U"/25,IN H3Y'J$-W6D;47XN4I M_K2IMK,D?')="T8N:/,'2 9#(FFJK^9L.+ZN;@33U?9\X1&9:*[;#*TQ4@NH MOVR%Q)68!UVF7:^5J4]W( -Y@+-HZZ8#?N%HA8@K,^L1@9\=GC)VWVVB ![P MR,FZ#Q*UAC!EA)P@;&C:"TR=$4%6.B<.4N-)\>IX$A)T6'"'0H"!/=@4!,7K M=[8T3X*9*0K_KMY\N"V;(,=6-L/ER"()>D>F@@.X$9M*_Z/:B#;,;P$^Z[ZKA MT'UMNM )_VCL*66!D@0D0)8:XXK?%VY!"=+&%LRJ?)#,-;Q0FI-0:C:B3 -< MTOQBBMQAYRM,C8ABR*8F:TO=U"V;VK77#&>.+[. &BYNMW> S$^!'Z^2=AD. MOOVP=]_AFG??X5$>R,-V5YI^ZW9G9>PW>/MO##8'/Y;0"_V=?6^3,+5Y M?IHHP>[KS?MM\W'T/A65;;C/9+><9S!;$1T3W5Z[/:B,D4VQ%M#?MX^055J=IFDL8"PMCK0(+0H>*F.MGFQ0GHM$L1().+F55Q0ZT M>8)4!#1\-NB*?X:-3)E,>)BB<\$>UR O.5>2>R,F'F#=,S>SV&V8@-G@3U(E;^WCE#K6E9A%5P MDAIS ^$9>\M6Z%>,M3?=,%A+O/[/47P/@*\NKJ)2&UV%(7/[;#40;+/VF*$P MGJR54F9A0%48&SMHCF! T#:;4!N,#/6R,U1*J3EA'&%DC)W=AB\^EB('2+'0 MA-8UFG^W/";""! :V+?TE3-W)92W#TR^)N\%FXX.=.59-[SC@*8VM;'ZQP(; MT%2+#O+VFM$;L[.5BR6[V0(2CU<787N2A:@*JUD_,)XJS 9#TF%'@?D'9H_THJMZ?RC< MVGBYU+V-,KH#ZIX'?4&FRG:34W)$@;?JS8<;@53*[3;G12BH:KGG:_&$)Z)( M3F""WHL:$W\YR(61=E8C(:6 &N341M(. Q^\*GC)U+9@,U.CV\E.29U3QC%3*<8 MK;,S)W LX0Y@%JBG;M M9KW5*-US+8>W8?-X+#E7809,S^X"E#'!KSI8Q\?U=XN>>/&C\9DOLFKKKVG[ M]/P%_,7%!"[N*+Y\$_-M>1]IY4Q9NT-S#Y,)6CD$Q&(A&*,1!7!&\XY.)61J%C\3DC-%\8-7W"K]?O#!6)!# @>Z,9YX"!& MJ@AI;A@3-U"O^X: _*80;8ILVPORZDTXZ/XKG=2 %-R )G09*N%@XHXEGC(G M#B4>07=>&'+S+A7NX*(D%" @:X1U47C%EV_EN%P7989E%:1'T#=D:#/\I-@T M_N;Z(PYGQOB4F5] @NVH7O9054P87'Y+V;.FB/6%KC::YR4,=P%GP9C=I%&% MW_M$3LA=8RPY!PIL](I+;>KWYL&U=3X GN\B":XM5 MN+&)>8F0-0'Y_@_%E&+ZXVYC%SGP(4B(O 9T11Y M>$CT=[:B"^=Q'K>R1N5R76_>-T^.&H7EX/.C)?0Z8QP=,PHQ-T^8)9PG7?*) M(UAGJ@L]T+ [A1_>B;Z[$@L&E-O2I!5VGF0J+)F 5T(O8/)UGDU0H9TLTJ:4 M\R12?I$$#!+Z&% ,J3[_]V[O$VOW/]_[/\L"] MV"H/.U)_^'-W.O,NNM:D4+W2/_V:_U7"E==\;^>4M M &=+G\UNR31IS9(3AZ!/3J:?&,P\7<>;O8JJW0D;=R2V(]C6[354NKJ.3>]& MU?9ON6WK?=RV]H?BU_SCH2O)TVG7-Z$>=$IY+'[5*7K6EFM:>;@)-!OJK MN]>T_9@!@_GIF4HRP"F-"L7%"*^PYT?'*$C 'IZMHGBGWQ-P46^@IL!S'^[- M3PU' &' 4&NU#MR*<;./3-N\H45 $ M53C$F _V!"T5'2P'&>(9B7,1P)7=BNLTE0Y '3!PJV&I]/^D3-D;9\^ MFR 5FZIN>-=7\DZ<&XUZ(SYQ;H^>NM),_K7K[3O1"B6H4?*KE*)UEKP;E><4 M(S-U.;O07ENBTF0T4;9[",BI�^K@.M67_D5^R4\WG[JT- :Y&A_:W=Z@.+ MX@@3YT3/X[M) -*+J?^)-&@?O9V8W O2$T;S=*/+'"HMP"F X7D.Y1! MZ&$"[3(C_.OH\SFB[VKI"OMY[T*E59,%AP!=A2DH Z\;0UTVM0%4:H1\AWQ4 M895RDA3)!;8*KW P< YIY'[-46WJ)?O2,&LYB3)$<^M&6]0>\%JM@\ M+N';N6PDW7<565;W':D.S1V^\@@3*"<6<.:@=563/\<72;&IJK FZ DI!CUG MV:57K.G+2"F!CG8MMIH4.RCZS(N+1SPZ$+R(-4;$O8>=>TGC.KZDT94GP_[P MZU0:=R?2])L\Z9:Z:/&+*U6DR:\PQ7Q!0V?Y3+?..KKAT'=T*&IKY-B6K9@T M&A&C'^0NI003P&ACK'&/BJ6K^7 FEQ&E]T.]^5#Z&W$%M1WN]+N+H J[^NZ% M FJC-B\ANOADVR;ZL^,&@ISAC]@,?H@WF1 :JBO]0/JN!9\FK0XDEV*A@(\P MM$R=U[OCG'Q!.[]V";]W1YL>/(C?OX*#3]/AX/W(?+Y('4 MZP_E8;L/GS;/F4G]86\T>9)G_=$0DKN-D/Q6B' \V6V0?W([]7'[>,)BQY 3 MISDA!VCNF!IU<,8$K=QW5%DK'=SY!.SGR<*,SCV*8Q/T-@B]$V'29?>)\O8$ M_9- 1TV[;A1+6T%%YL/$> SMXC#$[M_E=/A\5L0'#,H MU]F)ATQ([P',]"7=P K4N5P9>(V"%24^$(Q, O;B5*G'.W,!?(=QD!(]6[]U M8X)_1ZK=QA9+7>F)JZNF K@.XP*EJ<<-'9MI%K(S1.&TZJWZ0_74E >;T Y/ M3FN?GJFZJMT!W\Y.C_\]_<\SL.K+_P%02P,$% @ ZX&%6>Q"5."/+@ M [8" !0 !A9W@M,C R-#$P,S%?9&5F+GAM;.U]:7/C.)+H]XUX_X%;[\/N M1CR7CZJ:[JJ8F@U9EMV*D2VW)%=/?^J@24AB%T6H0=*VYM<_@(?$ P !7H!< MCNC#DA) 7@ R$XG$W__W9>,:3P#Y#O2^OCM_?_;. )X%;<=;?7T7!LN3G]_] M[S_^SW_\_3]/3OYU.9L8-K3"#? "PT+ #(!M/#O!VEC [=;TC%N D..ZQB5R M[!4PC/.S]S^_/WO_^9-Q^+<7YQ^NGT MXNSBH_'3EX\77SY=&/>W*=PM1FWI5 &ZCO?]"_G/(Q[/P"1Z_I<7W_GZ;AT$ MVR^GI\_/S^^?/[R':(6;GYV?_NMV,K?68&.>.)X?F)X%WAD8_HL??3F!EAE$ M_,DT?WE$;MK!A]/]6$P(\NDD!3LA7YV<7YQ\.'__XMOO8A0%^G^7$H-_M8-] M@RSPI]/XQSTH:4NC_/SSY\^GT:\I: FR&@F' [_GY3_^PS!BF2#H@AE8&M&P M7X+=%GQ]YSN;K4LZC;Y;([#\^LY0.O[&KHV5NK17Z$3[-X99-B'V3B'JXE6IN=XUGL+;DX) MP&FS,4Y;H/+*\2T7^B'"S9^ %P+_&L$-QB) IA7XO^&Y-@S] &[PN!C67*T0 M6$6Z.5VF+:Y 8#JN+TITJT/VS8/TVP5 &\>+L.J0?-YH?5,^P^N2@TE9/7@^ MQL0G:^(]0$N(-F3*31]=)Y92E_I0 PF=^;0T0S?0A%UY7-KEVM#TU^1?LG(] MF2Y9T@:>/?:>@!]$"UQM'HCWW#-%@R<\K/GH@FN(YAA@#JP0.8'38+EL8\QV MN7!M.NB;Z8;@%ICDC5$8;V#>C.""L"IB@\RISX/F([;+ M@8%EP1 /AP<#6"B8][5)XW35+LYC#QM)*PQ0KOK08(X?% LS64WUO+ZR;<;)QXMFOYC%&+Q41#WB_\X <#>G(Y> JR@9+L;>=CL MBIDQO+3J%&N/T+X*7 #/^J4].Y'S(@80<8X?T=E8 9O$UDIZLF? M1(F%SP#11RS24PQ N0CM^R,# MGB0?,#GG/Y^J)97JVB6R\P<7J.7C!!B\DOE_BU_D2DU^X M+Z9$1#6?KA:A?[(RS6U&-? W%,THSX)2%[$PJC156)?VLG:\X-1V-GMYFZY; M3VDRT5,2H?T4$1?UUAPI_#01HKB.,Y\73SOB=C$+R:3MLL!8# MV<#>?^L$9(!#*S Q#A/#./'CTH_A=.I!K/@+WZSOQ!@G%(@U.^R=X8%DH!'89*P:] ME? %;KQ9$G[7B*XD6(]%$(D]/$PL[;'YMD0,1-M:_OCM3HCL9[.ZPT2T[7]AMV%.&UD87 MRF4HEJ&TU9G"83JLQ$/51"DCG9TK#&3UF2=)N)4_,>A Q=6T "1/3,G!P%_\ M,=U&&["WF@#3!S-GM0ZFRP<_#I5B?V,:K &*QRY@7[-U0I9TZZ83@<%D6 .5 M7N="'F^B_-+X)M/A@P;3@7,8]A@['Z$9@KM ^O]"CZ=VL")=1G_<5!A_.&/ M"5B9[LC#N.[(^ 45ID"45)@!TW J5F,>#W>5"RIET,[^3,6Y"%!WSO%Y!.F# M-9QOS"!@:/X66%&.,55%N;!TRGC0=957A+E08/S>])F#,-'J2D3;5W$)6V&/ M>'Q0>L@QH:B]4!NF/5'92@'U!52HTX(+RZ26"=W4CA)E/A3 I;I]JDK1DIQZ+AMYML1G)PV+87_O? MJ)9)[M<^L:4J>>%7-L;-59G%&D@=I5<;*8-6:A<5T%&[M%L6<$D$$MA1HM\, M;$-DK4T?^%?X2]Z"7MV2O8R+M=6/'UQ;2:AM79ZT9TO)"0[6P+#_95^$I,+1 MK!@I2B?G!%,9WR B)F3(,Z]HH$Q58P%K0")W@M&!AWL31DP@4 *C MWJRT*"';NV-]V-Z&V-!C>-AE(*KC2@=30@@)7#"/-EB@ M D3E@9NXYER>PNJQ>W78:PW;I.O(60.Y<.M(?A M)G3Q%T]@M%P"*U@@$]/',(E:Z*ED+!1[$^FLWO1HBS'4^=%*7XV9TWR*M2%B MV)@="@RR>GJ8M]7JBTNI&7=INN3F]7P-@(A#Q )GFC>\!IJ0RS7BV VD2&[/ MO!.0 !3%I?>IQD8^.YGX2/=N[MTC:(=6,$5S@)XO]RJK*TB M+#]SBP;=%W6QLYC%@)V]Q8*E4\>#;B5[B\-D*("#F@RN,M+[+"X>LHKCPOM: M'9>[(29D!4DADTRF.BV55K(U)V8JW%X!;Z)K(XNUZ2W 9@N1B7;CS=9T4%0. M$P';P3NT[P-2#@NN/.??P!Y[(Q.1:G9^0HP#HI)+AUIO/'NKL_&8_.]TQ.;Q M;EGE@CU1IL!-$V1%UI3LE 5J';[F[-/R$: MNJ;/.]J2Z(&I=))]Z,6G WYWYH8_+25[J<,O5C]-IVP],<-&./<^J:6(S$[T M&L0I-OP3ZAM-?.(Z =#_Z\4QB&:C14UW>=;4#E==&AVOA,;7@]:^3E=+'@9>EO,]:ID M/A3$I/^,+Q;JN5PO'LI*)TD+@,R584.JIPX[H2@@0H2V-XT MX/(85H_?N_+3$,[J/0M1I2K_S40.*>DSX]_G*H(QM8$&J)@LKJJ7 85(:T_- M.9R%56/WKN)E9+,*3D=2J7KO'YW(O+=TN;LS _+H"UO=JYHQ=42DH29LB)'B M3HZJ9E)L*#9L.G$D9 3E,.M]6E63DIUF(B2HO9D(_>CY/,=; <_"/E!*"WDG M)/V:9UZ)=\"^WB?5A7(F[01F(Z>%(!M*;1I?=:PC*"B,7O^W("7HR=V-Y-.A M]A+_LXGL"G\_!\.^A%Z$4N';DPO9Y2=Z,J]G7>X.,/?FCGP7(7[ WK/O7=.K M#&5W,10[HM#18(WK 3 T W:/>O^% O*TYF(6'='8>RA\0:@GJ2\V>?\I9&:% M4N&H46(FI"J*R#.L,^#&AM':V2X@IPAEC1[$N%#=1Y, >I5X8&VL>@VI,\A( MX^DUT%>ZU:;SF[/39D&8FT$12"$IW!U2<&]K?U=B_1B^6&-K#C)ZXWVS!('H)/4RGO 8JWO!V] YZ]V=V( M;.NUVS&UD5OEK*UJ)LG!ENW-7C0#RA'5OR7:)1=RI:X$J%=[))=]ZW/F^-\O M=Q6^+*<%^PR+WT8'NBM/L3DMQ.EN]R1;3!10&)_^C_1X!.3.]OB(]^[FQ:E7 MR7NYK%RG,A#5M:&#]40(68JFRQP*3#^."4LEBPO=Q#?CLA4*#-ZK"T;#-O6_ MN%CJMBU< L]:;TST76YOR#63V2!*#;5@0XJ4W%91:";!AG+##C8-EHQX.P<% M,QVVCP(IW#V$0H+"U%F,U#@ F^K$V2Q@15YI$50940(ILWE00<+:3I=E\+:4 M+%L>7U&J;![A;,!5:F M ^W84^FBB#:OR9YVG9<:LBP],"*&:>_[DCAIY>='Q$A2&X9'< M0L"-A5O)* M)D%\&]6AK)J_ BW946ZQMCKQHW+""K24YT>[TU1.9% :O_Z/#40(RITFB!&B M097NA?DR"(-U]$9DQ3D9NP'GNB"OB39$5UR?9#>1)+S-"Y$"LBB5YV;CHZ@Z M-YV GV^!25XH)7/\&D57:;CIE (MF;HEV%8E/VAX M\4L55+>LY@>_;>.2!%(B@]+X]5]^0(2@7-D!,4)TF9+[/W]Q ,)\6N\FX G0 MLJOD&HM,S(KFFLQ-OXRF]"QE]B$U7[F]M#ASQ<1:,7FYR*J*OIDH*D3WP) MG_X3=Q:W.023JVT/TD)!H0JM@-TAKZ*R$)W:W .:+5.I=(UX\$(_--TI&GO+ MV"0)2!";LTYP6C"UNJ*-/G1S%P!N&UG:VYNB8@*!$ACU/N^X)&3G7B7J2B=3 ME,]-[DR@8!>M$J:57(#,_L*96^(=,-5-K@O%3.).MS*@$-'M3:Q:TH!56/4^ MN63(R,XU.OI*)]@5N3P!/)N7D)V#86I,"4HE-=QI4("JIJB]"2.VKN" M%]#,ZC %O8("__VTP)T)_AC]0/D^025'22Y3(R*!)&D 8&].1R\!H>71!2,/ M6WUQ.LS$\8/#>T21 "!LX%=('4^6QB'+HQ,'T9,CA$_KNV_.ZZJ)!\8&DP' M5?)ZHH6=>WOZ!)#GK-9!8K][*X+9'"[1_A=2-O!E_FQNR2_4U^%;Z?./"P;+ M&O?:9LV7DGAABX@V7%4BU$XV.0F)%8=)JQ.M3,_QK/<6W,2KTOX)C"'$.'G1_=]#C;_]K]A=G0?0^KZ&+D;1CS,E MA):KSY\_79R=?3@[,TZ,?7?X[^'T[FIT-Q]=D;_FT\GX:K# '^8+_+_;T=UB M;DRO\:?I\)^_3"=7H]G\OXS1KP_CQ>\*EK4]W@LB?M94+@"I?-TVE@^Y0@,] M(/BZ+;V-_$H@//O6N"6RPD=PLM_=LU. MJ[0!9%;4?CD%-8+91EF>[P$TLE* ML!W*)&-G)8,)"H2G<>6TL1))ZN6"4=J0E]_Q(L?=L2EP78D&]0(8V+83#W]O.O;8&YI;)S!=KC JVO0NF(N&@JF@1[V09B# J ,[O9#) ME0X+N'>Q?&@H%A8AZN4QL*SXK59L=I)'@P@Q"*S)&OX$XFP?_@02;]^[U#XV MG4SBM*D7Y )%9\>[:%&.UV>NX#CPO0OJ4T-!<6A1+YB]A8/]*A#=Y*@RI#. M'8K"=%UAXZR$.M5B3FSJHDN-$;"#+Q;T NSAC=P(].L[/WX7\?"["['O^/5= M@$)5OD_1/<53W UMO%[?0Q1Q/0B0\Q@&43(_O(,>H0GS$F.Q2I/^F;)MIW-= M#!)1S6B'ZD,PHQP'5E5ASY^&@1^8'B&&)?0RG"Z6BZ#\R@1H)HI[!)?Q8X8, M&60!=#% Q)B?Q5PSKK.LH6N(@+/RAB%") /WH!R'+\P_D7S860[*AWW?BYL;L@2>%Q2#M237J%9#EI?/8?D4+,P#9$UIH@6V('3_S\=OT+ M^ZSQ[.93=$2RBY6PAO#2AEI-51$%%95E2J!FPMPG:&9.JH>FOZY*ABV!]R^X M1K%X-B&5 NHH/^S*\4EH/R2!A2?@A<"/B_.2,FY6X)-Z]?O:BAC67*T06"55 M>],65^3XU!7+;OW\^?/'LXNS<^/$. R-/\Q&WT9W#Z.Y<3V;WI*4L<5L,%S, MC=_&BU^,X<-\,;T=S>9QJPP2!EP:*1K&?R>(_(^"%#(&;W@)9?PF/562V^OM M#8 K9&[7CL5\4H,#JU<:F8@PTI)S'*(Z6B>K)!*?O&7181;WX\!JD$0FI%][ M.;!):5<./K#>K^#3J05#O,CM8E$D'PZ22+[XXV%>8'OV!]5F@Y"Z$ 9GD5;) MS?&(P4WR@^K#4VEN$J15\#_ _GJ+-63ZK7N";Z4(O@8_!K MTF\7 &T<+^)(#9?FHK9+DXYO9!!0ZLPD+)L!HE%Q+&$)T<;TK,R3O:.7+; " M+&9G$U7"F.-O_65\@,US>]KJO"=S_!Y!.[2"*4K.M1B^$1U,+[>H7;&FACN= M8PL\%T<)@J=82PEDU"-P:_#9Q8K_$?!Y7&'_Z8X#W:C1^)I"P] M5 A%JP[#U&A_U:$2W;=<1NPG6YVZ6CT% BCP[5C*K2"!\ M:WJ["98[%C]S.1%KIGIY8>E%NJ*(4:'>"6X\9:O.U4 MXZQ3%X"1'S@;+DA5.^5T7A[D;.5,(;O>DMEH$^RL?A$+DF^YT>0>"&X1_ MBE/<20H?9HT]]NX1>')@Z/\.3%0INOK]JHY<]BSR^HSJ057N8+#/Y9PN+Q$P MK?5TF08LIL\>QG@!+P$I*N)@9@)[0 NG4)2EM9YUN3;2G;JTQBK-LD"P>EL MV%%DCA#O8Z(P\@[KEAX'7I<;(=V: QP&'$.<=<^5ARA!T%\ZP*8RJ$Y&R:?: MX=<]6D8&+R.#F)'!["TNVU=&^Z*;VHBRS/3 M6[%B_YG?7GOHK4"N0EE00T6E7S4(O%&U)\?+C@,_52^M8YYLP@V3GX7?5/(M/*E1+A&?_"8JIGYIT$B/ MM M?-.9)'-$Y[VH1VG?_N@.J[?/K&/4,?VGAQ=%<-7+OL[V\[KAJ;;:\MD!; M]-J"3+RMSV!;@MY;T$V39,BW*,A;%.0M"O(6!7F+@AR)6?@6!='$A'R+@KQ% M0=ZB(&]1$"V4Z"T*\A8%.?8H""F;0_XEA-DWP:3Z.6RP=V5,;[[-IHOXI?,5(8GYM8:V*$+IDO"#I']$02YW0S, *XAVT^45> R2LK:\!Y6%6^N5@R,ERNST M%:97_3(>%3!>K$UO 39;B$RT&V^VIH.B)PJC7$:2$PW\I'#LOTG:<_HL3T*9 M0_(>LQ.=]\1:A^-I$%6I.5U*%:6[89!Z;?L%8!<)8Q-$+#@4Q.8^O5/52'7L MI[>IE%63*J:HES5]S:P*[@==$#C-ED88N^1(AHVJ"Y^N:0DV 1I MYCBG[S0Q9PX/4!?WM\8Z2".GASGQ&R /@ -[\ 00=I6CM\3!%OI., 0HB)]M M(;MN\B5EJDCWH,OE)\D9)$WG$00=V&^PU A'?*@9CC@Q]FB<8+_@A"!B'#!Y M"U>T3M6UXYF>Y9CNV/.Q-414@1.>8$*_DG $DS[UFV'TK-82H$/UGRA02L'8 M7V T?/I/W(A#NT-H%&2H4/+\BZ]M\D"]VCS,TS=L[R#>DP0#"96M=(DD=#$K MLNI0R0CU$L;(XSW-> MCS#6WAKM/9R>5&RR6>328S>RRY*3 INXL]B3=4'Z"ZD91$HEDKN1CC?UH@^4 M Y<^!M7%4&II6J5G.'VP[EC5#A.P@ L\*BU5H?,1=?$?CT'ALGP[5FV+T%_ M:VP2]*5NN2%UL(U@ MN%K7-)R:CM>[)2+S;6CT[-X!XYIJ&M>CSUHO6)7\.BJMZM;X$ARO M_R#IV9&IV+%97W0*.K2^1 ?L7]6T",@WYMLK,;]RY+9L?A7Z[E_3NH_$M\PB MY0O8G@%]'2HV'[!_M=(AX-Z<;\>H:PU.$AN.UK^6=1^5[YQIQZAB38X/FP[7 MOY+I$-%ORC7-+;%\.N/ADW1B5K%Y_]K2?8A>G@OJ[T(?]#>ZVA7E,ONTFT)3 M;T801UBE(P9(WX3^6"[,=CT8SXQO@\G#R+@=#>8/LU%Z]7F/@9%!P8">81I[ M-(P(#Z7WH/?<&_@^B&Z13QSST7&3*U(11^T,YS# '<3VH MQ56;*D<>F7K*T=]K+O<6K5A37?)H)12V2HQE(C60XU$7M& $P+I=:-^*7KP5 MO7A512]NH0=VMR;Z#H+KT+/Y-1!8P+JLUUT7/6#1KUZ,A^(;TF5+?MP:%CP> MJ!?I:RQ6PCA=>"M64O8;]G_^X@"$N;K>3< 3<,6\8FYC1?8:0_9].<9(+ 0=>EWO6W0N; MS0/UV1,#RX)A?/:3O$X@G1;QJ9P6,1@.IP\D#V(V&H[&WP:7DY$FU=Y3>J," MP!-H>D3@2:C&6QVX(%;_7;*WGAZ\OD?0#JU@BN) %: $9-A@>N4D-!1<^F@V MG50USY$GN!P"B8!^I%4!JT%HI$K7"MRG4=%-5NKT"2 ?K]QXX#^!%5!]8 Z< MZH"%D):DR9T,&C0P%;(3ENRJ9,X>YFF5RRK>7*TW*DLFO>"UY.JFZZ-IEXX; MF;5#/#C)+D=M[ 6FMR*UN!,_ MU;:=&(/,H[O2OMO?RK[;^&XQN+L9$Y=M,)^/XG>\]H,9F=$T<>FN"6>QJ)^B MLNQ;3^V-"JO;_I)4J MM3B9%'7#ZANPV9CW\!F@^<['N^S$93.; ZN+G2_-;@Y-ZEWYI\0#5-)UV]S!?(M %!B7^GH0RFBRM14VD+U\H*Q*F7 MRS#T [@!: ;<*"+EKYTM7T3<%D=@$(E*BTNG>L&]>2<_JG?")NS!!\O0G3A+ M9BT1H:9',(FY.B!&I6:'3QQBHY*+\G,Y::;+,6+[TDPI/!Y)9NIH)N6DHJU% M7K;,CG0Y5NQ VDR:CT?^=X!U=%S52)>GF15*U=[S0$0=>A<^2 MPX,3$*(!ZA7WJ11$SB.AD*-^NA',P!-TG_ FDB>#*XV*-KH(AJU=6;%4$*/FPL \P$8CV<_G M%O!,;&DP[G,PX/2J?2:T97"H422"!(<'S]\"RUDZP&;>V># :K!75"K4GO]L M,KK))IF ( #(3Y5C]+)U$)AZM^;NPSD!9J:6B#94O10)*5*:6R)*5 \UWN.Q M_JIV:HBL,G4+,Y&+OH?*L-%M\CG6P1, M>^I]PXL4T><9WJ;/&2(6;ZY+!%U:O.(D:BW:%-F9Y-H_89<7V-MXY7-=#E7D=^Z*TG33(3W M"%H V/XUIIM0MD>=(3L.?.]"8[P;)"TT#DWJ#\"&<+-Q@NC8ZQZ@Z(ZB9X%+ MZ-GD7N=-:"(3[Q9 _DSLY_*9V'!Z>SM>I"_]9(8SHO$,K,G&842U>==IK(>; M6UT TN0"W?%?=Z0R_^U*HP9Q4$&]T^)*8_&>&3W#E0NIBP_0^(Z=1CFL^Q5^ M^N@ZJSC+]G)W1]Y*I)7<$F^FUXE-]2)639&>PHHQY"YFU^?]Q83D6&U(PDG3,2TS*_'4M\IH"VFJRS M" &JJ5OZ50,OA*H%.5ZJ3:.\Q3S!RQ>3GX7?5?L*# 5(&5K 5A%+XQV!S=+\ M[ZIMR2J6YK%5;Y&\N57JW*IDR]]A-\*!]C5$0QBE'U@$N7U%7XH=+]I0]600 MM^5%*5)O#LX#:'V_-+$VD%)(>->*#-=YN-F8:#==#M=D\OMC+YGI=R%AT'0Y M7YLH.LS$UB0&)YW(VI#G9V/9.XB7NP/, MO;F+'JY^-I$M5NNIAX[T+DAMOI(7)H-= MYN7Y*/"^P+;F=!L?-T+O"4\X8,^@ZV*;GC1J6SUK(J&-9]2-4O?,3W%4IG=M+PY_](OV$2A[D><_ MC*Y_B_BN3->+PVN3AO&*=;W(\Q]&US&WE\!1J>X4#+1)7GG%&D]A^P^C]'ON M_P:[,@.P?SU="W=5#LNCWRY4^[-R['Z;-"7^:#Q3?B@W MN<[JIMM<^X$F6-[?TF^62>/W SGI^DXU::GU<&.A.VK'OA\>3%K9.:09;D=O MR74_?S23V ^S5R7>8XB K]]&)8?<#Q1LT'>7DA.9KJF?AR)1F6?K:^1V?I3( M[3R,:60&?YZ\N(5:'8U;VH)XA1CR6F(KI>/-M_1\L9/? M]MR.U_!N YT)4CIU1,9#B[D"VJTDH\W6A3L Y@ ].1:@8[V/X45D^PL8F&[V M]R'T@SL8_ Z"&;#@RG/^#5@9*QV.=S0V22U]ZI!Q/XI*[B_U)U\1.-:;(WTC M<306EU[*R^"F9AI=FZG) <7H!2#+\<'^)#WBS=C#YJKG.U8G!UU20^OR-H-F M:7]2/'QE.ILIB-B+HG+&T^41"CVUD\,X'57RL9K21_X\3%Y3RE#*,@*Z'+!W MI?RI=Z7LB',]A-;RU9)()@[!Y,'#C*1%B2+,@7T5DK*OU)LL;77:N];\W(?6 MM,4=S=:K;(TMY\FQ@6?[,7F,]8;7H'?)?^YSO>!1KIE48[3N38>X'0OSY3RB #@ MELDYU)OFI@)W,%K_*M1+M+YSOO5QJD=>? S1+EH+YR (XD, C";Y(C:/]@[E MP+.C9,8#T7'LA';NUTZ__6M.+U'[%CFD27XHT5Z _#CY=;^GDF55.B?T0[EF M?)03^LMT<8L+) MSRS Z)6?R65[[I7C/!7J[;H]0MS,R!*41DF-5.6A\KS;-_RF^)M/OW[8C\;, M16$!ZI):R%")=,-@H=\=5S_^>B[&51J@+N?M EREH=^EKEZ(ZFH94)=39R%= M+:/?)5<%=94&J,MQJ!!7^]35C[]^%%T!RH"Z'-,)K0!E]+ODJN!N10/4Y7A) MB*O][E:"ZRH-4)?S$2&N=K"NMNX E?S>"B=HHDM&9R4A5!,W[W\<:9YED1IR M%76Z)+DNR+XR=[<8__7 LW\')JL&K%0/VEF(=23.I5"SLX04]PSJ"W@)HBB- ME'A%.M#.4I61K@B!F@F7=J:51IV'IK\F-$@0G2L=./9^>E]S8?YHOI[6AF#*=WP]'=8A;=II\KC9;FJ"1O MUO+"I2S@GE[BNT?0#JU@BI)L4L9+G'0PO:*E?+:GC_71*5'S#&*""SG_2+"A MQTLK8#6(FE:I4H'[-"HZNL$-GP$:>S9>@- N'9)]99L'K3J0*J0Q^TO6/$IZ MN#F?#.V0K//#HW^5 A!KIMJTEI*$&$D=G7\#%Y#'_T+/L:)E<>PMD1DC00D1I5F6F3!4>C'LD MRFVAP48OH8QH$PS9Z^,<(JNG)M>:J:!:22KI7Q!%@G4 M3)!STP7^##P!+P1W(.!Z?PQ8U5:6K$[F+OK12=),2 /+@J$78$0MX#R1180K M)S:X:CNMB:C85.DF+=\'05PZB"^F,IQJTZZ1?,KDJ)=%B9!)108BKX':%,1J M4OB1X]=3^;%$VSVVS/ 7YHI9187?1-ME44[$.9IZK%"2CR-1O"L6H+;+'97O M/$K4YXK-XUDZ UN( L=;26>)?2IGBCNX4Q&]U/9XOQW8TNKZH4:,V\ M^W*Y2WX4?#]%O"<5QGE@!O$]\M#'&NG["4:\F[D5;?3*/6L@TIP5SZ=9,_LP M08[_^$D>1B.O6$@G<\+)D]+'\R.O)WF-JS-O26L]VF9<"6B5K.8WS5:KZ$ 7 MJXTK$5FB-#A<)JH#7<>.L^J(]AD-(<++,[;M[XCA$N')3P5DPZLV$&1EPR%%O5PXFV MCB$E(2)*F'MJ#D9U[EE3L17(T4P@-PCZ_CV"2R=@B",'H4O=JKK"R!&CF2CF MP,7=K6Z AQ=R=^#9 QL;R(X?G<@]@=$+J:W+/,P1;*Q+B:S:%H\@G9K)=K\Y MCST++]83K(55GG@64I<27'6E1B5*-Q&1(M+8]X%Y7/G3KJJ1-J^$U!51RC MIL"J"-1,B%=@BX#E\)Y8RH/T+Z"6HS%Y9C^Y=5R&*= CV82F3CF MH^-BEH(*L= ^Y=-RQ$:&E&:">@&0OO9(<=R](CG_N?^A=%RX.5 BF8BX%MW MRO:5EL,GPEL&XV)$\C7Y#WF?]Q__'U!+ P04 " #K@859,O',BDYS % MI08 % &%G>"TR,#(T,3 S,5]L86(N>&UL[;W]]?V29Q[3FY1$K7FBR0J)-=)WM:MU&@(2F,/9YB9H3[RUS]\S >& V P MGPW*J3HG7I'=C>YF=P-H-!K_]7]>=CYZPE'LA<%_?_7A_;=?(1RXX<8+'O[[ MJT.R/?O#5__G3__C/_[K?YZ=_>U\>8TVH7O8X2!!;H2=!&_0LY<\HG6XWSL! MNL%1Y/D^.H^\S0-&Z,.W[__P_MOW/_Z SL[^Q&B<.S'!"0/$B'U\_R'[XB(E M%P9_1!\^?O/#-Q^__?@]^OT?O__XQQ\^HKN;#.Z&L+;UZ@!]+_CUC_1_[LEX MB(@8Q']\B;W__NHQ2?9__.:;Y^?G]\_?O0^C!X+^[8=O_G9SO7(?\? M7)-_E7C%+PD.-GB3<4MI:'Y*-@3[Z2GAG'3HEHCZU)K#J*P!Y^'EC#K2AV^Y M1?XO\L$_+E-?GP:;69!XR>L\V(;1COG"]#Y.(L=-,C), $;'$.V;$H\4>QJ5 M&74B-Z-._EDC>PKQC1L2Y]TG9SY7,4??1N&N"6\I%Z$YSC_\>U\F4TF@",?A M(7)QDY\SB[=LM);*YLP1]R:(-*SCX.SSZJL_9:C("38DZ%-DY!78[__KFV*P M_@4K_4 ]"T1P$4=& K92'A,'H<+$63S<.O$]$^<0GSTXSI[-0=]@/XFS3Y@S M,4=*/_C'BOR$F'*W=NZ+^),*K@(:WTGT[%*7D$,,Y@ R.]&Q4+&*' A]86#_ M=UB[3LA:"E^/Q_2XQDNF*#PG_XSKA!, +3#B"MM20\ZA8(WYB V=;5!0Q&"M ML6IC[ONSZ!B[[Q_"IV\VV./&3/Y1V##Y(Y]4UH3BD0#5K\>W5Q6+U$J/OQO5 M-N6#JR=>"@-DB+VR.J )_N7@1$0(_W6)]V%TO'[60L(:IH+Q8QL] @,S5RD? M:G/(P1&'AS"-.QQY(5GU;BY)B-2(=@0':Q92IH^-H@0$9A(2+M0&P8')-F*# M*+@%46T0]H><;",GB#VZ\ZH-=550X$E8P7IE0CZ"@YN\:WY ME>?CV\/N'D<2N:H@, :A8C4SA./O1S< .0.5'S[-AE XQ ''_\&7^,&C^9L@ MN75VLOE-#@;YP\M9+O_X91@@ Y QH3*" A918,"9;3C>!S/B>>"&$0F8+*/( M]K(7X2%(HM>+<*.VZ1HL2!,W$JAL\5H4( ]-,9-(^PH+*3\-8Q-R%C,K$#\;O3?O3IXY9=F4PB% M&?V'I=63_MUC&*BS?540F!]8Q6KV(Q]_/_H/+6>@\F,S,,3@ /8?*^P>(F)N M'S[>K[VD4NLD!X'YP56L9C_X\?>C_^!R!BH_./L.A5OTX>.[^Z]1AC7FK[Z. M'%HTOGK=W8%+)W%2QC1I?3DX[(F) M3H3CHQ(9+-@9B9H9]>%(CD,+29S,E&#J!:(+)\$/8?2J/0D7H*"K!BH,5PL' MT00%:;Q2ALO&6P(! M,EX)#RH38* H@QW?!&8['#V0J?=3%#XGCQ?A;N\$ZCBF@(8T":T 9=.0@@*9 MB(87E:ED*(CCH!0)(&P\8M^O,Y4R$&C0D+![%#,$"*B046%!&3$H)-R/3P;> MT5J6T/UU]>@012P.";V<3E, ZMV!%@ETPV4@SM&V2X,!M?FJ94FY!6.8B*%. M$$=& C;X:@I M.%?!QO\\F>L#IT5.% 'D3-]Y!-E("@WD'&A- \. MC!@T(N#PICX,^P/>I;CR8M?Q_XZ=Z(I\(MM!*"%A;U(H&#^^2'$$!G:/0LJ' M^AH%!T<4'C$$"ZX)#2;"$(?^/)E4L*R^_*8&!2H&J&$]+PQ0P(U?)*!EI%HP MD*:,1?NPX#+<&%(,'L?YY3RS2%Z"M2&62YB71W,!$#B>5SBI#8?I]4F[8OI M8@Q@[E/"Q(8Q[CNRO>K1]S!F+64R,^72EZ.;KV3TRF^=PR *!&BD/3([2C,; M>M]GA_,^)(I.9K70<&UM:@00>]LH0$$:W&AYJ<[UJ=HG(OU:+Z_GE M=$W^6*W)?VYFM^L56ERAV71Y.[_]M((UJ"5^PL$!7Y$?Z2(,F%!_]9+'BT.< M$(&CV8OK'V@>9!K'F/S?9NV\*%34BA*<(7807#32%F1 #+@UGQ7C3BDAJDZ4 MT>*M5#-J$Y330QE!>K]LH$!?::,YC@:@%E?]"T30X]#W-JR+[3C2/>'H/AQ+ MON7LY]GMYQEPJ+T(XV2Q3:52R'P$ Q<>I]GC(%;VUS5$!FQ9VDB\4AM3(TR8UJ8-6)/4O#/D"4K16;OJ,@&44H#N@=J+ MF ^"F$Y93,PI ,]GBSVF_ 0/?$-_'58J&K60<+ZE85QT) D8B-Y3M?-= M?']7:?1BC'C400-7E@'R@@,199$'IW.\#2/, MX=;."XYG+V2U$48;+W"B5];(G>C I;FCD"U0V(4@'.N/2P8:$?K(95!%5H]M M!AD.\.AG0'F4,_)U,2,7PZ)B7'3/!LY"*1N:IMZ%P?D#"Q-4'A]E# "OL@!4 MRU=KY[.KQ7*&TK_6T[]IY"DM"P@ "C.*_ MMSBIS;( 6;,0N3M)9QX)L [TQ M%^%'XCW>$RY8)SPNML01[V@+BC"8)DGDW1\2^KS9.KQSHOI:K-ZH ^Q* MQT39H$@8E1TC"N.B8F QZ%D^&I(NYA-TB>\35"!/4$[X M;!M&9Y3T!'URO" /4\Z6Q $A_O#0-'3L,3WI&4Y=-,H>@@@[OOMD8-^A=V19N0E]WXEBM"?"Q!1MX*,R@X7DX(* MN/"EYQ\2O#&4.8>VQXV/!- Y<@IJA2N7>#%RYA3#.C_02Y)^:Z4O_!5[#X^$ MN2F1VGE(7UU9;"L-\FK6>,W)P'E/6Y%%MVI* \3?VC%9,=^,#$KII"_NT'U6 MM15B[J/VG"+UI8;9_--/M$/#].?9C*[3XO%ZMI[>79)E]&JZL6[$V MI&&_$RM7N(T(6.V^ND580]^U8;'(NJ[/K:E8%Y?J!#:(3"H2-L4F/8\]K2R ,[@]BV[H MRQM+=C[]2"_NB.HB]%C'05EO\$OOR=O@8%-L[K!+MFS*_( 9*N@!D;%H1R=% MM7A01T:&C,G.CH1&[CGVI)1C2$F MX%I+>42/QS(]\AUXD<2.#@RVJ1(+/7@ MLY_ET8>ZR* M1Y](,4,%;-_10+12\PX#/)C6'<:,F79P/)]>3V\O:'Y@-EL#5X_2MF=)7&-S MQT!PUB5G5[2C,@2(Q%68*'M5\%\U8R/ M &M6T:V6#L%V2%-@TV]#^S?QZ\)\>G=;G3 MY,*)HE>R??K9\=5=(,UP 3<>380K[3Q,$&&V'N:<5>V.KL9I12C[AX ^04Z" M,@J(D8#>>_0A)MM]X (=^I[X$T[+WA5"ER @[X-7&"W? <^_!KKW?32^Y(9Q M#@%LQC;Q6G\-O8[7-26!/ ..QUFGN6YX(%PLL8N)B]_[M(Y5_MJY&0K@JLU ME-+B30,/LX:K9:BZE$M14('#JJ^?CY45ZB)4) @%WJ-*UI><+5AK'<8( M$S*S;"Q8.;%TZT,LLJ=97387LN"NX.E39]"7AD@ M\'T^*=N5FWDE*+@[=A(V%!=XCW(#-MRW-6?>31,:-;8]SE+0F'>^(@R;2#!^ M"L\D8V--RJXV50>?HC-+S=F4CZMYN=(*GS-RM\5Z>HUL2A_>1;1W:_)Z1_A, MIL&&)FOVZ85=A:!Z%#@W-!%%]$H=/(B3UC-4,:@,98(8$LN:Y6ALV0B^">LD MU3Z7"A=2@6_'/H7AYMGS51(77P.^4W/$8NF1FO0[F!=J2H-7'U%)OX9^FJ8C MER,EI!/"E'?O8S[W$(?*'RNK,5$S5,@4MKEHY=QV/1Y0TMN4,4F&.4/-=TBT M1\&[XNW#C !T<_M^A'12(<'#_"7>8K*:V^3M47.I%/+K$.!\J5X,T8/4T"!^ M4\=.M2XX11"ZE8MN ^PA[<5)>-?UKD[A/+PP0__P[7;#_'W(O)DDU()QS)U1A[?#=H*2#UB8:H@SG()GVRGK5?Z_8+J#:FCR3N M[NC)![T^X--W3O'O8A114K3QS2'&Z!!L<.2S"@,6HOD'J'AJQ:>C3_BC7 S M]);0GNR@-@\#GP]4)P(!,X#:U)\5&3]MHMJB1)\VPV=#9N_: M<^X]G[?A"S;L:L1CZ).('=,,3/):4QAKC@[G:$U%%%W1%!?$69LQ5S%" 3W/ M"":O]M3:=A5O/CV?7\_7\]D*36\OT6J]N/CS3XOKR]ER]3LT^\OG^?KOUOB> M61FZ#L$*_S(H2%=#0_N0656W@&!A?7IC<;)3)L%;["CWNW->:5F56:'?,3!\ MB9^PX-;O/1 6^JSJL6504/:OEZ(8Z, M7PX,9?\Z;F360^&1;"Z ]X)6HM0^B#[2KJDA^^F&SU0(L#+<3*#7YG6X552[ M"G%5HM55XA[C65.**V?,N!8W1[LV0#55@2:6/<[<9S[IE>H#K=FY"?S3AW]-O5.$M<)!J\PK?+0 A';38T[T MGEI V^.LM1(4 %9.1O426F+=-38-;5J!#EN*Z< !^LFI^5'VD0NQ>#]'$0<\$U%8VD6-S?S]0U9 MLO#SF(O%[7I^^VEV>T%/:-[%&).)*<$Q^@,3]D?@1HV-CT+M//QL=MQIV0%G MXS,_$>%WV8&F[8\/-Y?2NI/,NR@M0&2RZ)H)22$A;P,I&2]? JJ =W]4? A MN1R3E82F/4@9\ 3-X_@ WG*TC1@Q%V/O1.B)(J#_Y]OW'[XMGC=!9^B';[^= M?/OMMUE?8^>0/(81?2GR?Z,@S#[UF )XJ5K1/AA^B9;V)=4VXJJ 6='L5]U> MZP@&NHFOMIM4J6&O3<[23 "IF_Q0H/.7##Y,_?/S#Y.,??BQ[#/GF MN\D/__GCY,.WWS/O(7]^_/[CY(>/W\H:B3L)6KA)2#N-?_=A@JC),ZS_UPD. M3O2:?SA!!'./W<1[POXK\#'L9L.ZL3K^G>-MYL&%L_?(;E#X 52G5@:(@ >S MQF*53FAKL6".:@W9JAYTYHB(8B(O0"GN!(G.#WU^VX-\>X)Y1N1S.2ZL4RUQ MXG@!WF0OF4U=][ [^$Z"-Y=XZ[F>:C]E@@CG5.9BB4Y5CP7B5*9L21K 'ZC-ZDR].?OI@I&LU]PP3LCR\./DXP]DE?>'']AZC2SP M_O##Y/?_F:\&3W)A5S@\N]$D>1N=/NM^_)Q]M3:I&1706KPV A]5Z#4A 56W MUYQ'60EWDE.MD5X7>4U-?\5GVXI3>&H9>*O4N?=O@J2>\3$K9EXHT3 MJ79EWLTR[I9DVKMGV($/:HU%XN>U]B75Z^X_U1]0*]"LJ$/0BM3D"AYTQ8*& M*<,K=_94-#21I5+F8.DMN_)A PE-BX@]Q;1AR^/L^2^CDPHULBTG6'7BJ0^U M5)@6G'/I6:L_^B+X*(P0I\ W:L4[?%8=A;66M)+VIP]>;D+?=Z*X2/X#EU24 M9>5/>$[SHPUCZB&Z!:)57-98J]:;*Z9A] M[L-/*!MH(4.PRVW*8M2Y#(>VQEU$=HQ=Q8JCY0[2E%W$TTL#YA[U+[[78MGE M*#4ONM>@6.,R]0]WJ_QF85"S ^<\3>0J>Y"-M4@-]TI&F%94+#79)1F@0=R(MAA4>9K(;TH!#>Y3ACJ'L2;9M@EK+8^?V MIR*.=N^CA+;(/=2['@6H'6ZAW2'(7,*^0EIS0>S;YU3$J-_DZ%$L\HB:[8T. MW@[?J-\ R!W$GFU->Y$LW="42J)2Z1B+)B5497A+:NAD0BA+Z41@^(JZ*C>U MA74<&-@K6@M1<@KH.AJR>Z(W=A?;%I=;C7 AJVT:"%9,T=-Y\A]^!7MQ9>%9?2XR%Y)6M(4!NV/^XJGB=0V. M!2:I$T9JBC($6!-4E56WQ6@2;+K)JK>GH#NM9<8?5KCN>6J-2 M =MSEU-M1G)(*^YL:@VGYJYSA39UCM[^CFPYK;>M87WU8A8_'G;NS"B\[=X7VH=TLZFM,]V MZ!,N'N8!67SBV+S+7#OB-MV+ZZ(>_5VZ-I0MN7_7GG6C.WL3E ^ TA$JU_C* M@Z!LE&&W7GL<>>%F%FBON0^JKG.'_.D.?>3 Y5PE3I38*^DX\=+P%-NJHVNC M\VH[#JE-CW%'/XLV OQ3BOJXC)X@=ERT(@@W[RV8ZW!&.)L]?672># M53:\&6=HN, QIFK%D#3&N"#!;CS!*NYJT+@GY0)E;""!#]:-0> $459RS'O& M#SIFB".!]P$"U'JF4C=3:2*H$+YST'3SRR'FCQ2L0\6!"UN>W3LQWE 5$OTQ MYI>8[+5B+\$K'#UY+KUN0M9Z1#?A0\"HZ-KO#3\LY,G;."HM']X-.R;0^=\8 M0DF.$/-AZ4)2UQ67C7[&AD?B^!.4968E?RRHVHP.60 M6[ I3P1)'!]-(S*]/[""0'3_6@H0=\XK^WCZ[$2;"4I'FJ!LK)B&%LX0>)/4 M?A4E"#GP#2>#;6U_HK% %N[3$);]B'3%2S,-D>S5LJGPYO2N8OX&" ]RY^4@ M5\3!"7*V9#%"-Y=;["4'\#OS_:FC0P28H "KLY$6K'AZ\'T])>NY?SV>=_V>3^QL) &T4TC4"6+806.(]T?8CE;X2&G7*U.,!>[J)4!6_UB'! M>7$]5PH3%1 1QTRW&K8\R]!6//%F-?&Y#!^Z8$,CC?9JM0FBG>ZDOFQ=CV6= M0VEO+M=ZU*#WL?MQ*:V *I\:KW#$; H?7;918L>E]^1M<+")A1M4%T[\J-"$ M&APN3M2)($8'%2Q(3- S4S&F'+S\0![YB^" ^W]#8>A7:)/A0,^?^<5^RM:5 M'S['YOT7)"@6W''7B*+HME"!AVZRH&"H76^%B^GJ)W1UO?CK"M;6;G%"Y;J+ M0FKZF_/7SV0^F0>+/8[(UB]XF-('NOC;#WH+;$,(SB[;BRU::W,J(#;LKSCE)#7O UR@FB@B+ZDM&$OI+=FQ8*UT57R\4-6MS-EM/U_/83 MFEZLYS^SMTXLJFNA)].!Z_F8**!X]6L=]N/VPPQE2?U*SZI3UJST- Y\G4JO M@M35IN2#H4J--/WZ9 ,5G$:C7*-!7MU,/Z=_N52=>T&=8:Y$)Q\.-NP1_="+ MR/@2\__.@ZGK1@>J&E[_3I2)O2=:)$^TJ=!^4R)PH:J=N&(0:D8!)+RT8;%B MYAD1]"XC\S4M-TDIY=,)OH?M1?B+1WH4Q>IKG%1@+Q.8[-F]X FG M(<"":W[&9Z[V':N:GYQ:=#C:^/Q34O8%G0QM?F1I7_UE/G5?4S^?<984 BM@ M >_)Z)@O76R1 <+<1%%S4KTZDB]T&# MY]-;S%C%?$V$8"!VV/HEWI.%IJ<+ M[V40P%2^A-52^E[X'B9E7V&@FJ870(!#=5_%D<1^]2U(&/=0TB>D?9LAT[ MD=,JL#Z&\'&U@<0P"0<\"(4?_*XW7J8!VIG#B1Q[@:O8Y M:GC@G@ Z(2H7^67 <+?OU=PHKLRG"'E^/<49:JXT3XZU$L>V!'6^A4NOG-:< MMC4A8%-BNDY,?5):A6U)0EK/GFDRNL@RI&3L.9#J++*0@A9.C=B4Q&X+^)YS M[_FVGB"%AR")BTQ[DUQ]!=4FIU2+5GM&=(1GB2.J&&MP'L3PA7,@\%FN@Y2Y M.%&].$#>=4&;E)&X\5;PXQ F9Q".VQ#76AH:"3;Y6*ZC>Y93HEGA>#7^F M#IB10<^$#LH(3?@>TT)7;"IV+I\-VS')K$Y7R$41B2Y)8XILDP_JQ*M9@$HP M+?$\-6O&"T^VS1-*HH9,Z'3QM@:B=9/YICFWY[:;^;C4-/*N&B>/KW+$7D4^@H%\AYYR5+/=P M.5%+R#IW-1#;P&TU5&QRWUHVF[IQ3M#*.S^]:>'XA;[Y7'@F3XYGD\37U=A1&4N9+S$]ZJE;V,J%DV:9@)KITX]"3LF M4!,>C:91"BZXZ 3EE,^V871&:=LWG;:37IQ4G9*4,8U=<7V< IE;I\$FBU"+ M[8T3_8K9FVV-IU@#.O;,M,9"ZR;<6B)6S+N&7)I,O_1P(Z-%K;R@-MHL;/9. M7B\**$_'-GOT@I@&0 T!B^;B6C&UT[ 2VXX9 MN(8]H\DWHS%!C,J$.7!.R+YYM[',XI2[SX7=4W0F*ZZ5%<9!^;/8-SAY##?S M8G%OJB8&FSLPCVPFK !!#Y'CT'7WF!$[@]G!YK"5GGJ@9B&[BLAHI- MKEO+9E,7S@F>TNEQ3B;/8RAY-J-&!"@G> ME_3BR/Q(C@'J0SJ6U/Y#'&81;4CXCUZ1XID.:YRHM81N?T]V. \OS"T^?/O= M!^8:Y(-R:CMO,LD>,%X5#]F1N7>QI570CZ%/-/ZP=EYP3)\1/Q*[%XKC.U6/ MBJ >UP.YP=QQ$[H'.K2L,6%O?,N:]AR")+=G+]CZX3,_!HJ%AJL.':;Z@")! M>R[&HIV_,+T>XVW>#[LDE86NX724GXY=L=,QX<%-1AFM1+70E?QBBP3RB-%' M= "@A?IPJA%0>1W+D;2MN^1:\OZVWG=FS9B*7LF?; M7$A;LF>S[1:[)!;-7ES6O6=)UG.+@(I-_Y^F\9\<'[,^)-E3O_2+:; I?R! M*K0YR$APSCZ@XL2H,, P(.%C,#DJ3L='HE-A-A:B@]%'$"@!_FXA$NA,4#$$ M_Y(>-J,RKJ]D%?\IN]K>+GZ:WGV9H.5W/$/\W^>*6O7$'&\0Z M2<[?4ZU>?77] UU$B3KF>E?\*&,S 1?Z8-0M1L5Q.0 )F! B2I]+[2%@3M)7 MHY'D9OP$Y6P=!6S.&? :T(J?X7:V)AJ;72QGT]7L:S2_Y?\B_^ /C$YO+_D_ M9G_Y//]Y>DU?'SWAB#S$3W&R\;+W\'=ZT6S8X#1L@-FS$# +M#GR0;2C"@P3 M-".?D@7=W6PY7UR.(?XJ<:+$(@67>]&D8+E_3-Z;S/=5:?$VPD MV89++W;],#Y$N*:BI3M9V*#9ATJ.XV87FF"ALSO3TNB)*-V)T/L]K^TB(5-: M"U.0MZ0!.5V?KR M*BSZ*;('PNH:DW6B"!E"$&"TZD ,)%)WYK;@ HW@6;L\(3=XP%&54:38[ MWZ[1.IZCY_,LZFHVH%X.P_LR!GZ_=7#?L]/$AT_ MBYSS@#"Z8]S5K"B,L0%?:&TF8.G)5C-4F#=4=) M/]_=7<]NR$)_>HWR0EV\HB!2L3,V3]:.8)7.!G^*(')TA?";P@J\[0]S9\_@PV=T1GF>4MMNDFV?%7Y!->8U:S"NR)-N#S M?GTJI_048!^$89X-[(_SZLNUL]7%K M.:LQN%O.5G3E!K],ZZ2.(L>TQB_)N:^^7M'_,"?J5!J5]>9?DC%.S]640E3G M56$8>BE$&(@E>,6AZ$HQ'PP5HY42OG1 Q$8<>(MHL$0>28JBG)V<^SV\^S]$+OQ>)VO9S2PKV_ MSM<_H8O/J_7B9K:$/JC02U@W5YJC6VN;VKG-%-=&ZZR+HRDZO_ D?PAEQ/FE M-@795=H3<,:TJN*HEL*@H$"'!%LN4"_.<3& &@/LJ+^.)6F=RZ12Y,)6)_SD M^L;* \UD04T35U\" ^6,]0Q<2N MIO,E(H;U>89N9M/5Y^7,4INJFQUJ<.RR*FW$UR)88U=UL8OB((8D))+&C-2U M*_U64MGH+DOL8C+3W/NUD5<*";EE5C)>WAU7P( VP@H^JBT_+BX6G^E4O9Q= MS,B\?7X]Z_\4?ATY&]J-G3V%+?!6?P31&!OFU+Z%@-EI?@-4L%/^QCQ6S&S] MB-&FR-+3DVC7=[Q=C!ZQST^FG1U_4'E#XK"#"#<>;>F-7[)[=T5;@JC@X#V: MO3B[/?D7+2PAD!@EE%GZ%#,G5P+FM]H(\!$OCN^'SX1ZREF$-UZ"R/=PE0D] MJ)SI@9! _ 5Z@8AX8%+,VG.;%--%VM9M"K,;4<=5L8 M(TS(.E!CPT.8\&NN"Q 7>Q50MMB-MH8JP"UP'!JJVSH M@X:V5AHU$V4 )Y#N^VD/78\=(-3&Q'IPF)V]B0C95EX'"[9WKV>J>JDX1!M, MMML>K\++WK\#V@FW$.!B<7,SM^'(J>"]P>*Z#@GPH-A(G-*9L!8#YOC7@"5I ML_P4R=(E=#NQ+'046EL2!O2*"@[<1HU$FM&PPHW,A55X53T!:"S M3_1V[.*6MK68D?4*= ^+:_S@^#=.0GWQ6*JZH&Z("V>4C803C=$($<0(&W!6 M-3Z*BU)D5M!30K=K]=])4-N\K(@/[!6;/0YBMK9=8I\^XW$1QDG,>M:SSO+9 M(QQUJ9:.1 'WUKVHH[0%[T019J?> \O5)@SKQ<6?S\ZGJ]DEL?^;N]GMRH*; M,<:BGHNBUB:-NE(] 0?0*Z25!\A)VNT".IZK2:UB+\,?-LOIHI0P8I0G:"6\ MYI&_?&35+#B,ANR,$GGS#>/=D1;#@I8M9CL?#3AL$Y<&9\#$BF9H/?T;]$)+ MPGO]N:\.Q2HKJCGI5\R<*""[*-H?GG^9+=:)5$V.RDQ0(3/]YJ*5$_SU>$!Y?5/&)$=H BJB MN-:>I+67T4;_6N$'NM-=XGT8L9;C-=USE>" [7)K1"CUQU7 PC3$U3)333;, M/M'#6+2Q&W2UE5=]Y_*6-&!*XEH+F]7)-28 5CS7DM-J19T#4SO7%_^E?N5I]2CY MUVH]7;-/[>E+8C;Q]UIDV><3H_!![ 8Z!NZJ?.[$7+[93?@6>K)6Y M/&;.8XH,YT;-Q!,=R@P3Q+6:L%:Q1(9,;;! M]C5^A&UU!B:-5SS'@)OZ[D. MVG37C7](*<01&F M"2YHJ:6Y<$<%E?6(4&63IIS)BB,%7#KI9!VBOS!\BYRPBY@K]Q%O#CZK '7S M93!QP8@38=V2,NKDX_M7](##A\C9/Y+9UD=.A-7IK;'VB-56]+21Q#38Y,]D M&KEH*TJ@.\JV@A]M-)N2@=I_MN-3MBV5='>?%%W?&5GA[YP\[^Y;]*BR+Q;T MIR4Q,N3!(,)N2%;:_R*1P,VTXZ=DP=?91QRF&!:EAU MS$CJ5S-P^URHM2C0[R:G#DMVUUG7AJLP6CD^7F'W$#$'):&+&"'Q5K94,'*3 M[F0!C_I[4DFI#J C39@B@5Z8ULX1.>&S;1B=4=*HH(W*Q.US^A$4Y)04%%,% MQ3EM2SJ9\PYL-]BAYTB;1;"D#$9D'\Y2;W6AHCD9"_J=-Q19V@+=D 9L5_1& M3&H:I4^R=H(9*<0N#*;$$$_26N?@/:E!=.AM?G;L!7$2'?BU2+I$CC9$*TZ" MME1I3ZR[/$U4T^]2+=W3P0:H1\85U+TZ9._)/CEHOGKS?. M+V%TX3MQK%T4##0&4"W34,K*:YWZ'@"N%FH82:I]JYW[@^]$8HMN.G/N:-G? MOUA$X:.=^70XXG=YBU.'#3@A'Z$D3&AF*F#9JAUE@/8;C]F764-Q>F#[$(5Q MC%PGBE[I1[P'.<-S7**. [\"G0W.S[#IMUXNM(H-%(0)B@_WOV"R/T["(QI% M6_.'M*^PENWW:"K^B4AT=!NQ MSF$L.<$K4)^XL>PS#_\+]AHM-0%&F/ULQ6#IA]4.O$23;$3$AK1GE@31(4LY M,ZOY78SV1)9'UF! XM0ALTQBUT'N,G;LM4-15\>:N3I0!YH*OC][H8T)S Z, M^AT"?@_>IZID^_$^Z(/NS?L30.MR5]H(-4%\)"0.A=*Q[(E70+K#!,\]7A2P M3PDU.R+28ENT.1$;H:P2(N*"%:S%4S?QGDQ/Q?H@#!]]NJM%G@-L2Q4X"]B- M;:V/B+V"1.(3Q,BCE/X$92.,'E5,+AR-H:F8Z2/D1:1.IHT#66Y%;(E]D2^. M..2>4++FC.$V9.<>>,,4U#*BF!&Q(7HT$5<>*4PH $<%70ZQ:/B9K+_BZ;,3;7I=7C0>Q89HT:O"FBP\&@YAY2JD ME0Q5KZRV+$33**+N2?\]0<4PZ<*$#G3:JY*>-*>.9SOGQ=L==D)Q&SI)+A3\40; MDC:$LO:JD,>MYO2 @U1;AK5^E1-%0B<_2A>Z4*)1%!I$-60C=&!'JDPO"=%+ MFE_)'HFU)D@<]72CY\?N--A<>OZ!Q+6F\:$9-2M"0QL%**)"$U+0 :$YK_I8 M4.E=.&%%%"X[5$JIVKQWZELA][GPFU1XG*EH3U3$EAS 08 N61Y#?T.4-/OG M@:RL;L.DK@ES'1*@2QN)4_)<+0:,@QJP)&_P_=/B^G*V7/T.S?[R>;[^._0= MLR=O@X--?(E=GQBZV3Q2BP5YK\Q(H/*-,BT*T%TR YXDM\A2+)2AV1?(VTDF M!NQ-+N7>\39VK,]B^@Z T,MQL:7=',]?Z?]>D8 01J9KLT:4X-=E+027K\5LJ0)%>;D(*.HW!0GV!'C@VGK/NV3 MA&+.A37Q8T&K#"\.4428XI5##7,X]01LB!*F8LH#0QTV<"PP8T]KZ8P$2FED MA;L6>WH/(O/Z6C<5F5?=VN*54]>-#CB_O$Y?M6QX;;66@ U>:2JFXBIJ#3;T MI5,C]O372SD))-"PV2E[D-A))4Z//RSN?:1,+.A0[.QT)$]'J>&MZVO4M)U1 MYD5JUVEO7G&4"*9%_BK,BOSQC[P7]2>AH]#TQ8N/Q*Z!'=^0C)BG%J0%'-5T M##BIV(P(AKY00 @CX9L$D9?+<.=XQ[<4:V"!C*2.^=Q(5(#C&XF>DQHCX: ] MFDF,W?RY=@\PC3+Y3GQB-8VR]L#JPR7TZ5S!/OX SN8(MT>0^G8.87#:L*FC\V0L> M-N$.V-JZ<@FYV[OV CPG:\CC%;HYFG6[OHI(!CN_',>FW=\14TT:VE)4Q'"A M$RA]RP:<-$FY6&*Z*J8=LG'$3F&(L2[(Q/*07T:FA?!K;T= %ML5^33>TON M:?6L0E=]$0=\B+=7]91>[.V%,LS3OCVR+EG1,.+T]DM*'@GT43' !&5#(#X& M.Q@51H%+&]U%X>;@)HMHA:,GS\6*C)$<#"8/H&,Y2P'(8$;?_:N9J)A2"LK/ M@5/P&"Q-E'$S#389+\HTD086U#S4S!_92!40RE!4G)A:2Q_Y(FDCO#][?A2& M"1F6]N"ZP?2^VI$8:C"8=G0ZEK..S MAFPA^I730WM.$*B56 .I4E"4PJ(O'!JRB5=[[OO/;&RPQT,V^4<1K\BJ9O:40X_NDAE'JCI*O1XW"RO$K/S2#0ARL]PFZ_L?F TMGX^K7 M,#^SC,7L-Q:_&_T'K@Y>^76SWW6PJ72:D/$2STWC1)P6]5V3;0'9'BBG5C,T MF*FVB4C9U&N" S85FS,G>;^@,A^SWB09R6Q^B+-J3I12!9J?.X@ZO;L G)J[ M,%[W6YQXFNNZ)J_3B_6*_37^?HG=/%YM5[=;:GH:'*';\Q?86)Y]HBWNR:-AZR3)]EV(>W$7XR0L/\=^Q$]7Z67NZ M%OAG5Z5(_;HM43OB03?N&\41X;F%*!V,M4+$2?KTPIX-6+R8XI$=2#HF>J6# MVA")>E98.8)-4$X>9?3IVP)D!,2&0'P,E U"X%$V#&+CV!($!].3'Y:?[M#9 M4O]!]C8D^RY,UEA>N%ELSR/LN(_LDC5K*[)X#@@OZ_ Z,,$VA[5DP6:GLB"Q9L>^5?&FX#-@+-U9 AT(-'=@.LNR(CC>[9 MB%E+QO2)5O+U!KMD..3$PJ?%<$"!=EAE<>J(DZ=1E0^0MGE@1":(#S)!ZQ"= MTPO+V4!44_D#P,)8@.%V8-,J(%+;@DTJD4G#Q7@37Y&(0W>LM+4%$QG" 4R9-99GR3I-H$SG/ 7(> M:$Z^M;52S:*D\B>^\Z?^+6O7:O MIF#-0_=U+!J_<2\\99^5_Q:TP%O+]B)Z?K%5>*R>Q:3>7ZR7;AB6F!ZAD;F7 MQ9#/]#4/.B$GT8$E7S,198D7V**]&8.:) @U.DZ*M@E* M"YFRI3E_V<45".!R6))4P) 28168N:Y@D;8<"F!%FPJ MEZ1DX7D(]HQ@^CH#"AG)-$/&TZA)014Q8*@ TXOLMXA309P,XG101HCF1 52 M'!@RWECQ@Y]X2<@J<:+DTDEDUSN&&N2$2T.DZNJU/*0TPFF6B$A$&+!,A#YX M2,9#=$"P>S%+&C 4-Z2$[V#NO528R^ZYY%^,?J_E:.2J>; #/IK2BMN*]\" M_J+5^MFCKV!^5?T%%?Z[]MZ_QO27O2&A9G?8*7_;H^]A?ETID]GO6_IR]%]8 M,GKE-TYA@!:&?7$YG GRQ]W4)EC^'L@$94SF)BA^.;X)5D>O_K@^#2 MGAU$EY6B]>O]ULMX>U?G71?=IU!Z77#7"AZ%V M;#EYRUVU@8IZW92GM.UU>&/F!]V(W^GK62P*'NWU)2K'AOH=(W'O\M=ENBA- MI&)YH*@*W#@>%"3L=?MC'KMX=T'K%!RX5O+*.N"=$V>O+'UMRZ,+%T[\. TV M]#_T+<4GQZ>].W3=R QQ;7AJP4 X^2L+&D3@!Q9J.=.^-$#16&,>]@^!0&V3 MKW$<#U[.4=RO]$33A9/@AS!Z76PO\7VRPNXADG=+:8P-YX(-!12=T! 5Q T; M\5;M74G 4 :',O3ACA@:&"1[66C]Z 1KO-N'D1.]SG=[QXMHL0.OGZ47?W!< ME.3-@^PQZ%00C];:SH,G'"?LK2]I&Y@1QH,S^L&5*+K)8(.!.-; TE196BHP ->L8TFSCBW+*2K MSNN:IC6U6(#W*,P$*EVB7^$&Z O'WZ9 M>G.^,DN;#Y#M#;Q+-Q1)\-P,'O9\L(4,-^7? 3IM240CW"LG?!T@9#)2Q78Y M[W@,!91BE+,AL6X."#\)-68]FW&\%*'_">>OV'MX3/!F2I;?S@->.@F^Q/LP M]I(+'"7>UG/IJX(T<\L^E/AI8PHPTU-+0;-9JR$ZV&36BL^*W654D,/)Y :( M(GIS8QM&R!7(T4EOPPF*%\EI"O#>"7[E]2=;P"MW/6LE)8,H'93B()$2[:R3 M?@XX@PYD"TX0'!R_;!*\K\EES$[N'5O.[A_#B'7Y$?+-JN-4*2C@R;R&]=)! MO 0.YMQ=R4CU^)F"GE%8\2 ^CR]*?^T4YBXTHF3X_ET(7$51BO'QT6: M6#AR]2JWXINCP[E$4Q%%-S'%!7&=9LQI#\L)U 3E],[(/'U&*0+[5D ,=0A5B=;=)WT0E^A? ",_LJ44Y?-J'6$G/D2OMR'96!G6HM1BP1F\H4"B M#=>@@)BE$4_5%^Q7*$-##$]8JD$_CMB?9 '%@W4;XKNTU;Y[$4:T2HVF.L3E ME]9Y#''A7*B1<*(C&2&"N%,#SO3UP1.4DY@@8I26.%47^3Z_7[U';H:(-E3< M=,OS"NQE)2&.]S[Y 3O/#$ZWY+]3WP^?Z7T@ E,4J%XSL)'FR"'CH?R =GQAU#V3 (0'Q4ZXHRBP_PT M-:H_33W%D+1*2,BE^P%A6W%'CT?83>0$![%'J%][\4C!JPD_;R;,-?\1!@R( MYLR\A=#95-JQ@RQK(<@YI&>.Q4X^8Q)]*=A$LX#L[2-V6 Z\K1??6Z Z6&SU MF6/%K]V2Z$HE$+M_]\9Q#QXU1\%-H><#S@&Z%#*K%R(W2(P>!NA XGC>)&:&G M-X?O:-C?DT; MF)2'1<6XW+GIR&R&SX*<&-_H0X_D(\(!<%P;6[-">W/VO!(B"O+YO=HH'XXL MFL(#4U#(?@BW]$-XC$%;:U'H83<[ZUZ'1-8HH?>$+\(X.7=B+Y[>QZP)3.-S M=D.J-E:N-%*(64&+$4G+ZEP:\%QQ&O8?DT72!!6U%O3UQWPD1(>JW8"@+QDC MT)GE8?38KLJF==UYS:Y5Y#Z[V4%_&EJQNJ'GPE[PX./L&]I.GCZ<2]_(\H)% MP/Z0%,2.,2A,=?MXZLP*XHQUN_15%((C?!.5FG.HEP_H776/159UC'#,A"MNO6WH 16] M7.UD&F!P=(DB YVD?P8/E(4 OQ#6O=AU?/:X.0W+1+R0D!,_W88T*%, MQ&_?H]D+>_,EYA7IWHZSPXO4^66P&#T3"?/OLP^=B.ID3W2>/X>7TH_%%-,V M3S'MLQ03D_H=,2:?FX84#@ M/2D&]H3I:H(JI4V*OLXUJL-.>>/12_7L..K4YJ.'O.<"W,%VIU#C,?'4\VAN9L.1B_7O&.MD9 MR_ '[6O*.B^FK&DQ9?%D>C9IV9U1'T:_-9/6J>75S934+KUI2MO:#'PSY31( MRYL1MC%7WX3S$9;3=N?W.RE+'FCL60+36T#E*#K4"4#M2*>UZ#547-?5;LTP M)[?,-9*GQ?J67BD]\?5MJ3!FZT5QPHHB&M\=.:UE]I@.-ZISV0#GC88#?8&9K4^3QO>[MS6] ;&J4]M8YY9 M*":X-W-FT46[VMG.\D,+N=P#'EJ8#O@69KVA#BW,1GLC\UYOAQ9O;>+CTYW# M=G.-KC>\A7EOM),/W<3W)DX^.NFW;NI[,TR6=]P\;J^56]P%M7$GWI4:SE737T2Q=2?6;;JLU9"A(M9>NZ(%/;UH(VJ&;5L?1 MWLC,V[:+5J>AWLZ<6]LLY[<^X?Z[RCEA1VA)KFSS^>]*%G'1[ZH?5 M<=8]C5Y8PT6"\KQKW8'5/(]/_&6=VS (]^R]ON!!D8;7H\ =+YF((IX:Z>!! M#H/J&9*\!9M/+QQG@D0LX .;%@+-G"@@W\;EP@A@)\FCPS2.<1*3D'#M.?>> MST+)33J++X(E#2]T:B0 1-0H^Y/UV5K3:*/04X_TX=RO=R6)OMH;<1#'[IE[ M[423$V$3LT@&?6$T@%]AS75Q_IK_\R>/!(7(?7R]QD_$8%^4K19-D2WP B/Q MI":NQ82U7P/6-,:)*:(M%II[()IRJG)?ASO&.]Y@M:5A@GTV$ ME9JI"0%8:S7GL*'1[ ])S-SPPPW>W>/C*A C# M,4BV(U "KX+#F MIN*G8EP,!'U ' %XC3X8^V!.\+&Q$WRTTPD^-G."CY8YP4<#*_IHKQ/TPO[8 M2VIARKN*\#\/.'!?S=;3:DP+G*)>,,5*6H4&O8S6\U6Q-@$O6!UR^,C-&L6Q5*^3&W/KC6PN-3/,R!FZP MJEWVIQ*M=G]VA&>- M!SK)ER3"T.*,XTDT8X-<;)_H5)U>'8!-K74<%#.O9%]Y!# M@CB$CI5J%*; :,>@T9:" ]O_4-R/8NZ?5^N(N>UK<22L-7D= IS9UXLAFKX: M&L3\Z]BI&-'G%K]X7 @5ATO&VF16GG-=>@.<) MWM5N./L9PX+E69_*ZOO$,Q_@9$\]CR30GGSR85B67A@(92/1B@+-X2@;#GVA M R(V(G1 &4U]>:VB4RC0%Q2X$Q08E108B J\IP/"1K +)WXD:J#_F?WSX!'! M2D<_EU[L^B&51:'R!OAPD:>QD&)4,48&B1@-N:N8,T5DALG^(9 0JQA100;8 MPWL1%Q>8P*TO6/0P=S8-/&"+BCHA2FTG5, PK23TW%0[&C%X.SVCJ2SK,'%\ M8/M?N8]X<_#Q8CMU7=HL*KZE:_KKT GHY'W%Z\^#!S)A8^*Q]S[6E02VI@;G M.QT5('I62U(@?M>)UXHE9]3H>BRC1VMZ$UJ>SVBR"2ZGB@JRM?5]X_CNZ>BC M]$OV$VDF2,-',Q=,BW3V24P*1#8[2T--Q5#6>(]88$N@Y 7 M;,-HQXC26T*)X]&2QA3RJHJ^07%XO/M^L5FMY> MHMO%>K9"R]G%;/[S]/QZUO_L>.[Y/F7K(@R2R'$3@=-COZH'AYDK343(IDP= M+-C,6<^4HL-MC#9D(\BNT=ZG-%",HR?/Q3&*<+#!+!/(&FO@C?VP@ L.N!?.I.J?$>^F&T8;X9GHK M.GDDV#C:Q2Q=B7S\X/C^*^$TV+":'*/4Z>,0X8PD6XVSL!*]^>T*O6 M#MJ1!<'NL)NP-@C\&O7>B9+7]V@:(/SB[/9$ZN?PX&^H"$ZJ&*H/(COAWCW$ M2;@C7HL.5'SD9EJFO)B8O=78709'NZ3[<'/PKYB5M"C MP"U 3$01%QTZ>)"%1CU#RL6%X X3=$$"HY>P3J)H]K+' 8E][Y:8+H@=_VO@ M-44+(7,41/97R.72^=W[I'9?U=/.$C2H$ED4:Z0+WA-"M==C 66XS]K2) M7$[BC-% !9&L@L.*>^KGAYALJ^-XZO[SX/&&09J+-$IH.'.L$4"T/04HB*%I M>:DNXE-H)(!;<2]&)@;])]F@:F_%&.#995)2H>J,JX1DC9E)N#(RN G*4/NY M%B/-JGW"NYUS%S[C:/4:)WAW[;O*,2( MX2"&A#C6!%U?7P#E>9I*\.ENI>:TM?TN0S)B$J?)N'F@MEXE)(SMUC">6:X" M#,QNM?Q(K3;%R/.E! ?(8AOROM1XUCB5\^HE\75=0;P1*F"=>P/12N7K!G@P M5>G&C,DR#-IMR_58!X9/.+H/:ZK'VXLY#S9XJQ756F\[?[UQ?@FC"]\A*SM- MVX,F%*ST/96@ABYXC&Z;)\KY:^J0]Z^(D4&,CA7;0HW,A<2WSDZ_26Q,Q4H; MU@EL:,6*I9%NSN& 3$L M.1/5-3 %0P&! [Z!E59&++'/-B;QH[?76X46 _"65;T@I7M5:G"8FU1U_%0O M$Z48*!)1;)TM/\=X>_"OO:VRI;(1JHWS8E4TL\FPP+-L!CQFK-FT-T$<'U$" M%F^K:J6+]2Y:L[4+(2N>J$=O0W114 M;'- +9N-75)\C5TD9Z^7-I._L7S0+GR+526#=4A6NJ8@CJ$;$@S;7"YGJ;%[ M$0V_I26JQR#?VSW6"-Z>USDM,@>3R[T39QT!%Y\R%X=_#O<>^O#JXEX[@_H791A MV+NWE,AYBU^2]3/VG_!-&"2/+7:>1D1/)5BHU-$^3AQ3/($0(6>Y^?):H)S= MR*&K@I<$<>J(DS^IN&"H&^*5_WE*88 ]L?D<]J*BG-:I./V1\.U]/25T BY> MXK0GS^8/T#Z')^7/>D40K_K]R;DQ??2V/]UP:B?ERJ(".CHS)74J[ESPVJM# M4[*GY](:91 ?^\.I.?4546IORN'$3LFE1?&[>32E="(.7;#:IS]3JB?GSAI5 M$.?ZL?_[$\U8G&Z)S HW[4P-YAY&#PK([FIT( 5VGZ,SSXJ&/ZR3CNB<]!:Y MP]-I^,7U#ZRSSI9?KG=\_A7KFO40AIMGS_S2Y%A_NXZ1H MV\.KR9%/"QYPEJ++&@BYX4/@_8M\X%">R?"'B*&P+!TMC2 ?T2ONK$40OPDO M?ON>1!/*):8-@P@!;\>8T4LN_#](8I[=J#WI'?S6=MA_;[*'3Q^+*<6F/_E==ZP0-/-QRJU8(<46E! 99--5P M4WTGE-X)(D$D[3R2H=C1XZ LAN;"C P0L#97R7:I)+<"!5.)JV"C6H![;"$6 M7%!?A0*? M?O3O4Y?GG=JFT:-8R!(_A?X363*7;5UK+#4X<'9C)(QH0EH$$&LRX$C29SW% M.5[2#&!:<90(9D7^*DR*_/&/5;9+6[DX<,B>3K*"T<"-;SJU3%-S40*-:B(U M7$C:>W&0X98M=<:0,O YB/?8];8>WDC7*S6P0$91QWQN&"K \8U#SXG20"9( MP!BP7](U3FB*()LLR5;?B_ BN'%>O_M @97M9TP18;*@S<3*$IYF6&"YS2;L MM7OXP^R!D:BBPW_]_;\$Y./Y+8LZO/EOK7-4VM M:G#LV.LKA:E+/E^#]J\RX,@\"7UMS1,W;<0J.GY/HXA\P?8JP%=D9'+<."_T MN9'S,(K8,>:%LR??)*\-5*$F89?15CZ,#LH)H8R2 MA8[84.A")N?)\7SVR I_*&>;>ZQCC<=>XOMD'L1)Q-9A[-GT%5E$.9M%\#/9 ML%+NETZ"/RCT98X.YZE-112]U!07Q$.;,5>T^ 7'"8IH[X@DI62RI4^8D1F2L#D/R/;19SZX$X1*B M_7 N;?/MYG20EQ)"SGWXA-GKA+MT77J?K^'3(=#]T[P*WL?,<#/Z1_LN4::D-K3A\4V&,4']S%G:D,X MW>V\A)5A\C?ZH+*S _T:JFUY01MEQ">H(&_/GF%(Y0CR5NP >(M?3M8O#@FM M=:9ETKRB6K6QJD4#W,H;BE3:OM?@P&S9C9BJ>F*1$4^=4<"][#[Q-[OGKK9,<(JPIGZY'@PO]IB*)H;\.!R3TFS%5 MM2F.1A:F MX$<3PKBK!E@G'VM 79]6AV&9U,I#JC$W&L,;HJ4TV-SHIR[JOL MVELNH[9.5PT.>JU;*\+1Q6TI+-35; TSJH-0LE5ZR. '>,"-=1,CB\;S,-C@ MS1V.6'T)^1$$&Y9,\89X0(^[-1$J?^K-! GNX3=S[MJ5#T79 .B>C4"_SH9 M83$&U.-QG>3/1./(2, 60S5@OJ6+>)^#F'P?L\I;_6_7?_B@[,;"IO4B?,(1 M^>\B><31THM_E<4.$R28P&$N3A8UZC' 0H8I:])\LO/P$.$'>JCHY T%J''% MR$W)H)#201$E1-.[:4^!9U8#D+Q:$#-:*X ABLDBE*$BAHL8,F"X:"W9HI(E MZO3#VK>%2HM:9B_[,":K[@8+_ JF71LIA6!U>ZDC-&NV4U*^3'=469E5ADUO MGVR\V*7VC#? &=T^I"U<+#^ZPREN_W/X7U/'OF,-5*["Z")D9^HN'9\>^D2. MF\CF<5-$F+F\F5C9?&Z&!3:G-V%/MP^@A[CJO4 >ZMD1;DPMN)@=-GB+7;:5 M0/B?!V_/2R_H&T@1V:O&""?N^_=IUQAVK!SN]CYFH]#3"H%?H&5!)QUFR(AC ML[Y*(C[*"0 N#_J1D#=4@IWB5X].A,]IW0!]-ARSG4X8"(7AYZ\%R)WS2C^: M$O/=+/8L\ KKG=N#)L\UP#APRX?!E"8N-GH?!&1I,I 4U7NRE,C9/2N $4<2 M[SC0EXU%N'0XQ,:;H'3$2?D0FX\Z;*SA@6 6;'3+GE$U>:R%&=_1W#L^37F, MH8U5XD2)M?HXQP]>$)BHY"2B^",-QY%UF>E!LWT_B5!%%MM;[-$#WUSV@10L'>ET0Y5& M<7V&*LDP)QFJE'(,&JJ$48MX-5"@^I$K,6"G$(,N/1OJLM##J0>KV0N.7"^F M5V8&W1U+QCG=0*546I]AJC+(208IA12#ABAAS'%VQP;ORX^JQ[(.3CM _8QC M^@1QL,F>@%R']*.QLGKFPY]N.&NJXCZCG.G8)QG\F@FGB(GGAC'Q7!L3.2OL M!869\% #_1@@G3CXUK,/S1=:"Z/2ZQ9/Y-/3#JJ"'OZ*O8='JBLRB3D/.)TW M\%WDN:K2B=%&/]V0VE#! YVJZ(8^R8#:2+;Q3F R7E#*3+;ZPHBQ\[:.9EHH MOD8_-(G E?Z;.M,949&G=A@4-\HL#S&%]XW*#7DXS;C<2LAA M([.T^.'-Q^9^?H@&T?GMU58 9-F-1[KX(&J,TXO\O8IVWB5'*!1=MP2 MCU$6O[^%VA" N-N5J=,-Q_W\'.-6E[RYX-V'R)94HISXLAKBAVHP"UA=VW)? MK]?[QB>L>8>E[/[SP?'7.-I]U/W"8W,"'/YA%%^)^>.R 1?H(>0$K(LIVK ) MK"'*FPW!W(H?HX'.T+N_8R>*ORYI_;2#MWH/I-*CZODN$$Y.-WAW4'R?P;L% M&R<9O%O+"9AN>;/!N[\?HU7PMBL=TT&/C7J!\H@WM,[XEG*(G MRBI07U"[?Z*:2?L\G;219-)&G$'AJ=P8,1;3R;S4Z;PRPS ^$64444X18Q6P MN:FM/Y.9XA2WM$YD(E9OEN$FXF8\O:&)N,V/,>A$W(2AMS41-Y<<8"+&!9._ MP8FXMY]HR(E88/(W.A'W\#,UGXC[2L+V.Q$;YQ3B4>?B7MDZL>EX@)^D\XS< M(T^G-RGW+KPZFI1FRK.CF9(^;<&GV9@EUM+$Z'&^[=0FU.'5:S2G]IR1CB4I MZ3ND[-,*;8VK0)5BHT-J#H?\HX2\N5#G6Z\ MUZFN_SJ2-Q#IU8(,&N9_'C?&-VSU/Z(^ZT4\WL#54 M\" +6_W0)QG^&LDVSL(W^ZCH4_$&PV0/>B\W3'DCX;-IHAV"@3<01!LES\,F%\;+N_Y6,A,P&K4QK='AQ$#;#[?93#YI'>EO;<[B/>''R<'D7HMB7*#N=K6O"O^J7ZHP\8BOM64BFR]D4< M)E#VRWTU[J7T\T/!3J\0H"]LK/\+';[>EM)&"51+$J\CC]8\LUM.GP,OB9>K MSS=8\VYY#0Y<0#$21@P26@00QS?@J&*7!4YZ78]A6;#;:9.-N_8"/$_P3EOM MTY'P"2;E*VKI)<^>4SVMU/D1V_VOZM$7.@1B8X#/:M9JZ40C3.5^[R)YQ-'Z MT0F.MS'+T/?)AH(B]?WCM&3B!"-7)W7W$N5:<7!:$;&#B$/D1"2-!!A#*"$< M&5W705\HHRCE]&1C<.^_RZDNZ\P5P2T![H?(QG_3H;:LY)&C+!_\K09843J; M8JLM-8J VB^U?2U7'*)W7L";%\5?VU-]:(NN*K6$1NHZ\1FI7! T^L]T//Q; MG(_D*AYG.BJ/_<9F(YEP@)/1<4GAZ;Z'V8_FTYJ_WT(4Y:4W8%'T>/BW&$7E M*AXGBI;'?F-15"8<8!1-^Q0-'44;WN.$T_P\C@^_C2":5[6 Q5$)!V\QE"H5 M/4XTK0S_Q@*J0C[ F)IS])L(JZ;Z+[3R&PBNYO4W M.Y6-%H]V&VHU!.?A(&[RO3/ MWUN\MJ& U4 LGZ4?+\H_"2E9.(CT&&6]F[DF$1 M^<.T%8/'SXHWAX@N=LGWB*_D3^W)JY%^A?%FY/00W[(9>:27)8?Y\3B50:9B MB[=R0CMO^_9QS9A[BYNX-C_/J$471IR]L>U;<]'A2S4.K'F_U9/$2?QP0G.J ML?9LA/8VC'8TS\A$EC6[D'8>:8H,L^MI+EZV+3''!-LW-&51TJ5D3_C"//W" M2+$P09;AB>.Q%'02TK^R4=)8$17-3?AS\02+78C!^&9W\3-?;4\)S'>[LMS.EW$Z*OV83RFVNW?O>LH(%M4L2*"9 MOBLM;]^$OG#*4$5%P^JCN4GT'Q&7.,#/M 5;IU#8B@I,#.P@=6%.YHY5(>\?$AC-P>*='WJ1B+RF4YDP( VA-CD']'#*V <6WN[%G'+" LF M3C40*(M+!BA@</!?+\U=Y!1I+5<7K,'%\\?N+,$YNP^3O.%EB-WP(O']AU769 <>#RZ$/ MKD0Q+3[88""9[H&EJ>Y'TO%0.J"RK;/8W9\/.REGN^F@!"9!KSA!Q;C ">BQ M]?DYB'(0Y(KZ<0F1-QK;^&'M51BE'U&X#V/_( HFWF 4U*I[E- HY>!MQ4N- MB.,'T4E:&H+(\A<)#+W5X-I$^27]X1?Z;XSR(#Q)JYQ.M.8C/>R#(]6*< M%ZDR+#I MOG-:K\8^WS%5CW:2[Y36B3/&VH\.;F74&U.ODK"'"QH]ACWIR2QOL)X^1\@N M=]!1/P<;',E.CIBD>'/)[BA)^SSV113F7+<_=63'OMTI@IT*]\5ZW:%QD#^L MP^JM^$TX9OP'.I;B&!(Y?#QK+LP-IBYZWS!]?&B1/SZ4T4=L %6%7CH(XJ,@ M2FF,]N;:H^E!]=2W+<$N-,D4M L#IHM+[\G;X& 3<[4I9B\= MQ"KUX,<:&F MA@99:-6Q(\MW$X34#7.42>JXP,N;YM(X\2/:9*!H@\DB:(/VCK=!8=9WU8+= M6'Q'.+H*H[7S\E7P,?;II)!_(=[&ZQ5]C4L [J):B5_9&#>G [7I:,:K8 MSYR7]RG%,C_S5\2&P#X_VB-#(F%,M+CWO0?'@I.^OA43G,B=$YF=!9OH9 M+XSGFSRQB&+()BK99JOXC=+[A'=D0L?9!8!L79'];!5U%#^99&TRZ&C0C4X& M4V"U=4GO0UG0C&0@F2K^EUT7WE.RPDKV0)TM"5&,DX2L9UF+$8Q_%U<<-,Q' M8+[*UK;I\C<6DC/[-.@YA4#@K4;&TG%M\,]^!#:N<#>JV(#9/2] JK5D7@-< M)HBP$Q^B5[:(73%GH ,1[ND'/ V7G[Q.@PV[F%[H@E>YR$JF^Z$+="&A3Z7D M5Q;Z( IWJ:$_[BN&7KP%G:2C9.F$:8/'7QZR^3B0URO&T!.WC2;&)(1? M1Z^B<>J9MUOL)MX3G@=DDX#)9+)T$DQ+!@/7\SU^LI)<8;(R0#X>&U M!*PJ;.R#,F#E<7^**943=R<+4R/<%]_5PM^,,N+0;*%&X5&9^H0V[4L'0/D( MQTBLRM?5+6IZ495!K]7A-)8IP0VC?1A137E<"727P?Y^Y[#+\50/P)W:"GE* M@N BSF#*$N,/KT. !*'!I"@=40R#$C377BP(!Z- MH3F:NCS0@SMZA\#E[^'ED2F]5V!E/*)28K((O":#^CF,\@RO,17K8DJ=P 91 M0T7"IKB@Y['#6H019NMZ1EJ IWT%QW#YVO.&?E3"!2W$PTZ?F<1"O M\5(;\0D!=,\I "5/&HOT62<$V!NO(XK2OE6@P?[G-@PV>',@8/<^3A<@LQ<7 MQ[1&TSU0[%*))[,MB2X&' NHT>#0RLO[$ XU$%R;PF$EJIX%Y@$OPF0[+E_T MHG>IGWU-K])A-A1%>>?3?] .Q5_KULP"NILML>]?D;/?^Z_T+&M#X./$<_,I M.I =H>-<+TS_2;=S0,?(VH[1'B0>(%!W9"N2>$LKQ+$GGWAX35Z!'\ M0-1>SB(]8TL%PYD22X4'4.T81[8'\S5D:524#DLK[YD2\Y&/;K^#KBU!%"JU M)N1[.R_I7M$RU(Y2IH$;[/CTJ&$6)+SQ%HUCS5;O#:FK,,+>0U"*M)<>^?DCPKGG--1@ M/37K8H:I @Q"11TIFR*$&:\= D,Z0 5.',3VU'5+)66BYTOBC8!C912013Y6 MKM ]@*9DK//[6I%;K@T8#9L\O8;)_N=^1MQVUVZJ%5Y_1+:L.R>@U%%CTP(8D0+RQ%8\5N\VHE"H$A)IIMGS+:4U02@W83_N1 M?2Z0H5NZPR <71%POB940K:G"%PEU5(BLFJ@E22O*CCKQKFMJ5"I.$L[(TW/V MF/@&&XB>=RO=)'41"VJ9^M53J5)(B),9<;0LE+,4E2.,D,9.R!M@(RFHH_7T M'V"%Z6%["#9TY7878=HL0EW9W /)D@V$BH+@T9(8(&N 7>:JB.QP(?389:V MYY1*E;L(*%)U$51XVH$#4W.O M6/ZU-:<1 \B\"GTG0C/^FN]=%/Z"W2&6^+3E8\'S1;C;>?QT6S)O:V!AEO*U MS&?+=R4@V)*]AB/-,MVE33J]PAO< A=H5=Y4%M9F5/!G 0-PY=U4BB7>I2\> M:WX1X)XL_SQXR>L-3A[#32&::L950@/V3M$+4.J'(@>%Z7&BXZ5ZDL"@$0<7 M_ *Z?7 S*01_=ER7!:M[QZ?OSP\P:Y%H&"7>OUAP76PYHP*+\X#-GGSRS.9. MB$;S9"W4Q6WMAOO;:I[2! M)M=^U5 2/@T\\[+PS1:>P\_+0RE R*ROUA>""=BRE9XY$5U>Q'=%-SG/)1L( MUM7]PG=B;9%G"SHV;)H;"BW?*1L2 =X>-^*RNC],Z3!'3BD5O6LGB%&;T,N] MG"!B%.D+3*Y_8'UKU\\A_S!;>EB12I)JI2Y95(<$N((U$J>TD-5BP*QG#5BJ M+FM[,DI[LCSMU#!=WLYO/ZW0W6R)5C]-ES/PNK6(]2]E#W_3]T%8'^BI<#5_ M'>JZ26M:674F#%KIUI-:CDK@.E*%JHWKA6W9Z5U&.(L :8?UZ5%KB$O/YU?U M>9T=ZQHL>VQ0&!.^EFX8I7$-L"X?O"NP#>U^IT'B;=+?:(7=0^0E'HYG+S2. MX\T5\:T+UE\D6[8?A4YI YZ>:<,%DUZ5(\:37@B#A)0>.:]NZP3:J"".,NJ\ M)8U 7[5FMN0JXVBZMA1[?U0T%H,Y; SJJ.QKQ(G_J Q4H*,49<,?8RG94VT0C#)ML2+I! M- "WQ);J]D1J>X+?['65*LK1!CCW2%O2.P^8K3;)(//@HOK*8S832+*IC2G MG':T%#0[Z&B(#G;&T8I/:;?4?4Z)%CXR4C29+\[P^%)B_'P)TIM&/V 45 ME)$A_\CWE:4G68M5'N!)1N]BU_[2 SS12.D7H7&39^[(\M2+:>FN^'CSS_25 M>XDF6E$!>E*QO<#Y4XG-2< ]@=B65U59@[?;.SQ_0Q_:?J((128C>7021,9! M]Q@'PM3)JK?3C##M!4I&9B7?E2>[6<4W)1"$248D\>@M:?J%QS]G+_<1%\F> M[WJ/5K1^,&8-R7WG.48[YY7\?[!A?4T)<=>+B)H( .O[PI]3?'[TV-T;VO2- M"D9Q')<(229]>E,G?,Z\+ZU"C]W(N^?TTHH(QCMA@I=)T#O0>!N2*(S6CX15 MG#Z0Y:7//SX_XJ!@$FU"S,7);PP=O4<&]:!C;Q;#0[9 2C@7X,38[8WT?7M. M;X(81=#[#/UIX$(,XH([6/#H-GL]4G6F*0 /Y!=8K/R[#7[%NXQ:V%XQ>Z! M04 7,YNQNM>R.D[#E.RI^COGE>77-?40"EC YB<39^6CJF%5 2,=4L5UVS&,H8,>4LV/JF'O>W/[(-3_F%@+K MFH:R%6Q;Z)J&,APK?BC7_&#JFE5 2-=4L5UVS6,H8->4L]/--3]8XIJ&LA5L M6^B:AC(<*WX8U_S^+]^;N:8,$,XUU6R+KEF% G5-%3L=7/-[])?OK7!-8]D* MMJUS36,9CA4_E&L:[C1E@)"N:;+3K$(!NV:WG:;<-;^SQ#6;[#6_MW*O:2S# ML>*'(7 C"BT+U4!,OOR8;/.)H'FT.<1*\K'#UY+E;GF;300/=?ZP7( M[[JJ0>'NM=;Q5)VF*0;R4A04ISA0%U1;\I^AH QGB#>9V! >[3(4D'_0I\U) M *^S<3,TJ!>9S$4J'F2JQP%\C\F4N78'EUY.'[G" -!>TT'L A6)N+D?V7# M.:!X_8>)-?8QO1)^"#R7F= \V$8.'_D0X=IXT1 ?)G"T$C*+((V0P4))"RZK M_2&.:: RD=P,@>+&J#):MDLY?UV3X327T;08%NU7JH)H-RT%N!T[EV-^3+8O M%,.**VW5?1@93'N]38MAD555!=%OA7-P.ZSJF!]SJ^KC$.1\TLK!8+,("9"50* M8GH4F$!FPE,UF*58XYA938?(&^>7,,HXDMWV5P'!](%4LYNU?JQ"C-[M4<6" MVA(&6QW5_/JWS@XOMB5^I>NA&E@86ZAE/C,))>#HEE'#B<9 !NL"4&)F$6!E MJD,%")/3T+.=)2_D4&!9"AT[E=^> 2,WLX P@&I#V8+KW&X)^, FNWX.S4Q6 M +3 9"ML2TTVA[+#9(_8J3/9Y#FTP63-N,Y-EH /;;($T##.ED!M,-LJZW+# M+> L,=UCAFJ-ER)88;Z&G!<&3!$&-N$K(JN9!8N0%AAPE7&I_19@=ICO,3]U MUKLE\#88KR'?N>U2>,N2Q.>OYSAP'W=.]&NS\XILKXUAB" M;W&BS24K8 &[&.N8+S4TE@'"]#96T^T!E5K(VIP MP"?F:D0HO1JG@(5Y"$[+3+7(/ 5'!3QT+5A_D@![01SC)%Z'B>/KS;\*!VCW M*J9+!G\,!&/IZ=0@6+=(J8FB79]>@-[OKV#&Z M67$-_I!:>W&DQ\BV%>X5SS!],!6\A&*1V!SF9'Q[W'$X0.$"9=JF<[RY;* MH<"2I3IV*C;!@27V )0Q;($)V5&>UQS! -H,#)F2P8B L 81)4#C0$,5AQ9N2X7 M=[T?6D/ D@NB1F(J;XAJL>VY(FK 9OW]27;_7+Q "7RY?"@IQ[LF6E.R3B^& MA[ZWX3=@:7Y,<6E!!0A3K*YG.ZM4ET.-7J:N8T.6,RJ >2X5[#Y#E7'E=08U MJ"T&(K_,H(*SP$CJ"B*J9F)%'<1BCR/6N3E;4&B/^930<.NY&@'$E9T"%&2- MI^6EVIPZ@T;%NL^. ^ZN(4!1Y*^.04.$I"L<9'60I%5Z-X)7DM"09]P1ON0>#"^I4V-F$3Z6]AJ>,BS MS1HAR@>;"F"@4TTM-Y)U1PH_003C+$]#UCG&F&DC60KVNJ:BQ P5/,ED))HD M]Z3%@TQ)&3"FRE3)L^,V%:$,)2.LEV7'DY6%FD(+&G@X?ZH50G0B)3"(Y]1P MHSDA;K!8'L=!FHI2")"N?JR8;V8O>QQL/)K)FV[(?XF'KL/K,'BX]I[PAA=D MZB.$&07PV:>)H)))R 0=,4MM.MUE_DN M"FF#V-<)VI//$^0$&X3_>?#V;.)R4FK@^_$GPDT8O2Z=YQNR;*7=4%7.J("% MW']KF"_ONR6 0/MM)2>2+6D*.T$$&N7@$_0I"F-H!VDB"65_E\$@+\.$[J.' M]XZW81X>XXM#%!&N%,(J8"&[YFF8+S?+DP "]8KW9UV(!GD*8"50ZC="CP)Q*F/!47>=3 MK'2=-$$E1%M]Q[RXAB7 MDM[0=CKAX>&1_-=)(>GJ>Y^^L;D-([3G_,3(I1R]1Y]CBA8B8D0^^9P-Z'(^ M$4LQD6U*RH?O.?>>3U;O.$;O-H3%9R]Y] +:,PV]8B>B]SS2CRAX0--2/@KS MO;G[ZA(FO"WRR3X"1U\#U>XT_F%2!)1B((8"'6\Z29(: ;I&*GI"2Y6SW M-+MNGK[&#A&AB+*U<[42 72^KA'C:,Y60$//VUJV@.9NG_(D3L._X>F[V>^3 MN3'#0@(:='!J+='UL2W8L,].!:F+8*9(T+OL.G&JFVP5!N >6\^2:HN=^8L] MGM)=JF/&Q;^OR;_^]!_9)^1_[HE[_>G_!U!+ P04 " #K@859% ?]HO)+ M !;/04 % &%G>"TR,#(T,3 S,5]P&UL[7U;<^,XDN[[1IS_H.WS M,+,16UWRME@R8AF=T4Z2$IES6__@"\2+P!!$B M@"#%7*K*!D!DYI= (I&9^)___5@[O7?@![;G_N6'LQ_[/_2 :WJ6[:[^\L,F M7'[Z^L/__O7__,?__.>G3_^XG3WT+,_M_M\+6W\-[>#+?W M"'S?=IS>K6];*]#KG?5__/IC_\>;J]ZG3W^-QK@U MC'>Y/O;/SSU>?S_OGE[TO/UV>_W1UWGMZ3-L]PJDM[;J&CNW^\1/ZOQ?XO1XD MT0U^^@CLO_SP&H9O/WW^_/W[]Q^_7_SH^2O8O7_V^1^/#W/S%:R-3[8;A(9K M@A]ZL/U/0?3#!\\TPH@_F>X?+[Z3#G#Q>?ZL3YSF/4\A$A% MGQAZK@5<"&CXE\!S; LA>/?;8+H<&3Z":/OK7!BH ?_15?:-;*H=& M\'KO>-\%J%9F:!XTW=F!Z7C!Q@=W(#!]^PTM1-/E[2:P71 $<)F">Z(-O_OD M@P#.@&W1:S8X7[IFX!VX&Q#<^]X:,C7T#3,,?H5FP7 3A-X:8H2=')HQ^5*! MQ([^A_#\;C@("Y!]8_<=!&&$#'8B*(;D2\.]8?N_&,X&/ (#_;OAO#'#\)WK MP#2]#1QW!DP N?."NK).M&H,OK,<0YUQ5S8<>1 $#-L?:03.,K==N/- 6V#@ M^_!#C65>/0QG'?/6:[NQ-F4[\YW7 U@9#EIF(/WP]&.#!M.K&H/O+*-=-SI M05:\P3VLX5:!&X>WYL!/@X7QT829N=]:86#RI&ZL&@:+W3$ MT<1:-XTYC1E'DJ73F S6#W1M#<"VQFKEP[-8;+6D/>Y :-B.$#.A]I-=\R#] MZ0+X:R@C-"N!Y).^)HOR>">&UL^#;;S8CAW:0A% ]=FN>?&+X=M("9&;VX8+ MO&@'RS8RZD!O?4[43NY,]U<*[> MV5QC-PC]37QCZ7VW@]O%YBL,<31A=XT9F^O6WV?N)H7?@RYYOUVO"WT^7 #.UW.]P^NQ;R\:S?#'<[C_I,HZN()\=H8;5S M_7BG?!F^(I49NY/-^@7XT^7$T213%"H< T MK"A^\9F4!#Y"&_[1^+#7FW4Z]!%2.V\7=87-#ESR< MV-O#YJS'#23I_G :OD(6;GR4Y]#RR,_CFY*X,#!-?P.L9+_O@ 6X#S:@'TTM M@'.+DKL"8/ZX\MX_ ].*TNG07R+N1)P9QQ/ MW,L.C6A(J7 \,_GX-_. /?B/-?O 21#=,Z3".\0*<:!S*;I^9YU@) M$0O8,43@7_80@?_836,!1RS,LOCKWZXOOE[?P,Y7UU^_7$!V7_8+$\Q"8>#G M)PNMLG1\^-<2.O+IBDF+SV]13M8G\]5V=C)?^MZ:A87))#Q*@CP?8OXO/YS] MT-L$<(K>6WSL^:$'B5L"N(Y9#S%[L)./9A["[19$+3L4XM\WA@\_[&SC+8<@ MST)+K41+0ULBY?.2E#N3%32!;0\29]W!'8,@J5P[K>143UDBI8M#U$6X;<+] M$TVX5AF+3?.\..O?7-P6+Q'_ <#\ZPDJMHJY'4:*E+)'8C66)#^->IO_"^NW7RVK?43UHUM*6' M^KYD844+^=1_\KUW.RY71918H;E^8J,A,)5=V2/3K>R>O" TG/]GOQ'MDZK& M>;+.(5G7!RZW>O)2J4GPL*"U8. # R.G[*^UD$PM0:DLRGX4X;) 1?B]_#UR3O!2NHRM8:"8R>OE1P$GP3";9>@>/4 MR2O;*$_&9?_F_ M?4JR4NE(\%8DIM,^CR=)[=F$J'J^%54YQ!F4A$X:28^9 MS%2:91^'\OO?$*!(FX?P3 M&/X]_$F5D8-IJ86066A+Q7Q0@2;)R6E/'S[<$M=4"T$S$9=*NNS*45C2>2C' MD:5T*IUIJX6LV:A+A5WV_2@L[ &DSXIH=(PJBRSW^SS95_ $\/7PA%I/42K( MLB.HI2#_YW.)20_P!SSR?YH\G)05#C$;Z*R/LH%V@\"_#Z>3N]%D/KI#?YM/ M'\9W@P7\QWP!_W@<31;SWO2^-QK,)N/)MSE[(DXNPD^K0SC+4G0 MTLD/?HM3>W@%X:X>*P8FN3:'#H!Z M8K#92M(VZ2:"_>9[0?#D>TL;MZ9E6ARZ4.M(X97:Y(6&(T^D<^ XR.4*7. ; M#K1H!M;:=J.)I[KY:DF+P/D3@C;+YL0%1Y?>/'S MX#5..4ZC'SJ81+(!G\IW6*'*-+8IKGF?7E_[->9$< MM8U+)KKPQ0,.REHLTHP><#(IY1ZU55+H3)*L!P*>4"%7X_OEH)@R(0<3=[:S M"??!,#6H2%H? RY(I JV/8I7E=T@XU=X[GB%% _@M(P5*+Q3L@_8K]E 6(=1 M$DL,&PL7>O%U3PYJPZ'E!6DC8AI#2?!P041SH G?T*J= <6SA53$)8MW72)6 MPU%.J&-CC>#M\E+647WW;M?N:93= S6F __ 654T797$&%-X8D,:\66G6E\& M2@M*OS4<]%[D_!6 D"4:_9PV&OUV\#"8#$>]^<^CT4)&%/INCM/E[E63)R^N MX%UC,-)UE:#AR;N[Y-GG&^41_14B^ER^UK+()JO"%*2I]^Q%%.MH$9*/(OEH9F":JKA_,@ D@]E\<=+E4 M78>,IHMVD& FEM/UFUI^U:KTO(BKM6"AZ*D=9IK2+"#K1;:'(;HJS_&2%+*2 M:Z@=+"A)Y)40HQ *: ! 8,R-W-?>N&PCM=3Q>LZH,FQ#CC'YY*/_?7%VI @I&-#!3J>5E[3?/L[[;3K'8=_'7^HB= M2)& %Q]EZ_\8RL1=V=!FCMD%T;VKZ5 C?)JN^@"C,;4:6HQWR<1WN5<[EF"@ M@N^@#T 8:11J0A9Y2 6+RO?#=RGB#\ (P Q=TDZ7ST&L!'!;S!C,!=DS]CY\ M(/ @6,"#F=*]5U7@R/\RSXJSB_[7BP.3/04] G*.91L/#[;Q8CMQ-H5K19?P MKYX#R0R0M1QN:^ZX:+LK"8^FMYVMB-:CU%*&!727H?@.>2Z=?_FB@@.JE8B) MB*&A7NB-ER3?5.+@?S*VR+M/=_61;YQGU84:24J,DL7??%#0JB&14M]<6' SD"KTWE14Z6;[C2;FQ9;\2*W;5$S6-*1?J'),3]4V]LAS+DL*V MEK1V>54>=1KY-GA" =69HD7#OJWJ@.!LJ=80KF&43H;X>EP<&1J$;AB5JT31 M0]!=LH8=!Z>A<,6HCMT*N"8>$X0>>:9=GIU?ZW>V925?Z&6*',PPN\UHF:XG M8ABI%WK-(BMD(YEYQ I2L'A%RSR3KOHWEPH4K&:4:56P!AVA&D:#9Q+@B'D# MA69ZXH"*2J&VIYR#ZL"R[)B*)\.VQN[0>+.A591A!\XE5MM13Z TI%O# * 9 M" W;!59:EV1@FIOUQD'II'=@:9O8>L+U'?6$3D.ZA5JN93 M;J@G-"CI;&N3WL10<,$*@4X1]T=AJ[^&O:%A&R;/W^NSLBP+5"]IO3AR8 M(#202,YU3IFOU =D/7%"2><1!AXU##A2$B;BO++T/.@D\46-LBEQ_==7$-JF ML8M\IZJAX.BIU88:4JO@*MB-8%IK7>.*BW*UK[MA3#0+U10>J2Y]37L_-S!2JS M<$-#':&<'OF4#(G<55+"@XA\FBNV;'NMP,!&):\W08M(D.:HW/TVF"[Q3F\* M9^4%;<'G^0+^\3B:+.:]Z3W\UW3XMY^G#W>CV?Q/O='?G\>+?\KU6#8(GJ3J M*^5Z*YG9 J7RU4T_:J2Z;M=+)W^=54L;P=DH]T)J-_>83'1CZ[E15/.'C5NR MB7W4%BU>0@2Q4I.)E;)Q48^\'% B") JXNK&VDF4@%^OE5^, 190JMKVV@F6C&.NE M5S/6D+Q$T_;75O;M.(#UQ,MX:#3/A#MO#5I![CI MC.%?:X]/NX9J2[+1F8E,F]!,)ED'Z:++ *Y&<975RN?:49T!5+'$<^ L5F,7 MT@("^LS9)H.K#3,R8JJ@)HPGG,Z ;P!B$OD^_5"18B"TES0U%Q8'#QTJ\C@M M4B04R'GB_,GWEG:(,C&P@3]I [WD7D.7X-=UY @;9R7?>SZP5VY<#,_0R:1#82]LTTK;8G*@N/JT70*5Q3&B2 MIYS4/4$NOW3?Q*6TW"'Z_A<^*XZO=OSI5( M*.4,8"YP0,M)_ MMTT4@P@-#:CTWLJ-1B%E-HO^K%ZPEL(M73-AXZBX.ZC[\*06&\>1/1[]^V!5PKR,33#8W@ M%8,<7/,\P\X@PXI'DD-:8YBH3&'1%X2++Z<+4(K+OH/'G$">I CE3[S\-'#A5Y*0CX7(!6@2"]$5,B+PDMU_>.]WUG E&D(UTV2T<:#N8_]^X? MIK_.Y28A[4BFSSTJ=8'0N;Z^..M_O;Z\NKGHWUSWB^D"W9 U 2&:VY/OH9W8 MNMT^!^A)V]V[I@,SA'MT=-M )I9](+47!UJ9E9<)3IS0(Z.B:= $7"9NOBJ0 M0<-)F-1!%2G=0OTNLHJ69VZ#T%6.:]H.@ S>WW4N/#Z+D8A/'1<\.^.@AC&M MD$4HU0+<@?C/L9L\S9@>'B _@?V.CA>0H1@(LPVB)#@[PU 9OARX)]@+)2>L MC>V2A>*:X 0U!BX)7>ODN 9V_'M :C;Z0 S 7:!4MCW!J1 *1LTDP7&W@D.]CC<:/JAWETP\YN["^$B4YA:X8(E]SJ:FUPE816"Q MLTMPX*D<"VJP1I<$_X[$/EU"<])P5S8T(P=! $*XV.@' M4!)]PAQG+?FBX8N#E;X8;P/U?N^$87&"%;KFV8C>&B\&L0[BMP3?X$:6=@1CA5@; QIZ]LZE%T2F0[[78)D M]--U/E9T4?.B[8YX(,!*E_,G8XO6\H%K)3<6F0?LRVTN,F9T7#<"1Y]+.]QXTPD)+0$^=Q8^6$ M@, BB3LF/"?MZPI!WN[+Q]3LE?B.>:Y=09U7(!V=D_#QNR0C/[0LS93R8KJL MJD=4 ZCJ3L<))@9>" X7:@0D8_41@>.L?W$6 03^(']6WJ7Z#;X;OC4'8>C$ M=5"B MSH8A<5%H*L7!@?($!UC@OHX3#B<4!+%*.$QM?*6;[H>=_:UCH.[''B MB] +=3GF_6BY!"94M]$'M!?<%9C!Q7?J(B:A_Z&#]KOA@"@H&7+:-N'2C'XQ M<*W\#S(M,9@4\"4EPV4\\=V&,W'QTG)P5U)!,"N#6"X8?'<[ M"5VAKP 7.<7H95?Y0],)$1#/\_H:\KIH7!TA8BN9PBGUM?S>W@F&E1P_X1## M%4[N[&+=4TDP1$S=I0BG_GS7JC#^[^S =+Q@XX,:GW;;875>$[GS1<#S*1*0 M.+-7KY"S\. 994A-7T+#=M$A-+5.[CT_7S&H+EFCQ8A*XD\(>,H8YF6_>WF*OG.&D["_]FW,%DB'XR)J%8J&A MYZF8!3XQL-^*[T!@^O9;7.[I=A/ C34(X/Y]:P1V,%T^93[Q0TZ6A$<&SOKP M/[U/O?U7T#]&\^%L_+083R?H/8'%SZ/>[?-\/!G-Y[W!Y*YW.YB/HY<&GF:C M^6BR&*"6$MX:F$;,B@M@[=]=L*.GJ+/V>UX:O_9O+XCVPA+6$4:JY4W4;NH4^D7'1 MY8)0X8R%RV5% @#%>G!17@_0NTG_';^>-/K[\_B7P4/THA*R>,:37T;S1?3" MDH3U(/$S%TFO]Z*2.JEQ;0%G.'_U_' !_'5&D'4+08.1E%P3Z"1;1X/Y\VPD2]]WQ.WG5Z?M MY"X2=+UJ0G5:3>RCI/[22"JKO>P4=O*P>"T0<]& MPQ':AZN^3Z%WUV6]&T\6@\FW,52WWF ^'TG9(;]YGO7==IS(_,\31QUF MP#B&E(L>W+3J=E**GGF8H\=\%8AU;"37_.U/,\(/6K_W%_B^C^[868WA+Q7& M\'@RF S'DV^]P6P&U5V:+8P*NU"K-*ZQE-=VLE.ITU=,:R5UE"R1_&,X]%0= M^'D4Y?'9S$ZHKQ5.J.GCX[BIIZG2-MQ/K5:/ZIO+\!KM64NO4.1.2ND5K8QR M7B!V\@YZAWL *\-!KF^XR0&XU0$6+;LI:]G#Z-O@(;KR@5O<"&YT(RE^W;T4 MD1,P2QY]L"S;&!+T-Y+=HQ$BY!2G6*?&5'V5TN96LLVJ>'/2#WPKC9+AL6_O MUNO[6;^L[_/%=/BW3[>#^>@.[;!/H\E<5M#*?EY1&8D=@3/@H!3]H1>$093% M_8)8D)8,J#-\6PXJPT"FG?)M=LJUAG2[47/Z=-U7P[W%!S$YPUP EPY\U^BY(J32&ERIAF6OH. M7!E'A@]_M4*IQ]$RQ*"1%7%>H\%L LW\>>]I-.O-?Q[,9-P3%4FJ44I\Z*07$KHBWFHV_(*=V;C9ZF,^0UDZ"R18KJ$B6Q MS67D?!8F0Z^G%#WSX#WKWUP4W\20D>I5(ZU<4F=#&@]\A\UFPY7S/#)Y<0RZ M6Q&Q,7]^>GJ(;G '#^G-+OS;?#%81#^%9];[Z>RQH4>L\M*)FC+"313S&+_) M>3YM8%EVC+O=+#.3HU=TYG&44OO&$BNO!GP8H4_D)$/BYY/GV S78S?PN-P_ MYY+_V?MS^NW_.J6"*I(*FIMM))XMQ:D VT6I]4:(Y NG!C9.B#HM=(N99%%) MHK6A+1:33H<>NL['A:,6/-'C^<\)^)XAWO=<^%&.J,\]^?X4S(L(7V3QZ$@C-7*1T\91!J2S#5B-45< M0'W?O$Z<]V\NBP?*PTH;;TZT'J9,);]06@!<;'=EYZC@TV DW<#$BP7ZU&.J M+4? NM]ZU@7E,'GD7ZBQ!-2)I[P <"%; MGYN=8KHRJ^)?EQ6_E)XO4^4/(D^_^@)[MU/=VZX=@@?['5C1%"RPW/^D.*/; M[:/QN^EE=%SMQO0L3N-8JSB=W0HP^4 M_T'G1N/Y";W VAF'#MK:K<[M8]SUSOKE70^7X"=S\SME^A4/??NR #KQ(I\7L.),D&9@I!GDZ(#7F"EZ MQ$#4:>#^#;E(%Y^AZ1!$+WAS71 9OW)T(!7'-4Z1%0ID1[,::V=5+HI]BK1, M ^WPXJV(?,0_]2C70QQEQK[O0?>(Y**>654?\K M@JC*"=DR5X%#SLS.@+4P+>1&-P>N=6<[&[ASL:H^RVA*:CU+5C=/N@\[9139 M-Z^> TD(T)UN8MHP:'M%"$ODFOEY^G WFLW_%$6Q+/XI4]_+1$Z\L$[KR9TD M)9[=0>O3@J(([H#I0+32:7E-+R6UN9[]5=&/['3J<[-87;R!59TK @LP%1RD MACSS+N4@*;0@W8<"=++-B&VZ1+.]W:+_OX?3\VH?RFHP4EX?KJ ^*/ T;*V4 M\)MY6]+U60J*R?6LB\!5Q9Y>K 8A=4,_Y+(0>]]385J9C.?;;?)+!O\?RVA* MJCY3^0B.=!^V 4^;@,^Z!E0$&K%4E6BQ/"A47J)85KCK)2)ZO&:X\9'J9.+% MZ%>%N@&46@@:RXBT/C3B0">F@+1 =]/T-V"7PF,#5E#5#: _J!IQ0)\\J/K$ M6TPB(CR90YO>H=Z&+IN_XASWRDRBYRU[Z31Z?TXFN>PJ>?XJ.;L%WR M6G0-M:@OWTH5E)U;22MA&TKUGJ,?,O##C)#AO_8"AO_X;;=>?@/>RC?>7FW3 M< 8?=E"0++&MDB)EELM>M.S$JB73^'R4G?B=MS9LMTJFN+9*R91=( 5A,E&) M%69+^07 _''EO7^.RGOXVUB$R3_V$DQ^\-OSO""N_2_4DPT3?_>RJ2%)O7A^ M-A&.1Q@1CD?:B1!#DGIA?VPB_':+$>&W6^U$B"%)5#4A):Q8>%@"8[BO%.T= MVFY*@8"#Z=.*;J%G83E>NYJ#P>C#=#86S5+ML0Q;,O;"B-U70YAS\-EG#*Z4<@\\^9ZU,<.I/P?^NVT"C+>GJIG*(A]_L%_Q \%CUQHJVTK5N2*%DJ)MM/% MF)89G,ZC?-;A>@3$U%0NNL5?*R5[6G'D!5A+CNA5=1 Z!IR#F2PG PBOE\%7G5>3W :60UNDFT!$O"=[O5I[) MRB5I%(3V&J6_/WA!$3NEW^>G^U4-[Z!@:>27J7IVJ!?R5R_WL9NX/A$O_;(_/ MB0>- 0!Y;'O6='GK \-\C?)R(F?:]+N+7N7P;@%Z"L6&% %K4.6LKD HIY%/ M&!7)2 $WP+(#IZ&JF@!8T64+8C-*,X-TV+B[ FS[XT9>,_8D>+H\AICI]*=Q MED+FD0V[4=QTTY>,,I=W\4QZAFOU,G/1_QY/4C9PU91V#ZWL%-7T5J[][[W4 M*1ZNP0^B\II$(Z7R^L*!?B'U>T086S.DAR[KSV)/ M/C3TK>&KX:[ %*$W.9*B$^?"-]P@-N&B9E6+!-L >:6Y4:..# /7"Z>D]K3K M4U"B?L'8'2">HQJ:P=(&5N59HHDI>]5X%=E-JY>95R\SL5YF9OHO+H=Y1])U M@-IA+5U=!:C5+VH" M2ZA-D\-/SPS@BKPMS$?$1EV(G C@"@UO-3J8C*&;(F M,&&4N]\=+RSJV:!4H Z3U"O#1 J_54KR]<*H$!R!#E')LK12>(2X76_66#GD M?J^F) ASR\NBGA:%XV_JY&A\D.68_?VAR[&6%O729H\ICNI+_XAVYXYX*?0. M66IN*)EC;9"K)RC).&D(3!+FQ+CJKM3%'(G[<83(F:@%-1G^A%SAW!1Z<:6P MLP?^$%6#-E:MG(?[44Y0Y<4TH5M\IZGX0R-X1?]#;Q2\&PYPH\B=HW_+O+Y /("$ M%UE!OK6HZR2U3&KUY$AW$51]E5Q$Z*1770N5E5:AII:'7!C)E ';+.^'N< :4 M_@P<*X13#2.6):R#M%3Z6.DZY6D^@S1?R\=+MQ(N(ZP!RQ3VT[O(; &<"_PE-I+>?B7:&@)PKF(ZO M=,_[-U=%BT>])>&\TE1H3*VR]V^[YS['49H_TGW"52RFM9(";BZLLN!9Z%:S M9#D#)*+D;3C3?6'I*":J@@?! DXCJ/X5\1:6YR>4!!\+8,IP$\Z>@\?H\WSA M P-:$]N)%X* \D:VII>22!*.A3+\FK!)C\,Q9!,T@&USZ/GH^ANY K-G/"*X MJ/J>(-:667H'9!%(5RUD'G%(O*D$U&._>MD8^\@CL!#FCD#IF,$01Q:@01N_;Z) M;QT0%P?3X3AAW72Y9]X$0 W&/PDL['L:8[=;GJD75B7P*OW>L/U?#&<#%MY@ M[?DABI0?>D%X:P1VW1U1RU$U!JP(SG02NM4^VJ_&*LK2G(:\(K,(Q:Y9R*MC MNRL'I+]!Y>#00RJH6J+M3MWH'Q4!@N(_JB181< L'W,HB;'JG2"[PSKDR\); MP*]6I4L(_N()Y9UQ53U3NCN(1UQ9>/?0D.L*XYE/GD#>'5N/P)8N\+4D(DKC MN6Z8(T0M5U;I83Z;YF:]<9!*1H\//KL^,!Q$_#?#=F_!TO,!/-:V-)<;?.0( MT=DA(Q/L7AT#=B-'>6H_O?K>9O7:T!AN][T3HCOB:0+NZZ,"=VPWQ:QI9@:W M_&!>%)=0%$56G>#-AZD)OK^H@V_1)C =%YO9Q71C'R&ZQ?,O ?)7=8#,=:%& METEY%1=E1M=\Z0C!VS4W$RC?' V4Q1K45-\[P;HCGJ:7)_VC0K= BYKN@R=\ M=\74%. *70]*,ZES;.1L4N?&/D)XB^=?BN3#O@7<\;JK@(ZV'SQ"+$MB:@IP MA2X NP%XBRB.5E_+2^'JY+86P]$4UX=]G=B +VU"-]I][H3L;EB:0ENAV\;# M+"5V%!#EPJ(4^*YWAOP(:C<%88.4A7"&8B.XD"[V1-V&_34;62*,TSJ"I-,75G M:*GT(4NB59AY6;@LOSEV/QC/>G Q>![U'D>#^?-LE*X#NQGT,E- BX+1VTVC M%\U#ZM*PX]Z>K+J%@=1%4O&ZW90&00"B/>'!-EYL)RDC$N'"RL@?-H :XN?@ M0"IPQVW\O"Y>JY'B72?0\G(CEA\'7Y=JQY[;[>ZO/]MP.?;-U^T#> <.J;H> M56>U@20$%@08LK-*'XSEMKT2%X@%^)C&4!MQ[ @@P*DQ._1!U=A]VX1!Q,$S M8L$S0@^U$=-8R 3@4/) CS)Y552?,V/E_(05(@_TJ'276:,,IW5W>FG/0%?55 2@# M8,IP$\Z>@]\7'ST7;!\-_P\0WF]VN'\P@/DA M!G+-]^/%$".']/ 5=/S\PO&BJSFS!)0>.M!;XX>:QQJX?D-)X$IS= GCJ(!R M1LH\+E)QU\\4_U717UM4DE%21F8[CJE7E_,P0X./&("M&*9>T# M:Z8D$GB*> \@)A:HZ1>GP\'>(0.J+U^(;95"!)/,*D5-2:!L>5?FZT[?T<)B M!)"4WX$95OH1L>U4E2.E0/;"9*-0CYN)W+J'[&2T].V7NSH?'FUWI3 B=O7G MPAJA)\Y&]D+ENG%K.]&A>NBYD1F5H:^(F+KF2B*DE0SS"PLS[1HZO>"B^FX' MD(Q[S[_S-B_AI3>0I5^T M@U1+;NCCN1K#_NX*/6^;N DMRXZ)&;M+SU]'@S,[LZ[+SJSQ9#&8?!LC']9@ M/A]%2=#[C_4R7Y/JX_KF>=9WN$U%=2/RK,FX^\C>+Z8Q?BN6%.C:,P9-/#N$ M"O0.2K.EL(L(Y)OK!$'9!^"6T/H=A/ 53<(!N:_-G;\6#8ASAG3 M6DEPM)1L&2HLQ&N)"_17'P!B=')M/R6QPB):.F#4TXR%"*P7AM/WG?@ MS['!/K#L.V/1AIU?,[?XIEHUBTK&8>_'(8H">Z#7<[=O&2PK345DXL M]&)/C'+RAW![3ITKDJ:KDO+FON,VY@0GWT&^'IX$%*4&;LT914DT-!9>&0=$ M.OF:6HJ/[$0OQT,HZT3_ MM0^5Z:O\18-91MQ.]"D'#O[D1J#Z=OMH_.[Y0\> 1ADQFYEV!"5!U!(!3'8( M%4-TQM2>_(FQ)OL&&$=1$EMMH< $+FJN<#R?\DB!MP":+SF+K]CLT*1-+9NR MQ*E(5TFDPTT0>FO@SX 3<3]XM=_(TB7T.")!LW+A6!T8JJ"@2\.!S(G#K]B% MI?PY ,N-\V OL868*;HJ"9_&TF8!3@T/.)F:=2]!J *F('HRCGT=BKH=+X@( M]&L8=D7@0^;QP>0)ETC6[(#"#'3$$&/A2">A6,J ;@*PSRX0.^59=P99=WTL M8,)1SZN,@Q<:CEHQ?)7,N-^$R/^94:?49&UP*7!!= M2B^=RW'=%*BVNF1%,OIX VX 9@ =6J&FH(--8!I.Q:NQ'$=6".S0I.")$@C>=SSYRB MBMF('"SA%# 0:CF:7A@2P8P$1&T?<%9WN=+*YR5R^:GQ='WAZ.GJ\/W>M +% MP/\-$-0:WI$A3;/L\?,_/^F<*5#,@2R6KFVQT$;PW JJ:L<3LY @@ M1'N6&RHI0#:Q5,3BT)%Y(/(DQEE6-552II0RJ1,F@4*5HNBR""8&SY4;'H#T M"$(@K[$$"E62W@R\>\X[-&'R9!,%2>RCI$PI!5.6*#NIPH5;4_IQ#AD;&:)S M$[@&7-TQ-4 KVRDO/)8MDHU*PFU!]W55ZM5&\M#31( L8]2@.!UPF2G6&C8 M8W$UE >51^/#7F_6MY[O>]^1B6B\P=^$6P;DX(8X&""1@4 ')B8F'$JA?D;/ MZOX=O.AMDSFDQK"F[B]P-4>J.H.&TQD&5[3=M<54*P:H5\B9,YY2%HQ=.$<0 MA(@5Z!7&$;J1"- %S.*QHFIA2.FM--&(2&:Z'+V36JSHRS MRFJZ:0>J5H0+"#_;XZ98W*NSFO+CC" 8PV/;:(H6-8@%Q8Y)2 MEX;>>FV'44S'$_"C$N"N"6X]UT(5V;]M#-^ 6SQ@#_CX6@[X&$X?'\>+.,KC M4R_SN5[TO1[4S-[^BVT"02KW\SVIM2$>]IJ[+JU= M70N)T/)@)%7/Z_PIC(5>E:([=B;#],6Q5W&QIMOMQ(C2K?$+;ETW)>7<:.5M M1&FWH0(MQ1W30ER!Z[HI*>Y&DJ,#0"WM*JEX$H-N.#M*B+%;N.8'(^-:X91E MS$2S2K+=+6F[(WO=T09SME=$GHV6:$K:U+MTKGX2(RJ@8+LK=*X'5N:DG\%X MA<5%U2_/F"O%A$Z67][@:DZN>L]R5K_,BMPZ&:?KT'L'/OQS&KX"?V8'?U2^ MSUK;21\$-*15PSIO5;M@$C,Q^GB+_$0,AEVAIQZ :4NPT,WC2I+3^E<#926& M=B,/=>EIC;R'>C_VR1?-VQ1T>T- (Y7*TVOAMTI)II[)%0(AT"$[@>@1VMUPO\3*(?=[-25!F%M>%O6T M2)=&;+W@I9']_:%+HY86E5X2X.:\TH#,K%-MT_PO.A9 M]YX_]*+@3!-]%,7.(2NFZGA-UU%MX9'ED#]BMZ!7J)>ETP/3//3,/VZ- %CH MH4#@!G']X#+H^<)T.KT-FD\OF="?@EXTI5X\IUXT M*;G58G:D39=9OD9/QB!6!V$P?X6P?D&:"%:+C<)=0:*DO@8W"('8Z*F@) MK?C2L4"V(\ZUS:C1!=,J&;K%:]X3H.D9QRG])S9U1^X!(SK9RY S32BB2]\Y MK= <^<:I@G7^X\)O!23:[Q9U7$P9)54YF"9QTH^NF)I>#_6/7$;,S58BV5[!Z^5LE* 7EUT^;A7!N MIBK1-IGK"%RV$O2DW:1.ZB.+R:E6'?C+PWLYD#G[PKQ9[S+6T\#IC>$L@+\^ M)RE2MS,Y)NU1@+.IRLA]0EFZRN#WB\..M45CM,ZJ8L\-J?)=-RC %1(HQ^^(O:.W3BL=+J<>&[,R(2K"^]I MXYNOL'^<%!9)>@T'0,,V2*\OE2^C2Z^/I]FSW5X\4?0S.-5/\5R3]/J@%WJ] M=+J]>+Y1YVC&22;^*?F^,.@!'L.AY-\CP:>HC64MZ$R-^5I^K;CIWUPI4(5, MO0,R"_=.Z?A*IN/KC>T..*=).CX75UDG2W;5IXX)TUVP3JND?QX;7#Z=D<%@ MC:H9'.VYY'1"%\!17C4,*D_MZD0P0)LT>:4D[\EH&Z]PT2Q>P8PGA0(6PE?0 M6\=3Z[F[X(5@%YU@QM$)P2DZ097H!/,56!L')! BG9:PI16(3\SQ&C^G\#=] M-=Y!$["""N57M\_?,< PGC?\0,5S>)5ME(2#6.&5P5+/$64%WIQ!>Z)="STQ M,S'6R4/LW$OQX#^E)/SJX=# 1\:+.2J]:#^#-J9OH[#9R%)Z=NTPF,V?*Y^W MH^JC)!PZ$VT95>S,4@D>C?W&#W5O\+4>6$V@=;SM"6*CJ.&QE%L3/5N_ M@,>UXGE[YCG.O>>C3KRQVV@2:N)<#.XX IP?KX4^K:BM&HFI/L_Z?;V4AQ^F MI2@:023",@#VFG:CF:;EK^0[5[3\YT]Z)E_/*"3"*2$A7XEOKV+%ZE6'KF+Q M_;XT%0K&IU0A*1> M['6M&)=PZ+JF]-GLI&?*GJELPHZ(UL+0T#. M^1%X*SO/5N$X-;UTLD-545/!25I]\H\V=8>II^!M4JI.6JZFEO.0J8H^6L'U M38ML' ?!9G_TEUOGM.7<3FK;6FW5EV=;GR_1YM;-"Y5Y=E"]39EEMQ1G9SYMB9F2 \NR8[+&[M+SU]$/&Z1" M7C*D0NZ_V>$IO;!KZ?M._^:)5S?MN^*5AT'++Q$A%@"16[$R)D?50 M4?S>YY 2(Q6!7ST<9"1&"D9BI?OR"?B1@>*:\;RK$O4JTR#9.F<)_=KOG_7/ M#N$TP4NB>2]>2ZY1P*/1@;H2'B/#1Z_U!7#.$2=:P:7Y8"?X[.'#F8M*5.>O MQ-X,N. [VN-;@:[!*">T[='&BWT"+@G0T%L/)H@1"9TJHDX,0B@A1JKH=\>/G(RJ$;K-\?; C '_KMM M@FIF["XU(@8'"R\TG.SOD9=QXH7_!.$,F-[*M?\-<''CPKYWW"#NEJU"EU'- M]"".W[GW_.1'J-U9U\I1.8F3QDCFM=#PK N%K!'Z]QR2Y\3!+E8U8OG8A2<4 M-[!-D0]TT'SZN%5&&H>%QCH=IJ)DGA'O1#NPWSNI1'=LY10=I-SQ]:6>@2_D M-06Y%O(,Q-E8XCZ8%QF*/2NR5'M-Z(ZOG!XXXZ@*E:[L?/%_%-./"'QVX>2K M_*X10X!UMX'TKRKKCO 9]#BA*I!W MX0DQV-G7VGPGZW+>!:<209SO6-[W"< M<&O(%P$/<,F&4DSMDV&C8_'"^/C5#E]?/0=9/? '[!YLQJ&.&W[<.";@22L1 M 3)EKNUYF@3C/\%E'J31&NE>$/$%.&4N35\<>U6%2<%?.T[8RF JKS>I1$-[ MX0,CV/C;:"^9@S!T(I9 \M$/8D-ZYV09N%:4G+)G9NS$K J=X#'N\<)5'/M2 M8(JY<4R!V4DNT-B%/P10+9'[+_GKZ .)!"!'N6O:CMTL$PB*I)@)-)X,IX^C MWF+PC]$<_3/Z8 ]^L9=\LI?_IM1$H!T[]B349/D0>\BX/%LN@1G:[WLASXRP M(-9!> \@F UG#G&T@7/8YAKC;L3:CYQ7+)1G]U7^ND0A\]QEE2 V< IHR-?T MD # /:4YEA07FEO@@J4=-H,BUV_H $KQ#!%2").H-C-!_A1)[,_L@$0 M-XK&$&,B6=TXYV?7WT4-P/D_>$&0*$N%C8YO?,B";D"9D.+*O))S*/;IB8<, MV0UL]N* 9(TXZ6&W^KM M/M9#7^OM/G=R4+>KM96 +B/9]!XF7N6 _8[B@(8;W\=;LXRCY!7C0HT+,4:= MYT&R@*PY*6O!#(X&&?T*&7 'WH'CO2'S'/YJ"$E L6*NE=DXEQO7"AJL$A\REU[);$Z+B B#<@^ 5#1LEF2YOPX+1SMB12T9 M?'VV.QH32RA(BNXMO.JE(J&\QKG;<-1#!HU(%JA;3:>X6: J'CYX,^SL;EL! M%JI^APZ'YD2*NN_IVMR8>X[ACUS@K[9/OO<[,,,FYD2I2&[!G(B^THL_TTN_ M /S7QO;!W'5Z$<0OGH0OBBC./H]AAS:[GGT7T+T*_"V.:.9 MT(I61:)7*A?WH1&\[N>/4@#L2J$3VQZRA-D)4V*G;A\+QZ3K&JMV TU6,$9C ML/;\T/YWQ.?I,BW_OZ-F[%9LTQ4JWF280P8!5YI%E9SKQ*(K%@=EMN'.R^'- MH\%L,IY\F_>>1K/>_.?!;"358BN26&.NX9I#V5_=?+VXN;DXNSB_O+R^/"O> MD71#S@2$,8*'WX0""1RBF$5[K!,W!#VT)TVN]@#LR-;X^Q6U$%*45CA;^4<00E5;R>W7E_*0^:E0B<$5)Z;.\_-1WX!\[8 MH.EZ\&AI3:P>5VT1X3/PMO'-5W2XSU;I(U:JJ^^H#40:DJJ$_Z.ZO%>!(+A6 M0IL'T@2-'SN(;J8R)%:51&XXRL%#@B?=G)P9T@\O\7M]J)88;JG8-3AX^5.2 M),I%(@I_0-8@;BE/"M$$1Y M3BO*8D.M1$E%G!+^#X(HSVA%66RHE2BIB%/74X&(N/S[)9THRPTU$B4E<4H\ M+4T0)>5>66ZHE2A9]DJY<0X$45+NE>6&6HF29:^4':= $";E;EENF*?W2__F MZN9PA4E%G"[%O8I'\H>T7#^E<^BANKR_:A!HXW"@HA1K""L@TSLC!-,EJA_A M6W?&]M%S0Y3W_T]@X&JU,8QP$'(GRZY>]JST"WW?7L[34[NHB3U'%MXMB"X# MF#!5/X#6D&I(OM"7XM5Y%R\-ND )SX@U#8)3TJY:HJ@QX9Q.]WE[1=(+.,-- M$'IKX \]%\5Y^=%@[#4]+LOABN!79EKZ1LQ;2A4K@X#3/VU D-[RCF=6^0%]93LC-OM GZ.$,=% MZ*$4.%I94DV)):P2 HRJ5@<<^#%B(!>AQV'(N494-&A6OA-6!Q$[%LOCNT8EEUU!?L9!)Y+@_48@%-J34ETQ3 MC4530R1V0Q(AG'MOX]/)9M]27]'4T(B-.5;A+'Z[O06N^;HV_#_8'"^Y;DK) M5I3WI9YB0G2Y8BZ8'2UL?IA"M\,0.XWD: ! 0;M*I_6YX: 'Y=Z!NP$3$!+/ MZ)5M#T2Z%&(I2Y>>8)5$.C!-5%0MV#^*2)0JKKG.@F6B68F+M?:H" * GK<) M#8<,AV*['$_.^FJ\&,P+!U3$_1#S4)!_@.AR'85N88F58!N6%[$^Y2 M#7CL:_F=T0(DT^4P($*6,@5,ZB@6\L)$2VN_\OB=U@//.T4K3M_5#?42-R.= M0C,$4A%W4WL*K-"# C/PAMX]1Y-%;S9ZFLX6X\DWN86E M"A36E93"-(OGEZBN4HIQ#F/D*K(T#ILOB3,?NTO/7$1IN MM\DO29'?#4924NF9)%9Q<./$!J%Y:'*R3 M9]P9-+6O%, /)P!40(N9%]W&L;.OHD3G7JZ-FJ)F%DB%4&NI/,P@=F5D5,O? MO-G&2I\NP>N'*J_&A"KA6Z,+6@_:1JT3!] "!AQ(%NYKJPF20OCU'-N*H^W1 M*1,3X5;=4$TQ&&!G0;= YLX2Q47"XIDI)F5$6=4+LQ@9J;;M.WP#R"+FK MU-HC7FI@6A^ '*G6WB9D*E%$M#4,QFXT@8C:D6.O;3=B'1$,Q#ZZ08*=6"5, M,@X7(3[!(/%[UJZT97$ MKW;XFMXLQN]>HON*( #PO];"^,!@J,%(NJ.+%TO:6C W,>Y<$"J"NJ$7A*A\ M8L0>K &3::,[4NJ)%;I+R4'!-]\+@B??6]JX>^Y,"]T14$>J@!+NLJV4.7#@ M<*MOP(6;KS-PK8$%CW-V$(7&O(/1QQMP VQ@ %5GW5'3@@M"@P7E &IGQ8U= M$VZP#U"CZOQG^Y:Z0X669"%5Z65O-=/P%?@3S_7R3" O,>1.VN.%G7I.-?!5 MLE'VRI):\;:[@ZD.TH:4)\B1XR_6*3<>T9;IV6C.+J!!?^$="V\!\]=/=COP"(N)0PCZ(Z@MJQ( 2;&L2SG M(9F8W.'&1W+ [4;9-KJ#I)[8% 9B_,O%P(-N8/!@&R^V8Z,'.,A8*#?4'1"4 M%*>HT"FC_)OG6=]MQ\%=.26_SO/C4CM?"9'.5.YMG< J61WDLTG%!JF?S E4 MIA(7X[OM-EM\\_;F1 ETAG-ONX8+[6MGEU2785_DX4Z6OY@US(GEUQ6)Y<]/ M3P\CE%L^>.C=CR>#R7 ,_S9?#!;13WOCR?UT]A@]) :;1Y/H);/HQ=-HDXI> MF?M#S1),WGG#,;@EJR7.MAE8;EP+/3SQY(,WP[8RCMR*&5/U4TKG6\EJG[O6 ME&S!94'D' ;&[CODF^=O9\;W1\A%E-2'VP8JV^J%$'92-7QI--&'Q'E//AQ4 MMM43$_2D"HU&DX.):"..]]]'N)\#QS%AQQOBM MD>97SC]AT)/O_0[08T4!3JO)C0]?LW\[*YXH&*D5FB8CZ48AT=_UF^-M01KN M47?%0.RD&U!:4*W>"8.T0CP WZF[FZAOH-N &A(L;9'B805M)=0Y$ZZ@:4% MU1J>)%BQ<&*XN+Z^*YX5DT%XR:B\_+"0I(0C]WPMR]:9>BRM8N M^OW^"F^^YYR]UKA)%KU::^TZ Q%[147LOC 00D0ZI;'[]3= S4ZSJTH5,]EC M[%6I!D',YIESQHP9$?_^WY5EIA; ]73'_N]_L#OT/RE@*XZJV]I__\,(;+G\ MG__[Z__Y]_]%D)3>S[5K*=51 @O8?DIQ@>P#-;74_9S60[50>NJYMF M*N?JJ@9VCV#H7>8.O_)@ ^%;T/Q]!V.4]GGK07@+G0%I"K.*%7. M_TS)*$VH-$XB= :0"*E2))+!5!S!%8 30 %9'-#;/B8^Y!7DE^W]##Q$D^79 M?V\FOC_[^>/'6/9&=XZK_=C]$ WY9M?8U&WCON5RN;Q;C5PS:HVC*/$C_'D$ M^;%OKCB![;OK^R>BUAY0[C1G\6/WXY/^5Y[^I/LEL>\<^]&OUP1E BP9T6W/ MEVWE_C5AMZK_]"V[QZ@?VQ_W3?65C\ !/'G)?D"Z#<O$AV-=G6;>5.<:RH(88^]*BO7F(L M1CP:VKZY"\8O"H+^ 7]]S!S]%9D]9Z8*]./R@C\\H4[W'!+'TJ]UO6VQ>^"8 M8+%L-OMC%6KCOE>@J,=?#W]XJBH'NOBDS_#7!ZWZ#:6"FG*:J=_\^G<"9/77OQ;PY93BV#XT2?^]\<'*_[%E3/@P N:!OOCOS>YW MQ%_/P,V/7__ZNF^"7__^V/^[[6KDJ.M?_ZKZ(N7Y:Q/\]\:"JJ?;B._,H-V9 M^?_ E_Z /S]IH^K>S)37/VW'!F$#??4S[ VXVS]U505V]"=L4'!E)20Y%=BZ MWPY5481_2 +DH"J[JB0*>:DP:W>\F6>,#(16%DQ?G7F# 0,YX_VT=1-2Z :0 MV1%!JVT?C"?Q8PE#)0*30E%+4L7$IXN@.N;61GG68N<,[:=;-RE;MN" =P;J M)^M8ENZ'EMQC;)6%'4*3#TV_#KR;E [5J12-7;)]&0Z+\[[-B_.:Y/L@A:6BTUY M^4!3 WHX5U>>C"@?N)&^2KBT&U/'>%HRWHGB*; R"[G*WFH6>^'[-B;;J-9BU3$P78 M$,WDU^V1L)2(<,P(@F+0])]UP/E=;/(PX@+\QKL?KVNM6JUJH=$0@6AWQKK+ M<4ND)9'A>.$KJ L.M@G?X*A/AUNFO?'2U&M#D4X7@_Q R> -RTYHQ$AP,91JK<8#\PW-\S4'DP M\@6@!*[N0YO$+&3=E$%;6!< MK.I^S?&\'3*AD?5!*!5^7-!MV$J'BN1X>LA';@5=GJ?#WFN0'T_,7T$6.L6F M8(_$:BVM9A"=*5INM,@>)[,#2!\^-U38+<6JH+ M.VV+GKV\^=7$R/R?&(.0_K8,0[2(Z/ 3C(!T*[!VU.X$*[7! M@!:,,9!_S= MUB!UT?P!PIT?F;HF;X$\@WP":@>RV-;XL0"_]<9;[83JZ/IAZ'+/705.7"05 M?A.-!,-03-(V>=JEBAUDL@2NL/>AN:N:> M+7T='RT6*-Z:PA,NST=]@BEU;Y3-ZI6B*.!4K3'F2H]!RJ2?9UKKQJ MUR@)TKNTU! ;8,M?:>5JC?.G2]O%V7UP0&'T@_0^S6!1=D13?W M5O$1F!US 6'QM,VN@^K"T^K%AN-Q=,/EM64)7=C%H_%!&2+8C2+H+AQ;&![L M X(V''8'3O4?7#MGARPX-&P2I@SE):!+XCPH4'VSEF]A>.L-#Q\%)D#E%\"U M=6WB[T(*6PO?*SAC=TO*)\:^;]E),U.W9GV3PCFV352'O?Y:S+O:8Z_0D]TP M)%[OIQEN:/XA^R(]V9O_IY/D0DE%6B76'1H\T6BG^Y,!YZY"FY2MGY8T>?6( MM-6P:R]6S-G1,$]/S/'^;E'V3UV.6BI_'5H MJAT[2HP\QF('A@=>X*ZC@"G,GCCVCN\5 5^1+*E,N)[ &(U^VE;= 93^;D@@ MBG;VGV < 3^/=>"F(FZ HYEBMEQ]FLIX_O"^.P]HXW8#_;@56IO?NV;O4CNOS^.ONK7?HSW(_IQC/Q9I'GWH]_'&F%*@0P3 MX.@]K0^_W?-1?6B*H5'"Y.DO^\_[E_QXHA.OJL@+D/LL%5E1BD+63'MAT(UZ M/CLA:5X9,8F*?%Q%\(NIR,Z*$$]4A/@T%7'X"E=,TPXG(NMR(J=2D:'29KA6E30YQ%8*]8:2JPI>HB*_H2+OM2*?KR*?$HML MV11Q;#^9F.;)-0O2OECT"&):**P D+0K5XT#,I/8XP,J42Z/ED[@;ZHHS8XV MWJ*ELZV@E:C$MXDU#E6":[73G(KE @YOHEV9+H^8#9M8B>\36QRJQ+B^H.@9 MTFAPPD"LKY"VLPZP:Y^9G%4ESAY+O)B'_M/XLB,94[XSXD>P4]X ^$#CQ=6U MZ\)9XLMM;9=_Q!GL?SF[F-O EW4;J)SLAFLOWCY0;/7P =.;E0R]#U9:J9S. M-M!KGT,Z;YL[N1,*41N-5Q+3;2GS;6.MI[E M)>':L?PJR5]=W(H26($95GOS_@2X83,73$).+D#95AP+[-?077U\=F;?'0OYONZZG9J&3.=K+2<6:\TF M8TTE)KVX]L3-95QW/*3];L]MCZ>%?&LA=8Q U.FY,L[SE'#UDK^XYSZ1%NA] M!1_6QSF*LQJ;39OMLP2V/+DYOBCQAV5>?QJVL)IOL_S*'XJ(Y;= 5;8:8_O: M?=H%PA8L!E)^(6P!:4^I:Z-:PRBJ!;>G5*5%G[_V^GFXZ6(8>7#N2+Q2VQ$+:[PY;>"/=\BRAW!2%Z;A<[=3:395)PI9X M:<'GEZ.4[$ 7!$>74<'.4(VI/D<)X=I7$\_MNHD3I1<_*N87?/=HU.56/%-+ M&[Q.%-2Y6G?E7.*[KU# KSMOLNVV:F.G3AK(>N$HO6%],5EV\)J]:+!7V*SK/IC9G-3>HY,_'>L5*#]*<[[S$KE,;>B-EPN%SNN=EQ1=): MUP[X\SOODZ26/LEW2^8:$\DQSG#5.A:P&68SSY+7#NPS^^Y8R/=UURVUI'ZK MUN,1CAX-I$ZI8O,S]=K#\,NX[GA(^]V>>Z;1:(W.SD11T#=3R6Z@68*^=H!? MWG.?2 NP%BNUG;PP%JO^>$:X.K*NB]ZX]CWSNL"4.\GT] M;)$+9'W%HX$ALCD@\M/J,EU=)V'+]4K[W6$+80]*+))K=L1>O]%?6:S(D\.K ME_SEPY:3+!?\^3ZTQ;I=KE(7[M^:/S234653F'4LWG:MDUZM@V6AU6C0%PU>JL>NVQ MUQFE&HL5VT.QUE&%LK,MDS38D5Z3B4JEYMCQ1_9@<<4+J^;::U%CE*PJ4S1\''MUW?^UDDW^:[ M[: ]$M>-E>=E\2$Z7IT<>N_@Q>]N3G[FNTZP.9E9RJX:'C7X+ ?D^:X>GO\9 M*4=X!*77%L0=%JQT6@8$J:VY8#(3D&)!D[GXAB-/*'R<^GF%Q.N8-AP&F+\C MS45E6O4J9:YG6-D172^*#;18CFWN-E;2/-7<_BI.%8Z9@D N_;SGVNI$ZL1NJG ,68^9EB K019Y9N0L^D6CG.Z@#;2G M=?F&BM#S1N9"(6BBWU]0O]\Z&3)T'>$QW8ZIJU'#,IQP/TTB1(>Y[^C@3'U_ M+\7.TQA]EK;5LEGE6%HU)+=*(%4J=F%W:.R/D_D0>[]*YV?&WEYLSH9\12GN M4R]%X&BN/)OHBFQ&>K&[^%(2!8D0%FMJG1UV.7ZT**\JBP:AQ:^N/Q3^B^3< M_-K1\U,4$B$?"+G,23UW;NAU04"Y(C%LCK@Z6_ +L4N3O%/(92X1\H&0BSEI MS,RS D_B4Z[:FZJV/LXT*HMK%7(Q]S6%_,K-'7_DPV="F4^7-!B1(E8N<#M4 MARMO8BG\V/KPRQWF^XI2O,N'X_TT:KG930=%1@6Q:^8QL8C'4O@7]^%7*F3H MPZ=C5Z*R)+K@\+:B\[D\M2+B=[9_+'SXE0H9^O"BG<;P(:^A!CM8Y$QMTEKY MN5A.Q2[NPV-W]OJ[S75M4%\,U\-Y7IRSDX6RSB_\@1++58S+FNN+GJ;^1T*& MYAJ3;"%;)Q95%#B;G.7)5'I )>;Z"PD9FNMN=1Z,:(RJ M[F7R*,L:UB@0LQR2OM8IU&G-]94*&9IK)V>U;0&W21$?KHMX,(5A)'VM2#ZM MN;Z-(W+57COWW:HKBC<*_8; :FWZ@5V)G:JY1A6*7[CF5"@T&0KEY$5: MEVQ=EV=T[.:45Z="<9R"GDJ%NO-\3S>GM94A$V95(01.,J__Y(0XJ-"%KO*C M#AP7ZP)5]PNRHIO[>/A1V:-C+G1;>]IFIQN]69"W]$6E)\XG%90N9-&Q48^M M>3DD\_%&BU?H_$PE>+K1@OK$HE5*PLDC*T2" FP9]G0_S>%6,]T%'F_7Y36! MP0?2SXK$?UL=/'Q43$^]C5X+KU M#R<_3_\PJ((HEGY#_VK #XLR^/&6U"V_']A-?I8VUB9NA\.FE"U6.QNW9@2U M627FJ=9#;7P?L[Z<;F+I4#=.; 7T'!L84O.WI.IE=S0()I%(TC[A7YU5K/M6NP"F_=4 MP+U(XY=*T;R(\ES@Z3;P/$:!\P$O.BWMWA$5@67)36<)7&'MA9Q[YGF*@>Q" MW02/-H-XN75#]@/WZ4;D@F[+MJ++YOT3NYX8?=07%*])I,[M;$0NQ< MT%Y57N#5UA&]P*P_]SQO /)5;E* M?,\I^)"-N"?R2D3Z*0 U=:!G$3N/B[SIL+I.UM+%5@+0&%Q$]GOX[.OX:.$@ M_0+*$VM,9PV18:?7*<_SX_/4IX3"D$#W04U? +5LP\XU?60"QO. #V.(NCQU M7-:4O>?'?-I<3A(EK38XONWY+] M*^1?B1JCOF!7>RHV*'10 MH8UFE@.D50#"U[+XET#]9Y^&^"DE6R_<^U#R1HHKL7D!!5,-79F@B_!7?P_= MZ>]]N'BF[W.+L5Y0CMP00PONBI]S>!',W"[:[%1 ;/-VL56.*R^S>D$Y\IMN MPR-R;)\3BEYGT"PZ>3JY8/YCRG']!50O*(>HSML%L>+,1#[35,E\>8)UV<2M M?%0Y+KXMY%-7$TO3EE";&RB!\AQ*SI%%L>3:L5.*V*XFQLZ-_)$RH$[-F4\J M:YY#"G96P)=!=Q'/8V?CIPQQ=!M_I R@0MMC)TUPJ.Y-Q-[*I#MN_-Q%;)7A M0A6T^P0%)DG!H-=JLXL\%W2U0H,J:?UA.@XG\S^:EV/GFI>_ PD\?!O\R=9V M*O*\Y.(^(-FO8^S;W2_4=( )%,>R EM7MHF-LCUV9<]W R4L&1" N]"5^R3? M",V*H+"T&JB54SFB7" 0BXU=L/X>@+W NC\OP'B5Y]N%HX\Q_6OF&RZI]-&: M7=E6 \CQ]3,-'V 541IU:VNQ:)/Y:;<.?(6YRGCBDAK^"H>_ICK__CSG[#:\ M8*B.1U6',L=V4&>FN1FM$\\CCN*LX?&QX;$\4>VB-IS=N21D M:36O)AI^'3;\&M,39[?A9",89'M5=<+)"M/HCARV6H[GX59QUO"8V/"X'K-V M41O.5-OX>&60.4/NS^PRMEQ92B71\"NPX5>:53R[#=>=R91:&&H&I?T5ST^& M!3]/Q*Y@*NX:'A\;?O%%MMC9\'D'R:KEDJ095;D/VJO.I VXJTS'?T,;?CEU M?C25/)Q8;@OT=M5X#VKXY.O.TGFFQU"^"B1^^X*V[AFY=0[8RL227>/I02Y1 M'6#'\67S[2X.KE#=#^"@[:ZOL5+PV(86= V\C-%!WUID&O'<0W_(YJTR'N?S MG^/@+0$].FOFN81.\O+#NV/?D.T)I\1/\'7>*?&?0W'BWF_?_3@8E>A 3:\- M%* OY)'YCIX^C,D..O =/NT61%[:C->BM%3<<2S#L/=A\H'A9T7E"Z)*P!EC M"$BNH-KA>4#XQ./&4"QA. \1R.LI>MSQBD M&:31H.6R3+W&=_/M6&;DXHS)Q$]>:EWGSV>3X1--UU$#Q>?=W4S\78F0#P-: MD$W@[>Y3;@#_%!ZV(,X:0H_N&.LRUVV.]84A3*\7S9\P%0W?=4RZOY^%.8'] M.*H87]YXQ+-.[:/SWZ]D/LA)$]M0BUH#73/6,$OITV807&^ _BFSYL2 ) ;D MTPT(;W]%\\'QIL"YA8 W6)ISIF5$*\5TU\Z[S,>]D!+CD1B/&!F/1SF%KV0] M0+/*25R1'HF6!P2KQ0;6(Z0+683?R M%XV#7*KUQ5R5,@0F/QW(9:%-QG-W^,MX_9 ,O@N"7Y=[ N"8.O,WX%J53/C: M16?!Z;FY;W<=@1+CN:,T<:\)./\8G#LMT64S+#F,#+H>[O"/.4HIM[#.>HR$ M&M52?0TFXW*CN;HRI_H>UB=P_;IP?66WXO==!IR#C49*:D8R+*;.#](9R139 M*\[C)\N 7WDF'"RC@B2+GQB/6!J/ MKYN&JX@SN;VS^+>Q+TFX#S-O#Z>9?>X,LR-5%P8H'J?D#I='-: Q3UO%($=4XO=-OY#LL-42F6H6VL=XQ^N]UIUPO& MA_15S*"(4//16.^UNJ+N5*>F[M2)D1/+L/5<&:@$B D0+Q>L5L@\YW+Y:M\ MZ<9T/?7=J29?KVN\#!Z38#5.L/QJI1QF;^(&V#I=$1$I/1_RRLA&9K%45Z+\&,9%R0[NA,#K25T4Q#+(&O:0&F"QM U)+=@UY!ZN M#L Q\^5OP#4_I9JK^5AO&;WBJL)7665H33)XW]ON#ZYN.;K7/.1,?T)UJU.%51?>YE611%*:2F6 MT(QQR>8WJTKYP(T[Y-,;Z*\:A^M:+95HHUG74"3*O#)FQK:9FJ.QRY7'8 MAL/S:WE J "UXYFGC7'U9A*W?@<(LG0U&:[UTO05= M23'U=T1E4IVY[TR@6 M77;8\]J&E%*/3HF)7V_WD8$99WO*'C1T+L]RFZ! M50;()R]W_"CC2 2EWK\DDC[+54%[TY'7%R%IZD,&@H>_4RWB_H>=$9&\R;+> M*Q1J(BO-IG,DBV$;.W9&9 ^1)V1M+.',<+6_)''\N\[HKMR9M MHB2):Y?(B#YE3SO]V)4OOBGSYW2=4N:7 _KC@Z2@943?)W/LN32($^HDRQ["C92BO"YULD<^%;E!& MSLH+Y(I#AJL-T:[V!&9Q;4 _I.N$H1"&7:S(X86=9F\)_<"CCY!>ILVT[8*! M-](X[:S90B5S?4(_FT>_Z'XEZI'0T^^6^8%'U[AZJ6"@S:RQSC1);@;F+6UQ M;5'<(5VGE/E[/3IQ*H].//;H;\O\P*./&ED:6XPPS. !(Q@;'\[-Y M] _-Q(_O/3@AK?$,0N1GMH#B[9)7HD66JU=.'H6]@U.Z#?D!N;HE M_K%GV__RV\0?3DX+LNYV93, N?7]GR4X4ME5)NL:6 #S21KLODW9G@6^%S7 MGJ73'G59![(7N"!4DH(+Y@&PE?7Q_AZU#,LY ]?5;>UYQ[HMVXHNF^4H/16V M?=)9W;'!NBZ[!O +P0,XR S3=DC@#[+*_PQ0+\C/K-SEG7MTHA! MY4I:RJEC.N\N8^L\$WQ>%SZOP('B<0&H*'3H65M6*4[)<&*?Z=0?JR)ER)(_W:0,T[%O!\76$==^; J2S(@Y%_@%G6 M6Y8&W"@[%Y&V[P_-S@+E]-CFF1/,_B%FWZ445P+?+XW>5]SL9MK,C7Q3;4!_ M6Q06\HJJ[ZK2%[ 3?[N?'PE\;I^[QL.=_)^"X6R"@>='V\M\[V"V(2 M&7]5R%[6RR:S65?*D6VIQ;1*-LKW')(L\[1F7?6 M;4P2M-2&7OO3D_AO:\U-%Z.&NJ7!?CF/J MZG;+JP\L[XD2\K![^).M"=O!/]\N)?APNA+^D L\W0:>MV_W\MYF[]7-S8-R M3ZCW!SPOTB.4&AE672#3L4LPA[N>CG/N065>8-V?*^ZK/']A,_.K3+^20.3, MBOO:GMYJ:[Z>>A6Z!0EL>NP2-''7TM_9P_NM5?)=.UFU%<4X5$ON MB+CF#0* ^V,EGH>RQEDW_VCGZA4KZ7T.LA%2&XU_GR-S4:ON].L9D>Y-=*2_ M&2FS]E7JU8LT7IE B5A&<..2M6G41[T%9W5R6,"65[UI_2KUY-M'<,1U*^YK M$1P83C6+(XFA6/76A6:VURVLXWE[=9RU]/P1W)6KY+LBN$( 5M2,;@\,&IM/ M^56)LWIN,KNXG@CNHDKZ<@37(*5Q/1B:&"=HO54>)S(U>G"5GOG<$=SI!%JW M)=8<(Y.UB.@9<=*MSG."&;LM8Y]$_5O'F\3'!(]GWIJ;5N6UN![(\Y%ND/;4 M3<*#F)O@^!SE@L==P1U0H\OZAO!0W'!131-[@M!)8HPK4_#WGV%RQHN3XZ'@ M/3>-TWYAI: "MI8&;6-0I2>)!;\F!8_/5<-Q5'!+!LW<9$!B8H^U*Q)F.$*1 M3%9*KTS!+W]M)%*M.MBM65P#$*R@19(W8J>J MQRA^=$/8:R1_JVCV,U6EQ[1-?F'[ M Y'VZ'%:SK6LP3QV\>BUJ$KLXL+/5!7',4J.F$V3XKI+LPM ZB4'Q"Z-=16J MD=@WE)0-3,*LW[3@GMP17Q;D78M//!!FBT'BNA@ M;9%%OT(1(NBM9X9#6T;Q]*>L?KC"!$/P[ E*AO;6HFR/'=>*="JW9B%K-<== M\^-'.Q6?5J^7@*GZ#GP@^NGP'(FF5MR 85KD>E:]-\,;!6D1O]M-]W;CG<0_ M&)K7J;^2,J-3ZP"AS>LLV1Q1G)5+\Z(S3_N@&=N0_UITX),V"[QG):,MV]KV M2I/H:D3=UJW V@G7S-2M6=^D<(YM$]5AK[\6\V[L@O0P.W5/Q6VTFJ9LF: )W"A(LY4W1=QA:AV)9T&%DWF<+C'T6!B#:Q+Q;Q#] MA43^ 4FW&5/4>X6Q;M#C90XM53T>VUR+'XN*K+^C@#G9M75;\R#QPD1V/P)M ME7;6):Q@C$4ZQPEL ARN0'G3@>,3*OO<>3L;S@.]U MG(?4]2M=?/C6^^:F/M>*^7::"YH5$FA&<4748FL\WF+:HTSXHOHG+P$Z*TXYE=6V;"\J,,NPUU8"*7[50 L_XPC-VQ71?"9ZXU%[4,W6? MYQ"VT\I1?(OFT=@%FPD\8PK/^)3AQ36#L6XSRIRJ, Z'+.1 "RHX+Q5BY_^2 M#,8[-/T#-Y9_\N75GZ7IYTA?5(@N2@NK$1"MOKK(!//&<)./;?HW25]J%]_N+A0PC/^QT! M F2'#'M^6%E+Q=E]<$!A](/T>5"U3=+\B*;CZO:(7"=6Y;0A5V,92;P*'=VBX\OL.<3]/B KX_KM%YA["DG]Q2" MD^_T+8^;?HKR8E!E42R]5=[]A]>5MP9\'[@>/][R:2NL!UF1GZ7*(Z.0R6XZ MT[JA>Y12(I@QBPBQG):_HLKO8]875&PL'6HK1KU#L9\W/7TMZB?O(@!T.:,; M?JME"/I\)1KUHD/ZL9W?QG@707S2GJ_/-C]9?V9T:],<-]4.)S,=9-7JY^3) M,':6[MKT)PZSMN<&2 4Z])^:;'(1%?<^E?%-&7ZCP/G%%"B^%^X>E>UU3;=T M'Z@[-7EURE?53==Q_%T'NR>0IFM;OM#LH,!H3^K]25LN$[&+!B%3?CYCRM9Y MOH/G-S!U%U-5KS'6$+ZZ+%=6D\B,,!IA=/4[Q\4>2G7!)<'.6']>ZFN^2J>G') MH4I0=/.Q ^T^#HGY);BGOC+Q4R3>;JW2HS8V-PU067CR0BR9[#RV4YV82_SD MUQZ_(?*'>]H;C@^\0V$/1J7AJK-8HU9_/=D OMK)@^N%]QOD?E5@OR5EC:SE ML)(<*!P_IO,FW_:+>?UZ(7TI*7_VH09#*S3(MJ,03:*Q6X0:%<*6[L M.&RGOOA<]L #2A43GRZ"ZIA;&^59BYTSM)^. ZO.X1A 7A^L2D[&$GO,L.TEX&M;RD/MQV&*U6V*KLJ='1YJ3!K=[R99XP,A%863%^=>8/! M0RF!M;TZ]Y?N.22.I:&SR._?L?]I_SE\R1LO5'8+WM+4D]9>7:KU4;S.3S9Y MH;OLY;2#MX9F;/_,'[S6"S=D>E)E.N2Y3MU2#7TID$K>5Y%,_9#4'0RC9_[@ MI3/87NJT&X*37ZHU=*X8TH";8IT,TGKAE>$3'W]A7E] K8IDN:.S;**E5A>I M-E&$SZZZ#:U=S 4/+U6C!QYWUH!1 ;2DCON;4C]X/OPR#VS'@K''D6[?R^$G M7?QX.OH/2'_KTB3>30\#K=:J<2SP)S0JM/-J^E 6H<[M'GE=&#_TU4](@!.X M"O"V'R= 5B-HPU'^^A?^)^7Y:Q-:"$M>(4M=]2<_H3WXW__,9%75;0TQP=C_ M2=Z1Z8>O7%V;W'_G>-'1A_ U)G1T"_#/S9->%1/([L^1XT_^L617T^UMA]!, MWJ$S?__=ML>'+Y^.Y. 5VQ\5V53^"END_K\4'CWY]S]0%,@$1+WAF3L*=O9T M.$^HPL*7/25J^]4++XQ& _N3(PE*%(TJVAT%D@DF0%2)@UD*:.@F325 MSLAR)@M;_Y!__3O;OW\,C1XREBW=7/_\3WB:AI=J@&6J[5BR_9_;[3?P7P^: MRO%__HE:>_H&;,<5FDM$-G7-_AG6X@!WQ[Z?Z)9.;R;;3UZT?13^&'U:;ODR MAQ8?/_Y__R> H\<^_/\)^X+AGGS7N/8NA%D S&0UH M_Y7OS*+/AZ2-'!?JZ<,SJU1TUGOJ?]#H?_O?PPZ(4/;/?KX.SGQ8HB^\*)6# M0W_<.QU[TD9'Y)$^-NJ;7V*CW.'R*:'#=#@A]>^/44S'*7"LV"YWRG"03".? MXOILB6D4N13+U^ME02CSC[(W@1#T'?LVE;]C[Z -I!J9L.0S>PQ6JO*-$B9&P M1/,FCVY-=&#.\D]^_8H M_ZK+KI'B;?#W-7%F%YZH%$&G*3PK93$E(Y$XF96@TZ4E5!E1*,#),7T?GFR? MZ"C2?-XVIP8MU@TP4Y BD>EL9LT65%ELU](/]P?L1[=SP8ICFO+, S_W?SRF M.!SW+B +P[H($[;_)!:4 ]]Y&@A&WSP)U0XCM?";IV&9[^X'MGLAMF6HK^Z_ M7P#7UV'8N&/_-K;8]4+>H<3_?BR*W>OV8GD41#[JWH%=CDUGN1?(_C.R=.79 MSY$+9 -90C:]&2?OXIPGX:<\@C%-X#\//[>1^^Z_OOI> K/479:^4@I_^&XH MW\^2Y7F _-0;;.NK_GNCPX<\H, !.^9(-DW''SFKFQ,YBU8@NW!@YKH-9H[K MW^QQ7F9+\_F\T* YG9*AUE"=^&OA9T"D!S0$HLIX2U!3W)?R+SDTV3 MU(/Y.>)//E-%SR*XELBT.UR[-DBUN2;?[J2:8EL0F48GU>%3,,;KA($<1J3X M=@JC_LK_G>(+J4Z)2ST*_^Y#/X;MA#]C68)\8$:DS3\B4_I9)+WL0N(4]!<< M-^5/0.I>+5/-*">8XFP5J*DS.MD7L?E3#P"^U3@W-+.;1/D MCT*ZB<-WQ[-IIX(B#:$S*:1];.HM;W[QBN^$JRL$=IL*7W7"Z.T39Z%QTC_' MO5 <]['(+9VA1A2AT!*618%$ A*59((>2QF"IC/P+U0>*\\CMU4M0"E_2'?$ M@!&F4MU:Y"]VCZMPE7.ZYL;Y7@6;R:90@#Z2_(.JJ8]>Q M4O_G?S :_>?\_TWYSN7>G427O[-4D#VV4A#UHP+%V=K-, QSW)_[E:OGOYJZ M#7X&<(+DAG\=_!R]\F>T^ 7'P#J6I7MAZ56JH,-X#UJV<,IP\NST=NM$^,KM M&Q]-9_JC3F-:Z2%=U,H+UD!#NIJC+>/!+C0J6$E3](FSX7'+?;\O(+"TE.0:W?3F7:3DDT8(11AG#?1E9O]F%3=FYGR^J=NAP) M1J:C&/\\K,D3L//MW.%_/U\81N_PHZOOS^) +'T7\NKFQQD7 KB5K/BI!M3W ME#-.M8&F>SYT#GY*]E+"#"AAO92:TNU4V?=2["1*;_Q]SH3&9ZT:9++I#*&J M62F+9U&)5!08?)%D1L)&M(IFJ1%-8>#YW'.#M@QA,^3+(JLO4*6:)ADCJT%C M@CYOV6M4%MEN9E8VBB9=2=-HE]FP#&R)?_WUA>P=3EUI^OT=LT?\CL23R>.I M9^M/-0H:TTOR_)P+.EOPO%43%.\IM!>>*#)SG448-GU^6GD;@I5M9;?M"786 MG6'"AJ>[N6O64<']?'I 6DH3 M4Z%GXP.#"]*"GNMOEK66%69]\ ]I*48@6)9,8UGJ=3W](YNT+60\HPS?$[5& M^$\Y;HKW)W 66 EJX=S]_<5S>S$Q;(RJNL#S=O_4X#08>Y00&7H(Z/=GPD2D M_?RJUAD@^*[VU MDR<+_^3=CK.T'PD57V>+W4E@%45DD<,4%!]X+;45#Z&V'<58Z*9Y/$Z+P0"/ M2O BX?-.Q)'CY-TF?)MN*X^+,[AZ1_&)T:HNZAO%LOCQ9)Y>QP2\==E=F[*M MQE7,9\9ITX$J8P[UV: RMIE?8R&EOK&%,3(2&40B*XNG+VL6'19_0JF#I?[Q4 M!YA@%K)SM\YZ&TZIS2"<^*5"8'Q'\_@>5A9@: ?GI^%RVFUJ]V'O=F#\LO^J MH'M07U,#($/.ZN-P7A,G7(9-;<^=@,_(_G-BE_)3BD)RM@_OZ/W[-E+(O_!'3!G!V0=L M- I/K D?BMK#)\.A[#H+B]F\:"312$--S:(I55Y[=R]GDK<:K!X88B][:U?#CU4,KWWI<\_F_#.2:!]]<3'K[G:77AUZX?.94%"C$& MX67IO@]1"5VLXKN.'>9ES74*+("[AFX6 EM6H@E)7O;E;;'3,]OTT,>W,!YU Q, :/.!DR'BX,WOVJA0+=(?R2T[1<[R9W$"GS4^+V> M$=\>RQ:-5]E=V7"JO'CH7]W]O1"/]RHRO0Y@=:[&!4%!9<6L/R9:K3>XSQQE M^>\[C'.XBL93@W,!53GHB+.XL4?MA:U1VCYP;YFV'^^-SON5\J0; MA;;*&(TX%WBZ#;S'\Q8QU[)%/&,AQGJ=-32S*8'.\J@R_K87_SS=/&C)O63P M8\7[_2B+T2!W-R(\DD&I6BU,7=:@T6IUFB<(2L"RF9/*X.NZNY]V*ES U=5G<[)=\BB%$7_) M?Q\-9E)_M,OORVK(2>?A463N38!IWD?1?T'%B4+D[6:'UR/0EZ>W<'KX\6CG M'(XE)/;0ILF5/H-6NLJ"6]?*3C:SS.<([<)^Y?,GL >'N;PVB%3LL;7;SX(" M>C0:4ZI$R020R%$&E[)I!4@4H9+4",I@3!^> MX2"!RS&)(.[2Z5>9],$:[IUJ7K 4_T\W)G1TWXSV)'*R,DFQINQY[]R3<$9L MQ6GWQ0YHURQR5XY6)K:.^R_O[P\+_.1V(DX"WQF-*Q;X?MMQ!/'["!O.EWH3 M'7ZS#=F!"]2G[/DC6WCV#0X7+]W?WW,+YS.14;W?AL3G&<_O9O$)*I-5H2C7 MQU1)6>ZV-[\6)(>',81+B[ZC&+>I_X7>851J)KNIA6P&X/>/H#EW4!2G73A/ MK??W4]*=[=^:_GL-91OL@.A2.,+1A=)]JN::SC+-2-,T%_2T;&8SLW-.L05? M1KZAJB%?!HYK;,WIO1M\4WV_Y#ZWE]?9X7OJUJ5O!O*T'D[W]4R9\E>>G9E'EB!)E+L)S4^^^ M5QWF.^(Z]@D#GX4 /U,[C!8B/L)VX:T]$0H_Q5QU>!HELR=!!A M 2VD$'V*\=WE8A#1V2VH>;1%%OT*18B@MYX9#FT9Q07L>=>/]]^;9N5:[A++87"^+9[=&WGUG<$'\]^ZQ+=([=D_->#_89F9Y+WX(4NU696"X5 M_0Q)^RF;2WGM[<\'Q>Y0>A\E_KS'$Q'",+H^+?7P MYS_WQ^2\\TXV#+TCJ.>7LNV_?./HGMV:0(AZ'(M.4SOO,4D?$M7E;I.[.=G= M<5F40$$ZBTHC.J-())&1)9G"X7]4=)21\7%:4:C=PM#E;XIBVD6F<9LJ-]B[ MZ&(K0\SCC<5_C^S_??- ML8NV'*BZ#]2_'UBZTW(2!<2(R.!2AAK3\!,&I(Q" XE6*%H!:@9-@_WQ]/<+ MI7:]+1+C*0@XL*@9K%QD\6)3.[:DVJJW1LU&WQ)$>I:C>CR9DP(A//(^\[SE M8"6 <@U5I\8<;WFVT2^N!]$!A0=]BG9;+P5#8H""N6%),[>"=H=AKN^@SW3> M6R'52;%F%+E61>]Q(]%N+27BL$_.&=4H;9BMK ]L*6U %%53E? M+%0&.LH66"Z=;I"SCM^"+0_>WI.RQ<:\[.2SJ%W($\4E;'E 4L#;K)2? MC#>&KM+9,DV5>[E"V.O-L7YCTX(M#TDJZHUV+C^@>+2G=5FLYZWQA:-)U"%)]?6$0_(;0D+Q M8<^I3"KN:JHM)?JP)48M^@._O-3$=68TMYIN=M6Q-"E]V+*/R5J&YXLD)PP6 M$VDCCJ8U=REE#EOJ6*VTI,KKJ;'.M;--D9?D@=R2LH9>#I@"?D38CS^8BDIZ8OBMF\&:I%<[F#IJV*X@U-O$9P[&X0'59 MO-)HTTL).W(RYS!#\RW#L674TDL"N;05,J 9"3NB)KEL/J]*'7QDS&O%:F=( M&[P+8*]'V,\T&VAK,Z9=$2^UJ4RN5%E6(:NP(_ROZ>5*@^7]A5&D)EQ;FE2S MXP8DZX@ @N:BE?-R',OI5C=7=X0ACE!,V/1 4>4%4I4E=ESDBNUBOR\5&XC! M1DT/-)75![(@N'Q7E"U9:]2%=6G:UL*F!ZHJSQ7.ZV"9J8A7\ 8Z;TS8!K<, MFQ[JJC>@:G5ZO.FA;*^]0#4"U=-=2-<1):AGE,E8FVPJ(MU&*+O;]F8M@H$S M],.FJUJ6,ZJRN*KZ;;"IL>TE6@2X[$^43?$.9\L%B,W7E1AMT21^ U65'YJE$2 M#6$\&I:"FKVQ<#C8(_ J^F-4W\QK*EI=^DH?=_TT"Q4&/V;=+,^=&G1U@-(% MLL4&54+/5F"O1S!3YC;=[L0?,@:/#),QCWT6"LPZE-9E>-POEQ;35@N MD]U$O6*GO%P00>_2F0R63E/_^R-U3]@=E?[3VVNH]!UQR2L%O]F9N!,8@R*P M P7\M)V05_>+4^B5G)+[Q06!W:%8(H@8"")]]TH172*'Q#)]-T$DEBDF@D@L M4SSDD%BFF @BL4PQ$41BF>(AA[=*7A-!));I>PDBL4SQD ,:U7HD@O@L07QP M^\J;V=:S4/UX;?Q3J\Y_-U(_ =4O;\YZ1(WBF"&)_[VA;G[7P62CLJ@3DI;Y MP[*-SL0%(%5WHM,!N>C4C ]N4(N15'^K/NLSA?VZ];RXL!NZ?1I9O^4WSF>M M,Q^PUHF%3K#\NN&^X(;;/\4ZK_C.:'\D&H'=_M;FXT0?GMKV1!\2^Y_8_QA& MZ/CO CMSZ<-3_A37X5:RZ[7JB93?+64BD?(WD/)G8?GDQVID$B%?',I?.>PZ MJ$%]V-7X\W\4!8#Q^,R4OR;4-M?E&B(G?*J-OCC%?S#E^I,%N4O3_;\^@9)H M1>L"A#RR3%%%^.,=<<1N5]SVA>\]N$$4\E)AUNYX,\\8&0BM+)B^.O,& ^:% M0UGP^ T*\>@[$]N2&P$,T69[];(,% ML -0CI_H0-/"@7X'*KW25V3'@.B ?4CKRZ/TJ"N#_*9>$CW-S. MU9:H[+(UN]3H&+T@W+!%0$--I6]1-'-PKD."[P3?";YQX@F^"" M[P3?OW]HVD7QW:.ZB[+$I%E#6*&S1=O*V@S.0'QG;W[1)':;1D^"[^WL^M)Z MGN [P??OX_NY_P8:N?!R&TP3^?&F3/'BNC0>+"^,;[-+BKA*5]9_2#1SFTYG3P'P;6;ETHK^VP#_C?3*60EC'2^Z,-G=*HEWG6GM MB]G?RR4_7\KM?YI%OC!I,3#/YTF?A CDQSLC?<3PIJOR6.DX)<58#PVT6!!F M57G#2%24&,'P6SJ#G6[BE* X0?'70/&)DR1OH5AOE)3^FF-X@^W-BX#IEY=& M<0E1'*8_2/*6PM$$Q0F*$Q1?-!7R%HI)?U:ARDW"XFBS2#!US-ID%B&*LS>_ M*#)S2^ GF0-=^KJR!,4)BJ\HX?$6BD<4-FDOM&97K+)$!2F TF33"U$*.L,Q(=IC?@O(C T\FR<(+=!+N726N\ MCMV>,!AJ_))V4<%:R.PHEZXM00MB-TQJ9&]Q(BGI2+";8/="R8S7L1M0G3DV M[$YJG%7EE6"=9_%\.3S+/GOS*TO<$NG#:[22!V[BZ4U;]=- M>8),KDM,(\8ZTR+ MD>OZO# 3^?X@URLC"S##6U(Z3'!@Q&TV>\))4H+N!-U? ]TGSG/\-KI90A4S MJ!:,.,15NL84G]**':([3(%@Z5"9$=_;F%Y&^S9 G62=.RCT2='\E=)\X5_+;Z$X7"A/?PK(>5VV9.EL) MLH8Z"2_IC.I \%N2/LG:8U(&M%),GM M)+E]OE0*/P/A^VRM;"N.!6J.YQVQSMRX"ZA-(:BBK(;0D^&JXREX>#$R 8TS M>DL0>+*XG& XP?!E$B;OP[!=M5L0R0C)69E)'1!:OE\?,G"(],TO.'VB3[CG MY=*JG$ X@7"\LR+O@[#8FO'E+)XOHXACSVI.9N/S1 M".-SR0MU2^ E3()?6 MY03#"8;CG?MX'X;17+U;1WEORK&;#,%(FUJ^H6MAI(#?_,+)VS1!)O4B5U&<-&"D;)C7H6YH\2=%M NH$U%\)U*=.;7P4U%RQ@SFB*74-H2Z1)6FS MUO(K#8*:OOE%P."*2$"=@#H!]663'1\%=:,R%$S?1SN&9\9'C"GR;2^T^=9A^TB#PX*:-OLZ\QL!PIGZ.&6,. MBELY3Z8 TF7GRY"\: \0=INE3K(DFY3&G)2PK7*D?'FU/S$E67%+1SH"^A/#UJ@KDXRI)-3<*P,%>3NK4T(AG .*V$RMV3FA/F2!,\)GK\&GL^2 M-GD/GM$LD28&A7D)G0M@ F:%[G@]BZ+M,.6!8;X#SN:92W<-[E_J%N2/LFV M@P3FWXON;PSS\Z17WH(Y.FXBU9%74T2P65FY;',\1FJ1.X]N$KY%LR=QYTD1 MRO>B.\'YB=,N;^&9*7$,H=_>G*MRFPF5FOI";W MDW^B]XG>?T?Y)WK_O?4^69G[7G0G>I\L5)V!L(+CPMF;G5("UP6VLD[YKFQ[ M9K1$FI+5:>#Y%K!]+TF))CFE..644G]==SEO=# IZU@S%TR [>D+\.AIPYML_TXPGV#^6V'^'/<&G!7SQ=;(67?XJB32"[/6)Y;2 MHA]H(>;IFU^9(_LR$\PGF/\FF#_CM0)GQ7QGT+/0$3G 4:OH4%6"+\_+F*[ YO ]24";4'=A8F9A:R;LHC$R!0)1$/ZD+* M TK@ZKX./B]52A@=73A)'9[$]7DSQ,2\Q 9'B7F)HWFY8#KJL\S+ MB,@/*"I-S$O,<)28EUB9E\MGOC[+O&3: M2X,#8GN("LRJ4=XXBEU=1>8ES'71IXE>DDJ.;5SYU*TJUR'# M3SVQEH"V3W4"",C+^(3_=9K3:B] 5@S.33E/[NN(97]DL9\;ZJK+9E#$F-10 M&4&*(I97K9&\E+!T=/@A?4MD3W@J6@+H!-!? - GSC9]#-"6[BU;)6^ZYJQ@ M.EYU&7;264> #O-&MQA%)7A.\)S@^7+IG8_A>6U6-I,9L&M)PA=IO-G.0*IV]4E'1QS4\ ?=T)E8\!FBO6)SA-^)JX=OJ]+$&LUILA M$P(Z2HUD;BDZN23B^BJ.8G-N8:P8D6QT33:Z)GJ?Z'VB]XG>)WJ?Z'URH$>B M]XG>)XO;5[>X_7#-7ZK)M5-"B6DGB]O)_K_8[?]+SNM.U#=1WT1]$_7]'NK[ MC=;IOCB1WU)]DT6IT]&Z7V!-T5'_.=G3E23K>.I-'%^G?B"&E+Z_I.")?CPF M=.8")"+UYE?JC;J#O+[051!5'7@3V06>5#;14JN+5)LHPF=7W8;6+N:"UF>7 M^^(?J#W@9->&;/::P!7",48HOZ\Z0.^K#E;-;+XXP$IE$9^5E"K:;19PHP5' M%-7YWJ&'VS&2=8K$8B06XQ(6X^/UQ*>P&+0YJ=>YJLD8\UJ; 8;LCYM<9#'H MFU_H'8DE%B.Q&(G%N*S%^.V*Y5-8#";=KHTGXK@M!CC?T_WN2.CFF=!B9&]^ MD7?HL9U$R9IP8C$2BW%^B_'QDNB3Q!BN,<;'+*#08D7BV+(PJ8QJ48P1U4+? M48?G+"?+Z=>PG/XL]Y37S< ':K),H(A'K9+(Z$GGQ0FT$^@_ZV@?]YLT,O0'_6;17K:$=J&C&G] M7#^#65,K@OXV'Y1 /X%^ OTK3NN\#/VAC73ZQ)0DN![:TU2#MO,2IX70S][\ M(NZRITP%?Z,"EXMC)(%^;*!_WOS,R] ?HP+@F;HHH7A64K(T[G)U-X+^+D-S M2K>?5 >=+4/SA.YM*\0$8S]Z?;*;,=G5E>SJ2O0^T?M$[Q.]3_0^T?ND4B'1 M^T3OD^7VF"RW__/&[O4>5RZ6.EP^Q72Y-E/DMOO7A10O=H0.T\B7&\5D,WNR M'RW9CY:H[U?[A9Y.#F_5Y@YY:$TFW.L,ENADC$&NM^2X$") MFU\8<4L1QXH1$AN1V(C$1GR:C3CQ95=_:B,HLV5X&TRG# MWBV:M .CFF EM M!!W9" (_R74YB8V(&V@2&W$!&W&>"[3^U$:PI7Z_3.9[8V,^TBH&M5!&4C6* M([);&Y$]X95:B8V(#V@2&W$Y&W'B.[G^U$:(8V0Z*E%UU^CU^04#)%>1K"B. MB.J>H9'('-OUD*R2QWB5/-F4_M7VJ'RRS;XT;?$PT!=-!NU >6"GCYCHA3MM M-'7"+J# YURQEG?=:7P+V^&9U/@!V8UZH9NK:VN($ M9D!FQXV)5C*8$.S;O Y%91.P)V!/P![;],P'P#Y07';=F64GG-QJ6(1>]^8+ M/?+LVP1-YC0+/=^H_.3B@$C _J7S+!\ >YMGB_(,;ZPXVNK,"T9:%O.YR+/O M,BT4>1+7GE3K))O+KR6MEFRZ2C9=)7J?Z'VB]XG>)WJ?Z'U28Y#H?:+WR;)Y M+#:7LXQ02N7+W7*>:^2%Y'KTKY*5^XX'0,;T,/>/9.18Q[(<6_ =Q=@.UU8? MSGD$B@G_.7;0X\0>JPMI.+/$N<=O>I!(L5]L27@Z7$U'[X@TE:RO)>!.P/WY MQ[6? =S.M(FL=4'@Q>J\VUX5'#+3ZFLAN*.SVXFC]S8DX$[ ?6FRX@+NWUXY M/P.X/<=L\>6-QZ!XH5OR,X#IKXEE".YL".[L:3QWLEB>@/MK@?OC*^5G '=' MSOFV(63;HE#H(?JT-L^W6TP([G!U'+W+G,9U7]WB^ ]?AJI[ LU4 -08=S_4 MS*.U[>VP.Q.0DA7%L>"@UI!#*=OQX;N@.%.0'!T^K+FRF9K)[O_/WKMV*:HL M:Z/?SZ]P]-[[G+7&*_/E#LZ]]QP#$>^*B'C[PN F(@C*1<1??P"KNJL;NZJZ M6TLM0H,/?LNQ6]+5\+T+PO+ M55S-2LF#,/W!.OWHX*]2SNF%^3JQ!-]^M?+^4_J+%!*@I]]G^+,)ZE:P<90D M,QSCOQW+-:#E,:OUNF+^+E_P+U0ZZ-;N^6OZY?F3-<=0_,QPET_3^XK<'4D_C1'&Q, U)] M0[$A99%^[M^*$RM)\+QY5?["GG>OO[_N4ID42D@:RQ#_57KQ?2:-@BC7RAYZ M(; G;#N6I#S]VO//\HWIZP^]P,H0]F_?<-*M8V=DHW\W;KXNH;>YW*+\.6:^ MK5BY(*"4Z6\?^"2(;S_\7H(%P1S_,=UPM']E%*7_4T+SW_SW#R+[0?;?=IJO MDL]^])/AGR6KY+NE3*DDI6(4*6L+'95QA=!DQ=!4&:,T-/L_B<"+3!V4CX+3 MU[+FS+#!],NE5I_]J\3T:R51JHJM6HL9MCBQ]#5U?OUYLGR_QO5%KE9*OQ/Y M;JO&9(UDJTR7Z;-9(UF.&XD?.-\<<^AO.\)K<_]7S7-2QRI(M^%TX_6B0$F= MKG+)V&M&.L#&\$NYNUA*=U_EWU]Y>-*F"HDI!(5KLJXJNHPO#$.F*P@ITPA* MJ,H"1E65>-(FY=E;VP3[WF030J[=",<<++,MM;%B,O?R1\I^E59V@;6P87;7 M$@G16MX;46:NP, M16C%,E&DK,QW^WT=G^O2UG35A)2-:15A9+)(V?6= 22LZQ(L&MZZVAIM6RAA MII0%CH83;@<[TAB".T/:K1K&(990(:4L<,0DCHS7)TT5;DQJ"]JJ5QOM6)"I MXJ=;JV1/B#(^XZ)N19N+RT%WZYDR7:1<]H,VK,TGL=1HKVJ^H+28^HR1*R?& MQ'B7:>@C49IT^O:T*M=K4"W. I0"J>AOW#K"5B!ITJ4&B:@VG:XKR A2)#7) M 5NK8#X,=^;N&.IK3:6MIJ3H"9$R\S6_7-(FA\;TEH_M"KH9IQ/ BJ31I"MV M=78UX,CY8K>J#V;!/$Q)3RR^YK:,0)^-!K88B?-6G$8SDIR:R(G5G[:WAVCJ M#1!NLH%":T1.8ILV9>3$\@>48XFSVH:3H%Y#<=2$I_J5= (GUBIPB:0W02C5 MYAL)[(R'T^VF)V2D!54A^@B!]0;SO6U9S&JS<'U+WN:C%G2EYJG*P)SI(XFG M4@P81.&\%J5LG5C8@6WW9=GMD?:V[XWK6FNYX1@S>_2\0)K"I6?JAP#AUGI? M8&RXVY3$_/6MXA(L=_ZNZ?<\:8W'KKC8]?K-."0;D#[$,G9BM20N@?6FV.$E%F9'\]FZ%8J-.,LG M%(T;V5>&KEMOVI:H&YNAUIO!54'&3LAU;'-A9#)Q+"4'GUFTJ&""P^FH)^2Z MX8+9M$/M-YR"[-:HY78BHL[(1'PTF; I Y8D;2IFXRX M.I@Z/.DPZ&85JD@]A3?LQ!)TD$A@>CW3@*V.!.%=7EM'-28C+:CV2)79IAI% M,SA*2#(>]*RF/^F8"\>+GX.&Y[_G[QW^?8S"XE1.;T8_3^'H=PZ[H@9>=A/D@T.A%X2_ M%W?_Z<'7ZQ4Z8"$^:"&0OW :+,0-+$3E+Q0LQ"TL!("F&UD( $TWLA#T7Q6P M#N=;A[=+F7_-:;V5K/E%4?=B=^J+7[_C)HUW,A;SQ\-_$\;@OZC+GA33?YC MYK704PW_R#V&E)_%<*;B] LO+'V]=<5>W9^NOJYMQ8T4/WEU70$8/2(8?5_8 MA&SVI;S$XB/JFOY4J;.J0@!-[X*F3[7* *AN ZC^A,E'<*;^);E*I*?3U_]] M+S#U[JB'_H6HYX'\K'_UO= H(?\^!V!=_8+NJQ4YHOBRE.4<:GUU?J]0,9^E MM1Z/[V."^_'X!GK^6'SGV=*[9?L>W.Q7BS&EX9#KCTH7V*KN8P$O=MSR*9A\ MZY3U4S )U/6S,/G&R=LM\7B'X-6;-OC&UD[10GNV &G, [ M=P+/<2'X:N'+^^\ ?[>\+QG9^$9^[)[2E-[;4#N[*ES?#$?!)K!5&R*U'3/5 M-\%L]D,W;2:0^<7+&_]RVT%7NZBSX!*[M1'8+4.&U._WRL^LDG'U[ _NFTDR M(:OX?G:;=*PXD7&B:;;3898SGJE2,*G$4&L*'?H6GUUBR)Z^H8@R=K)G-@CZ M@+U?-XR[#W/_:NU&S9KMFQZ]EB;,?!)H.$4OG(^W=MWG<:2]\/_DK+W1E!N#ZKA_(0\/3)F?R8&/<^<.IB M;LD+XSL!1U@0Z=!F17 PWQV-O1UC=]HZ(^>= C$,+E&R"RPHID2L[*K]HZ7J8 M]*L'%37MB;?BM'VT$IO+.+7TU'/!J3*&DI\N(<*F=!DO)24(#) 4N>%(ZLQN M!P">RQ[!/-G5Q J7;!2D"V+X3&9BKP*0,,69@SNKS;G&*%DN1ZU:K,NQ7,E< M#1POD^CE/0U@N#=KN""SN'0C<4 !TQ2MJUTB&7)O=^P#$BSDRN57G M$!C\' "G5=M,6GW1D+:06QFTW0K)9/T?X?SP!B\3%"@< 0AQH13*M;F]#X"X ME,?T+GS0V_NQ4)]/.9@?=0],/"*Z'IKC0^HA894R2ES,0[J=:Q8C?L1T2^"R MQ2.&;B#G\A'G.F^@$+^3!!0AJ[S4"9<0!U&JZ/AY0^O42Z$0JHS@",BO/*Z1 M@OS*Y0]DWC#1)FXPYM30&QP*:9@\=BOH.HHS$TT=!0)/3?0]D<0=YE+2,0>^ MMTEGF91+&T?),BBNGM^HV62%-J!T!!PG@]*1J[L8SS8ZR"R4<77NV3[[QBDX MVR^F!SH.S28W:9L$L9U5A3YA9N]B9+4C>.IP4" O FP=E([FPY#HB'/G\\!)(6'^!1 M/!O4"4SQZH'7G!K$Q":;?-]Q&'Q?%?.GLE+O :7+,+@1\\CF"=(5%W<"7C%. MUUDMQJL0\S@%]<,N4N]49I20&2?Y?N.\ST1%RTV7R;2R%Z^.51X@.?$9 I8' M:F]X'ZAVP8NXSP9\S,>F(0VWUYPH$_0KD-? %<1

M82N)M/&$0#JH-F.P] MSBR;4:YD[:=!,@-@PUVWA+P/:+C@ D3#[ >7DVPI:K>6MC MI.R_(M4)8!H0MKYK([VNS78CJ>\S7-=KYN^"YRX+2ES>9?GD.O\0A@U2+1?W M/'[)K&-GV!SN=O6>34_-Z#64D&+N_^8WAJ^$J42[AA(8.2+P"RDXAFR, MJ[\HR3]5!;O'M*C1I2JY94L8R0!LC@ 7JZ-5$/&,7?"OS==]0-J%+P>=.LBOJS7/0JM-KG/8F_4F MFO0U,H6LO/$L1=)EF@1)(F#:K[@OUV;K/BS[LE>*3ODB]4:'L0E\9QMU;KUH MT9MJ8\QDAIW=):K0913]M&FBXF.T+WT4\(8C.+!_B&*>JP@"*/YC\7V#E2I_ M(H=[#[^[+:;:ZK9&+4XL,?U:21SQ;*?)=VO<4/S_2IP@M48S$):# U[PQNFG M9/(AU!6\<7H+[V6_V&G.NJ%WAJ MHR39DQK.MXOO-%<,CP(6]XV]4HK9*K%:;$Q:W+&JKV>3=69)]8$ M&T]O6JE+18(U"@8V!^D"90U906IWF,Q* MCPV)\?=8Z1V&MD57P8\,O63L-X8;&*" _-Y=>]!@\/[]C,PBNY:2:ZQEO-(L M51PZZ_#@27TXV6^WCM&4#CR6NAIY=T&*+F.5R_<'NK;" T._T]#\/NS\@H[* M^\U\NV5J)+'4[*3?[-=GJP;3<,S,S%-?A4;*U&=H+?BS9RF=;Q("X='O%UM^ MEC=@3M52@]LA-_"VY3.2)3_'L; GA'6\.8SAQJ96FV/88('OTYCKV,Z0@LLD M_8[W=8'M/ZKMGRBV!J9__>%9XM%@=A%5D#P48W^'H!1>H, MD]/P+.^*B&-D&?F ^V/75G5@XB -[0=KE,X1>5RMH!$':C;@MWTSZ!+ -];ZHH=A< ML-E0K>-&"^IZ1.JYY,T1L7*E M(Q !- WN9S^3FO(@*.3J8U8VT+DKB#]]WN M.)$\0L@0(;LR7X:QBSDZUW;DWY&F >F9B\=NUT:)#T[?7)O=^P#%C_"33F A MO:9J57ZTL+F(43#9G50CCV)D-.^3B.-P&7E/V >P 6 #:(!XQ_[2"608^<-] M,IRV IB7F\MH@_7\Q4[(D"%/"%%EM/(Y$D(WTT7H(3#ODS-Y]6M*5^$:Z.]G M8?+:UW?^A.E/&).S?*_7&O6X_NC8YH?E^Z-6O\'UV:SQ3Q:@_RLPC%+?"],) MT/E3"95_ [_\SL];08N&C]VX'H_O1]5ST*(!!%.WM*+ &;U^,'436] G9_(A MU!7TJ[MFJ/2R VK&-D+]]R7ZH%Y=!L!7!#$1B(F GH.8Z"YBHA^N? _\Y]?5 M@]#3[')IH_BEG>)$1ND_7S\]K%D[2S?RL\-@J?A&(+<#_/=[3Z&?I-=>S7ENU%OKMA6+N%8+ M=8CN_7F-RI^(+Y=5P$3ATO-3D])/BHU>$).FRO82;NUW^Z$\'Z][<^8M[?D# M[C](=][%O.$JSD9T4,3N!);7H ,&]6KFEW\(&"[#\'O4YLA_2?GZ.3>J-U!@ M:)GX8L_7 \-]C^Q:01#]1&Y86\GUCB97KW_'%]F\3 DFRFTV2 MG;GZ]T;K]3)[@JP]=%RZOYOY'W+0V$$B5QU,8"CQ$;+260]K*^'D&<;OSO?X MUVR@5%JI>3O__3)Q]?2C+_\ MW[[IN=YFFN!W9JE.3?J,=_9LXW$ZBW6=0-.,4Y#=HCCG!(F*QJ/TL.?+($ MP2^*[I406:@WNV-I9 72FET*BVB#2>ZMAHCGXQJ;TR1"]-KYZ%?CO\^A*&]%U.H4.]21174OL4RC5ML3/FWW4R-#L#)! M5LH(7.R'E ?>";WA+-:L^( C'#",Z0DN6N2JD; 8MST: X6B;0(OX\:]"+ MM$%)"4N\%GIJNGEA2+F4\99+L*VXD>(G7W]8+J6_N3'2@7:&DX 3T#L_ 04- MY>[\QO$+O,@]VQ.7"^-%8@7CAI# 206K#F88REL:(V-Y4W^TC%&@F1PP[QNM M6[@/Z[Y<<]PWC;M17>YM1>V3,!0($++DHUYR$#+C)M]MW'=6UL&D'Y8QHCBE MC6+ID.66-&5CA8H#LKB?/XM[TX'0"BNQ5"T/K M@]H!%OGZR!#"SG(7I'Y&WHT?(>DRCK_C61%@N9_5#)A9+ MO%6MP9V@L:_BDQKA6;G=9KWT2;R,T.]X]>O^3X"&1JA8;O9VH>*[Z<>"MPM! M^ .R&U?U0YY-DGNR2$;3HG7D9.=X-6-A:=:IEI.'GAA%0WV'2*2/;UO!V*RR M4U/&\O;Y*$F6,0QD/(#)@XS'#3HPOV7P2>!QK:BQ'< 6VEH2%!SU:P?$$U?UP= M3.,13!XJ2QZ6VW-[)61)+Y2HI#YKL5;C3H\$?TTL:KNJ3F)YJG&101UVM+P8 MKL(X$PM!$V6*+)XP?ZT^N.X1X$-LCY^E[^L@,!HF<*+;RN^&DE[QPF?H/ MFK=.@Y"EX0:ICU!RO #DTCY[__(;ZAER;;E\,O_DA7GSF76S+XV[Y::V;G13 M"^\;(;\8*?L4(5/.T\\X 97KR4KI)IP8P E4U491J[JKQ:D7D[^ 0)3)2C$Z M 1U6 7)\5!>6:XOE8R%7%,+"3("ZHX)';GAF!FN)&]CU F*L7\ MWA][6+?3;>WX6-0']5S[Y*9_@^_GG?N4\G9![(8.,"[F+>6AXC(U7,,/N&V4 M:O,)/.-(EFA5C8#G1&T:UA;-R6&ZBF6,RM_)1.DR=>)&"RB5 I8.'L"\%>_F M77;>UZIH,)4/36XK(,R@.Q#0'L=D=IZ=3%;@<@4[=>/O_DNKWN?2O'C_,G]Q M [25O6X@B*48HGN1ZAC7P"C-&9FT21=)DF02470(N+9X( 6%SOM(4NH^A[7:W_&RKI4E]@)34CE:#_O)3TBX.TXU*.ED9) MT;+#,\5-LEOY;O[66-9+)EUB*_UET\]OO?EAR5N4PJ41&-FRI#@0&'KV71X! MY =Q"\M57,U*R8.L[\TZ_>C@KU+.Z8V U-=IZ%:P<90D6QGCOQW+-:#ET5E\ M_6-^=_;94._%4=W:/7]-OSQ_LN88BI]AR_)I>E^!(AO["41A^+\N @??*Q&* M%[0(^W'J_\_+N7\#.TCS',__^QG17C#U)'XT!S?3@%3?4&Q(6:2?^[?BQ$H2 M/(<:E;^PYT#T[Z^@F$FAA,!_8<1_E5Y\GTFC(,JULH=>".P)2R''6(1_T]_^ MGF-@_@,OR&^X_.T;CI)5H&6C?C=>OAZAM[G<8OSY]ORV0N4"@%+!??O )R%\ M^^'WDBL(YOB/*4YJ_\HH2O^GA.:_^>\?1/:=S)$7.]K3!QY_])/AGR6KY#@L M8RA!+1!D(6/$8B'C"PR3:16NR!6JHE XJ6G*@LS40+FX8;PC"&6&#:9?+K7Z M[%_'\%.JBJU:BQFF\>C7@//ZTV3Y?HWKBUS^(J7(=ULU9L1EP7+ZQ_&U2K[^ MGM#Y^IS4^6%IU.32_P\Y+A=YO]7G2CV^/VJ*)2YELU;BV1%?Y8;?2E SLO0; M[,Q\?*_UE;]PXB1S^4^L;(?-+.^)[/T<_ZOF.8[B!^GFG6[77A2D?E;P[YMD M)=]!Z&]NY:ML2:X2Z:FKJ7_CY0D!%H2&P2B!RS"R(&5<;.=!)8"5V=,=$A\R2NI'RJG40+>KP;XBK25-M=SI8#?$S)02(7\DA:->X$AS"N,F(=XP M8QFN:;0IH\6/)]G$QVOM:0?NQ$T8CME5N[844DK\1TJLL5Q/O9W=D%A\QGD= MHN\G$N9"-?O\(OO,?CMK.(Q2LY6%HZNKV2%V MDYRT\B-I?47%TTK?P;B$,$G6<+<')IT 5I141V*2-#H?M6W#'KG\HCHTO5&< M4A8DM>XG;L\E.5&*^IV%/-4A=22E07Y14@XBC!:N0>I2)%GX=)ZHVS6?C5F4 MU"8.]F-5F'2EK0H[,Y/;D*MI-M&BI(B=/.Q:/";8D[:VU\01WMYB^:@%27F- MZ:0_,Z$AG"B[1J?EM.JR;6:D!4F-16>:B,O.5N*5>@+A=&OKU 4Y-8NB3!W5895 ]6;!#LFI2Q(:C"IMI+M M8+B6&H(1+>.XUNSOLT\O2FJ'L<$XK(UUF*U*JPG&;AOB(1NT**GYO@9+!A[T M;9[A)(%#6W-2BS/2@J1J T.2AGMQR6U1PEC7VF/$:^<3*$BJ[2'8J(:1KAUM MM;8VZU31UC"6B:*D6OB.I'Q_'TJ=<*;T.KB.*V,FI2QH7V5,"E1;H8?P!*XT M%O79OMJ#LS&)PI+VT0[2"QLQS&]XQF1#1UE5,TJZL$Y#'ANW]U3'CBA+';3V MK:;3RRB1PD*QA +[S=#G;)1QH3J[.<@2*62DA972-8A;]6V8D$1Y%]$).]BL MFZ9,%KGOKAW!;8S&EA0=-%.N5N!F-=4HLLB]8P18&)'(C$.G@Q8Z4=;)/I43 M6>0^J577H;O5NO966O)[2*HS5IQ1%KCGXH:+S2KDC+.TIC25)I92B^*4$D$* MMC?266G=7G9A\5!AG$[%H9A5QE)14%&;&W;65D?FE!E:6)O&:5$83%>[Q&66!^Z'&""O9 M-C@I6AVZ56DOR[MF]ND%[N=LE=YM,!V')\/@@ _(QM1H9Y1%[FT<'NF+$-=L M*^@-;,E,K-&:R4@+W*N(.[/H4.O UCS><,YY3"8 MH4PR8(E.G%(6N'T*X4ZXWC5=C M)IMI4?71PTCHFBK"VB(A$,9RJW!C-Y8K1?8E9\M,)BNZ)UD)(LR;R7R32B.E M+# E38AU1!DP)$$:3VAU*Q1[%)-2%IE*S-C;Z"$GPHGFB!N%]9=K4Z ),+5QCI:G,3A4R6*R],=0P?#$PQ>W58F41.ZFSIR6:G MI@C#")>,9V:PJ7I0;R5DI 7]VU$(K2*ZPTF-47^,BZ-)3UGDHQ;Y\DU#Z0Z[ MO1XLSE*U]I7#%F7 5BO[S:1I5.RUWM7-R(^G&I*.BQ9E<)A.*NW%")YS+!\UH?K. MIE=>3EJ8P2Z-QNJ#);>6%$%LLS78E?EQG)$6)J ,8*$S7$=#KK.4$*[>F9*Y M3WO* S1M1V[&O6 C->:3H1TIIL$LF9RVL%UW1:F[T/RX+2D#:J.$TW9G9Q_' M+>S7U0.BN.BL&=N6-O3ET#25FF#FM(4-FZ:6J$)+<%OB^ S2VNFND)$6!3:2XE6-[0Y4R9 7+NNS,WLKY,,6!:8QU= . MVW(:AA"KFE91 A>K'L!FPA11.V[=!*J1]J"P/0F7UFDH0)B M&PJ_:LZ))D32Z:*=<'$.;2<05SB_EOB0,ON+79",6SEIP>D!2MK-W&XPNHS4TIC/VF/HRW)"7/2HI5I^ZT4,?O05A1\WAKU ME0V>NB[(*3?'183NBMO5:C:K1G"$*]J(Z1YIBU860]T(-?H;.W(G!]NWEY[% MI_(ZX>B8R#+I*=6]8Z^'EH6L"C484E*H[?M, M1EIT=32$B]>KVEBRY'JL>UUNU-_F$RCN]LV!EOA01>02&&UB0W>'S,1\ B>V M^RF\JE+!O,FQ8E^+,&(D'^!\!D5Y3=$Y*[;ZASZ7:H%73ZD1&[OV/'>4LQ:G)$69$"0\:2M6NR>4T)1AS:$Z=EB3EJ404/'*6Y( M+#B^X?7$34>S]RTS(RW(@)V(A&\W8%':6MJJEH9.\P&6CUJ4 99N-,*8<@X2 M1.L]:H]C;"_;\T[Y/"3?< 827<,EI=VM>D/!K6C==-P33H]=KW7B@<>1T M(D^Y@T:QAIF1%F3@R[$QVE;TG60-V::Q[>ZF54K(2 LR8+8[W9?[=M/N6%T^H(2:SV2 <,+UZ2A^W%"D@(#%$&I;O1K#$@LS M(RUP=C"KX[#-'B:2E0:G[-KHF%Z0DQ8YFVN5-MYA>4%"];9:50YDOY>&/<@I M[T=:3$-RN_&WTG;)^K2WFS&SU%%$3W@_)M>:M2+"QCAKP_5"-)IWMNDV@I[P M?A!U33!QC9UR:S5LCIT$;:ZM.",MZ"),>-U%TQ_C,-1:I+ZH@">BPF2D1<:V M?47=1AL!@==\I3>8XF1;E?(9%!EK5/QE#^=A#TY"*M16]3%);=,IG/!^%'S5 M:ZY%?,[QLP/<.QB0GD7)Z GOIPJMJM:6;==AM,)%>Q_V(:UC9J0%&0C"/.Z0 M@_& L^3Y[C"-PJC1R$*N9[ F:N^<1KJX)[R?!%XS.^8PVDM) M:^D*)MYE7#7.2(O&X+I#O[]HHC#J]-2DCR/2/-.#$][/R%%#CF&'(ZFAA373 M6D7F0F4RTN)FCLYGK+VU^ K,+[K[QXB/S2%O8S+F5T.C(HU'%[HSDH$O; M$#T4<\:*FWE,&EN!1ZJVZ4^M-&\=Q"P+C-NY^R&E#B%MSU(%A5_PD%'(A% 7F MP+S(91V9[*V.36OXT(9Y+5VT$]Z/(>X'^@!K3FRKW1^E]>QQ>,Y^(X^()!WWA/>SDOKA;H!) XYEZIW002 5T\R,M""#/:K,)U9KV;.W M1DUS3&HLS)1\U((,E!2'U.FJBMI0U+ WNS$_3IQ\U&*L:3IH#>M J5KS4<^/ MEZ-)NR]DI$6TM:3)J&N/Z3$'+:0U%I'*7+*/M 5Y;62>7\IR#-L=>0RQC:'% MS3+#.>']>*@-BVUM3W#DO!%69L9T'S)"1EJ0@<@3(WSG6X:=C,>2OS#J>"=3 MF1/>3Z2%JJPU88QCU145MIF=&D[R48L[S@)B29CI-F&+Y#0U%31$+7+2H@Q" M?M[NJ-T M15Q-.=(B E&[9ROH@R]G'G94 M*MHM%3LB'13B=:QA'LR,M" #>!@@ZWVSLI;$+N+TNS5ZBSOYJ 49#,*8XN=. M<)"VN\G(FK>1%H'DI$7&9$9?2?JX&W#B@K0[G:[+A!G:GO)^.LV&8*/]5BO= M'^V I?3)>$?$.6W1&!K<6-/J'1G>6E"P:VS;U77J_: GO)^&'"V:S7VO#;-V M14PL+&ZYEI"1%CAS5YIQV._XCC298?.-[* \;,09:9$SNM_'%%&@=S9K#OI0 M<[I.%R:?07&V<@_VVMW*(.$,H=IL1@.2K,.QC)WP?NHUDZ<=5! XUF]V^OVZ M12Y,,R,MS!:R.<>5L&&%:S@2/*YYFE#KY:0%792FUJ["= G)-JHH'XPX40D' M.>F))=-63*ST!OZ=AMN MX:37Q1M0HQIB2CZ!XF:N;+::[@[Z(JS@K30@9A746^?#%C=S_["*]!W'HQ+) M=P_5'IPPTS1^Q$YY/Z,UVD"A<:,'&Q6*)]E>EAKRTAC.URU.2>8) MGX;42*65DQ8$9DUZ5M1EZI8MJBF4:FNQY^(Y:5%@,VVSK_&-[IA3NJM&"D<: MO%KGC2"+ AO7^]N6HP;ICK_8SIJ#(0+Y7MY#[L1YL:\OUQHTIN%HV\))I.,L MK32.QTYY/XV!)FFTZ$*2HM7:E&958D<0LN8@10W#.P;?WK0(+M4TO%N=0(?: M,,Y(B]Y/@"4!# T[W';3E3UMA@1-,N\&5+ RTO+G78,@QURZNDA#\U;JX/(6FRH>&QL7"BII+?WBW&_.BAC_C6L,=9!Q'=MM8!0NIY@X""#%K+ M38(D<67(*7M\-%BUEK:YRT#(#;Z=)J[5&;,9+=QSLE/?3VX_(36>83.U)'7:7^VG%L'OYL$5YU:7A7QHJ>C]4EQY)2;[XP)2:P-ZD8GX0\.DI,6&6,-U^M6VPEJHR2)#DW:Z/?X(VV! M,8+D[:5>'Y@P5!E$6!=K#_QV?D_AQ%E2 G&U8:?/2HJ;[FH]?(^NLL*($]Y/ M?9R,FC 4UV EX(B#.IO!9.K782>\'VB61!)&3%*?JADZ\WJL=]5,PT_F?A*L M[39IMBI%=G4\V-N[_9S/ARW.UI IMCUH6 V)5]S^:MX,1E(0R_BIW$^B#IR] M(B/0EQ!$H96:D1>]GP3IK&E[" M'&3XJ1(?^ $Z93+2(F,(/O5K+7_2C%F3@C% Y&4-M/ V=8GO@AEUNW,Y'+>;DJY&DR^ON2.JL]FM>I?IK M<9:3%E6Q:B!K:]H=LEQ#)?9T<[_=]WI"3EO<2W6>K-^MGB MGO!^-)I;M!!N[-D0WZGL:_V#4^WFI(496-JVZXVM[5*"QE@%C[M[;"'FI(4) MD"*!M!-O/>3$UGZ&$[50W@A,1EK99/1=^ROM9 M"ELZ:0TG$RZ9>W;7\=;B>I1/H;B90U3[P"\Z1)U;N]NN:]7L&DLS//K M %_KIX\W0[2LKF\3&'\_?_.R*"]KB_540YU5Z>87)]SPN])>)0J][^MZ\Y]\ M5\I7+,4M5C2'_O/$GCX0.5;OO>^J*(;_1;S:ZN)%F?"+\;UTS(7CQ<]%SL]_ MSZ^;_'VL%H]3.;U9K?U4-O]=@;&B!IX3A3\6&%^Z=/L%X>_=#_C3.U:AT ,-W&.@!@NIF%P(#K>@L+ M08%@[C86 D#3S2P$\)EN81V SW36=?C%QM)O5@M\'-?4+W!]T7S:Q[)<:,7T MBS+0/"?[X?]^P;_\KCR(ORK(57O/9W+XHW9J^0NZI;RIZ)G:BG]2)4%_5TFH MO\C+/C7YISK I-/)X%MQ2D %SHB5KWI)CR""-QR4CVG!>&M">2N,N2_%. <\ M4A]@*$!+[EM+Z-S1NN5-],6SO_D#?^?;2C^1(H"M%&RE?_JB$PB\+P1_[P>[ MX]-MQ:]GPKRWZJ>N#O9\% ;9(R'IG.XE8KK0 C] >#Q0SKB7@T6^U46V=,AR MP4+?>C3WIPL]-$+%<@W]7MQSL-*_N](CWU""R$_ 2G_VV)OUUAO?6!IN8.T, ML-R?WK"]4'&^9QR$D-?W2>XBBT)<]ZGP/U5]<:GX1G O7NJ=Y9B/06PI*SS5#3D*(%-1-ME8H;%.#>MH*UD^TW/3OP;, MW@J^4AUKM?.-N&>L5<.79]O]<+7JTRT[J1*>:I";YAR-OY1T0[/6BA/\[Y=6 MO_ZEM/#\M1+^[Q=K'_[M1FO="Y\(OI1<99W*].D3_CZF%UZ<;J>@E:YJ2@%_ M^=J'5>CNH-5>&=NBP"TF":'/]';V0BOZY1\$*^,5JDP0\/_\W^^%=Z\V<(MY M//@JMO.=$/X3@,#W("")-;F^&8Z"36"K-D1J.V:J;X+9[.H( &&_ @#9T,MT M1S/\X#B3EJLY4;8& \_/!,"$H6^I4=X%=N3U/3?CSO<<)R5I99Z!$81?40/[ MBAJ\)(X#?U"U)1X*MX=]%T36FT3LRHUNH,!LU[)#+43;@\\*A$VKK5L6N L;3P<-RI8>YYU M!\^:@R,D4:[ *("/BQ9??PKT( %X_!)X/)=*/:>&GU C7DX)>*ML()NW.WM_ M4ULJZIZY/=2HTPW2,"#9A U.=67N,-R:V;L*^5L)*(Z5":1R(=C &P V+@4 M;&0X\:^; HKG2KO767)G,;TQ^5\:9&K:W-IY@Q%VLZC5A)X_L2++(K;:H\81X X'*3V%$ M6TN[G5_C12Z:<[UXV(1MVA,R&*&^_(.781H#* )II9#3AE7-V6"&8 BZ#F8NZVJO@_,CC\4RT"%/]=Z M A4&*GSGZWE3'5X^14.7JWORM>C,#G/8MH!JKFRVQ-A(V5 M">\=8PSQSN\G!@:^M[#"K)KUU"ED5Y#K;'WF2VM<"VK5.$P\TI2)XWE"ZN$C MEZIZNJ%Z6( &#X(&9]W.'D^!7W^\X1.R_-8S"4"%[VL] 09?7X$_V",SJ76W MW3/&X_ZJI?H=SC]H1P%[4BYP[('WW1@>8#S7_,1;]&H?#M2>%! MJHS/>Y+X_JIC?4^@06/:CV!VL:^*Z\9F-%G_?NWASS[M*2_$/J6%1EE6Z"@X MQM5'WW)$#<5RLVQ:U4@_TA@:FJ,$@;5(]>695MF_5I-:C'?X!?4HP+EO=W%!,H+E/=N%_,-?D'1SN=1W<]6 M<@94%ZCNG:[E&_R":M\'R-S<>9HYR_(PSVF+NN>+BF.(7W,6C+Z*@C#CJF^$ M_.*-K,\BM-N>']9W4E3;T#S;T<8T(DD@&F?.KM\%5VK[P7 M?N)$\#G-OA'OATV-JRYMT?<S2TR1ND'B.MQA%)$]R-V.Q<6I[+*V[V6$(D#3=U"P M]% %2Z"R&&@^T'R@^:"F_I%JZH'N ]0'J'^=B.S,6?HK1%&K!CU:X3N5A=YNGY+SA:U96HYVJ02EKU>U;6FAD<\^H M,ETI!488.GEP'91+KA'>0[7V0[6S/O^SN^=-NQ0?X8Q6-3QA#2J4&@&&K>KU MO6'(YA\\PYN-W0J"R-#3J6>]Z7-C/[[.FW^M_@@/)Q[J'MT"!KZW MMU^^_?,G3=LBNL=97%MR$Y&Q^U/*U?W9!^]T/ZW0-/&Z1>B+VI!C:P-M,J2W M\VYBIEM>]GPI6B;Q2[X[^% 6!"Y]@&WOSM<3;'L/L.V=^0#CO-N5,\'E-6J% M:XE/:DUBQ;N$V1.R%&5^-H%2G^]*P=&7>#J0\(U-Y&O+5&2@^?LG+BS]%;O_ M[,<:PZ\J?^)LX\0I1J.VWM!>W5.DSM@QEVQ [N01D[&)?OF'*%-P\9V(,WFT MP)9 J?JM(@JXI@%T'^@^T'U0#O?@Y7"@$!1H_@-H/C@P>%<4];,:T 9)Z^*! M(]O<5B:Q5BM,9-'+@ZCL7 #_S88M %' M0IPK0+H/MA-P6YZE7.(7]P%ERYA M#)H!+,"*U.WO_%!0%LDQE0B_N0O>_DT(5@F6)=W:6:D>ZW?1A/[2UQI4S]<- M'SH2_XUL]J7 K33A*5EWO?6^/9$ $WBL]08F $S@X4T M 19P(O:X60.X_;3>T @5RS5T3O'=5##!4TZO&:B:+[,U$396)KQWC#'$.[\? MS=2>O?8711B9.W\BB&EW>(\<$,C$AF83]S PYCO3$&0$2?^7%40@E>)];E#B M"^#D$> $% A?)'4-+*"0QP8F\"#K#?: .]L#/D%N^Q>\03<8ZN/5?*E(AEE! MY99:58>AF7F#64K[36_P_4GMGVG#;135_X_ZW9"QD2E%.G='3_^QJCB*JQE! MN<1KH9=Z[\(G6#(TEFVE"XJI8$DFA76(UB9("ME!+Y@CX1'/Q?^:8'QM%AIY?<_- MV/,]QTE)6BFC60.^$TY+/-,YKV4U"!AU*[I;KPX&;I0C#Y%=4LR -X8F[-D9EL:K+X^R\97@R .,C8(;V@V9(F\:B%+\B. M[&),!D!99RB2+N,X B#HHXL"KVV7%T"@TX5_UV;TG@'H)^=QD3!!9\QDT[2M MJ;$WFRVJTH?_L,;^$LCC1%W&TDUNPB4Z9G6F+.Q;DQQYLM,[E"3+&'8I[P?4 M(P/HN3:C'YRX_4.P^?F=GI%LK_B1RJOIH+QMH#.3E_8WX.G\M--*C,\(K8[- M1C"ZM_ 5&3][\? M/ZVN!]V!-)S!RGA]X+C6CN#<&_!]?HI%O+P2"7+B>9SE#,W6(:2U0^N(151V M:$56P'U$X ,]H@]TA?!+;COH:A=U%EQBMS8"NV7(D/K#>UF7B)P@;QY93/>@ MP G&5!=VK;+&D#@_KH*__(.A=)EZ];#J;$?=MP(6A9/N#T*/AZLJO_A# 3G+ MKWLGUY;! RX[>!(#:/IC+#O0=*#IC['LH./U8^KY0U:M/Q3'0,\?4\_!(QQ MTQ]AV0&BWZ^>W^4[%>^\4L-$9A2$):1<0F$4N^-K-+=H /?0,O%2MVNHIQ,* M[(_+XF4'PD!MW'(V;2)J8:SALY9!!HR M[GXTIC4A@PUP,P8@!D",2R'&Z]=:9$&>"MT)#W&D.I-'S;;+;_0;O%QV?J=?VA95, /7[Q3HKL)(B$+U"& MZ_20B*69P[:"WV!EU79I63UN.YG#EH>U1^.AZ2T],X.-_$X*0I9AN%B0">HQ M 6[<.&YUT$X,;O7 ;9F"3<)2L;21*M MPTIV^W %(V_ Z?@ICI@N/J]9R7+$D>AV7=TT5\W!YNA]4%_^P$NPRVNQ4'C20L8"Q8 MY,=YFB*[R8'21!G&BE=1[^LF1T')^T98LG*@!I6;-UFP"YYJ #7G0(6!"@,5 M!BK\,.L)J@JOK\ 7[E6.?=>K_$Q'&[7#N!]@57;*B8U@-!LTO!K)_WZVD%P(ER8>PV>K*.+AK2=C((E5V?J3(>1$>+IP1NR#8 &UT<# M\%@'N YR4]=!@ H##'XP#/Y@C\PWMF.E*0^[,"_;B(:L)ZN1]_MYVU>=J1JT M;/@5IS?G)G@T'S/X3#)@(7.FCN_%O.Y,W>5%EKKG&^G42EKD^X:K):705]S MR9>DY*1B A5P#W5AY=P)@T=?]6O43=^>%(#N/^*J ]T'NO^HJWZ%TI';$\)= MU)V<.R!_]$4'F@\T_S$7_1I5Q[+[2YAGLRW#L#P!<\J.LF37 MLI0-^?N'BS_[M*>\$/N4%AIE6:&CX!A7'WW+$344R\VR:54C_4AC:&B.$@36 M(M679UIE_UJ!,VTFC6JOHPLP2KFC,83.]\PTEA$R+W"F:124-X.=^K%VZFN@ MU9FS[-=&E8;2U@["GE6YB2_:H=W:&!V:R5 E2^2_@2J_E\?_Z'+IR/6-=#8' M0\_3].E8J98H.\5RLH)S*)4;%*12*06&%OE6:!GGR^0_&#Y\[B/D1UM/4)<* M5/C.UQ.H,%#A.U]/4,CSR1085*)]=HZ! G^JY035P ^1V+GS-'26!&*>DQIU MSQ<5QQ"_9C08?14%8<95WPCYQ1M)H6I_0-?@Q/1A@Y.=6 JPF8$(,D+EJ68< MI2Z8:GXH.P-[XP, RP=EC,\) &N;V[*3U:1K\Y.M/D%A$G.)' "RK/ ; '"7 MU=UYEY)T6=>;5*;'FFYCGWU_OCX;X/SHYHZ[07D?*&T%N@]T'^C^P^O^;4>; MK_:5]SR[Z4D5"I>2,L;O]Y7_YBH&J9]Z^I/SMVM4)3!T]H7+-#12 M)H)4#43#WUF:,4B7Q=.'AN:9;C[*6'$BXU3 J?4KR&#B"9P%[_=VUQMW5JXI M(W3><;Z,5&C0;Q[4-CU4;1.H0@::#S0?:#ZHOW^D^GN@^P#U >I?)R0[WB/1P_V/;$W#BX;C5(>1)G8526MG\KCKK]:NYCDM[;/*7G#5^SLG+N M5 ]*68]PW])"(YM[1I4I2RDPPM#)P^N@7'*-$)2@?9*2PO._%GS>A$WQZ5!. M&%*!L[%801(:>3CUKII^CQ/%1X?QK]4=<.?&^ M<(N?5ID%3W VRR]0DPVGV'26(D8E>U\81^G52X'=G4X((.)R4VLN$L;DFT.&"';_.@O_V#D MQ:K<'@\W0)7;I]KX0)GF9^?X]A3XIC?!G[_'ZO%MKD&1'B=!276 [[6)M?7^ M\#W67]T ?]SWQM*\WET&'==.J@=SZ23!4DKR?2][^TQ7^#O__V/=-'.@R"69E'KPH ]>HW"BG@K@;0?:#[ M0/=!2=R#E\2!8E"@^0^@^;=_[/VQ&?^?A%$_JP/5]S5T*@]A6.(#V@U$$].5 MOI!%45F"'RE3: 4T"P>7*\#E"K"?@OT4[*?W:<(4[$JP2+$NZM;-2Y=9!)_L_R8)XOF[XT)'X M;V2S+P6>8^FE_X#S_S[Q1O9HZ_V4^[O>>M^>2( )/-9Z Q, )O#P)H "S@1 MR-RL =Q^EG!HA(KE&CJG^&XJF. I15@[C/L!5F6GG-@(1K-!PZN1_.^G"&O/ MWOZ+HHXL##@1$2689L*KQ@R')ZU%0^!'HU9G*L@H(B/(EW^P9+W!'G!G>\ G2)3_@C>H)J$\I@C_HWXW9&QD2I'.W='3?ZPJCN)J1E N\5KHI=[[ ML70=0\K';[(E_)__JYZO*PHX/?O)P?'WJ(&EJ*%[D>H8-P ;']*AB ED?G'. MBO\>K!%N17!PFU4E#I6-65.'F#^H^,]YX:,PR+A+Q7^BP)_9CJJ]T<8\<&G$ MVS-<;<;T^30 1;,"?P0K8QAZV:9#CVY>/ZUSOK9Y?2>E_P1 Z_A!\>9M%S-B;)%&'A^_JA]&/J6&H79.T,+9H5)XX@:+B(!%9)$,S0Q[BRS]H&:-P #H = #HW"#HO-YC"A_Z M0G?A]7 ;2G:>-IGW=LO='Q;<7@* ,+LK'^Q.>\N):%6;&J%(> 23 5#VR 6) ME1$"0-"'5R9>VRXO@$"GJP^OS>@] ]!/SO%4=:9+V;R%U?6MWO.5Z@TB MC^!%]B @S;JMC.LQQ;K6R%S%&?)DIWXH0I5QFKQL#<),E("8 M&94C\.!?_JE@90)#P$VDC[^)=&V#/#OR_/2VT;4YO2_H>?^K]KR,='J-NK6" MMQ7JX%2JRU[5$6X8BOK+%=UI[KIK6X%#;CR/5E+;S],_^9OV99(H-I$"2 1< MH,_O ETA^NJY,NLLH&4B018M+<>=;55T;C!PJHY;%::MTRAG)%!W95>#N4(> M3ZO@-'"B\3*-%1M2W=<-LEL$BX>K/;_X.P.WQ_(#KC)X0.,16 :*_0@L \5^ M#)9!_^O/SO&CUJ4_%,= K1^"9?#@QN=G^2$5&^#UG7!\E\]-O/,&3-U0_4CQ MDQ)2+J$PBM_QO9>'>I'B(Z^G/.7X\3^N*Z]5NY4$]EP7[LP[]LSP]@.%HFT-=>F[DK([@]V+]&%_Z/K0._ M1Q3XQ7.^#X2 VS@F1+H[M[]%5$[J8./I>.I@7@\U,]@ 5TL 8@#$N!1BO'XO M!$.MF:P,8X6+E "E!AY"D[,;1 \''H_T63P:V\:VPS/Q< !928X>^;T0O(S0 MK]48 /RXMX[5'UIX!-#C%R]U&%2@]4RUV[<;>MV?:!UY-_V#YFR7@XT4T.)H MME%MJ[.)ZGN!J%(=)H.-_%('2I0)^((O.0/< +AQ=W71OXD4/[^1P9JAR_+[ M<"Y!ZU P.LJZOW!OP,?X:1GTAF)0B\=#@6M XG2U4?$]:^89COQ&!E4F4!K4 M07^JMV$^]L(%P(W?NDYA4T*P%EL#25PM6IU1=SC0F5N^3C&4(J9+V[H 3V:] M:!"OK J."3F.4%GK,*)RR4:R $: \_%9@A:C9LWV38]>2Q-F/@DTG*(7MW"3 MZD>+GW9K+4@=6W-I71LNFE%;[*C5/$V1WX6HP.4*5GQ.YT\/1C]2H_M&6+)R M5+Z'8LE+GV#>E V"APU =3908:#"#\0R4.'/M9Z@AN_Z"GRISMZH_.3,O^SL M?:;SB.H<@>O^GM]R:,/8^&-X,&H;O]_T9>!["ROL>D%PPLB(_4R#P,ERY5/$3*.G][!S?'AR MRW 98N;NFP!5!A@\(-A M\ >[9#2]H05"8#!XTJQSLWJKW3BXOY]M?=6;ZNBJ; A$0[858S!0V7!^Z&M, MYDUE&=,WO:F[O$E2]WPCG5I)BWS?<+6D%/J*&SCYFI2<5$Z@<.W2[Z38_ MYJ)?HUCX]J3P()7&YSU+?'_EL>1.77W"81E;[]X\7?_9I3WDA M]BDM-,JR0D?!,:X^^I8C:BB6FZ73JD;ZD<;0T!PE"*Q%JB_/M,K^M;KDD9*L MA48"$39+;PE^L*^TFTM31LF\+ADI5T[T:P9UR6"O_M1[]37PZLR)]FOCBEQ% M(YLA,));T]TF.M6XOH0*&:YDN?PW<>4^BI\CUS?2V1P,/4_5IV.E>J+L%,O) M:L6A5')0D,JE%!A:Y%NA99POF_^I$"+T-I^TKN]5SAYM)3]A42K0W(=82:"Y M0'/O5?3@%E M:1WF.4E1]WQ1<0SQ:X:"T5=1$&9<]8V07[R1YO'F!(5 1HC UHQU%Y2HQ93- MR"AU3!^3Q0ON[TD> T0!.^$#X?IW=?M_BX+M?,^(>FRKC>I3(_EV<8^^_Y\S2_ 0=#-G5R#2CU0I0IT'^@^ MT/V'U_W;#C)?[>P^888.OW/#F40&Y()2JL)ZMOW]KJO?7,5@Y/WDD_/78U0E M,'3VA&YIEN/LI8<2+CA+^YG$7FU)Z'6XET M^GM,EUM#J!7+*)WU?,?*V,7:+ "0 D5*MUFD! J*@>8#S0>:#TKI'ZF4'N@^ M0'V ^M<)RM[P-2NKRD[UH)1UZ?8M+32RN6=4F;*4 B,,G3R\#LHEUPCOH3[[H1I9 MG__=W?,F7HJ/<+9::NQ%X:$#DZQZ"':"Q0J1\ ?O\&9CMX(@,O1TZEE;^MS: MC\_SYE^K/^+#B9=Z'1Z;>>1^,^2B@S!'#NW.B\#%;YS%08G#F_L@;F;^\86^,WYI5R:B[2:W(?7NWJCUA : M1LM@LBV0_O(/31:?<0/8\=OA\T-Q?,_%VZ#++5#@:ROP[==P__Q!TSVA:7C7 M<7_5*DNZGU9I8OLYU*A&3HL3V_/==+LT-++S_[/WILV)*\G^ M\/O[*11][SPQ)R[X:@$A^LS_1 @0^PX"PQM"2 4(A"2TL'WZIZHD,!CLMKN- M ;LF8D[;N)"J*AY:2P23[ 7+.[QK53H"][[(-7=OQ<_R;[W M#?:]#S[#^-C]RI35W*RW7JUG.2\AC)RF&&_F@R E/IY(T*K\8"CT4$&PT0X^O0(\X-L6J),)&']5B&%7-8@LD]DG\@^R8G[YCEQ)!N4 M2/XWD'QR9O F-^JE1-!X;59TVY,$-XMFYJ*]X,U!C/"GZ3>Y6 MD+L59#_G).*=NZ LC6AC+?=,.MK>:H*BI=G'_ K'$NE?[H*W?QLB MK;@32M.7.I1C[2Y*SU_Z:L/0T!7R"X_0YS,*:R&Z\,2E6:%]NYJM@6,YH@!A-[BSGX]K#V2^)P&WGU_QD> M/7(%D%3 N1L:_&-*,113!6Z$JJF>!>WW(,[,,9'@!\3#__S?\.-N@%^9&!\= M1C]=S;'Z-U.:I8N(5>2Q;GU7"3.)R/, MF3LX=ZHFM[>3OIAB?&WU.J+2_Q @N5")EBN@R/L/V2=P#P6.&\RD8*J&CYA0 MMQS<&=[S''WH>ZC'4-NJ6B9:GF,9!AQ2@ M%9?C.6"W=3B,[<>1I2F:7F4U2 MK@JI@8F1)_[C'S;")0CH$- AH'.+H/-Z(:BXRJ76_ H":53"JE]7BB$X70'\NE8;:;(,!2$#]S(1(+,80"/KLM,!KZ^4%$.A\ MZM^U%WK/ /3"B9S?Z+(]L6OG9_HC6(_SA42R2J]N#WGB7"9=5948)Y=:VDSK MF)GU++5"R(/.[UB>CW#^.:O+X!2^?%:BO+EJ@XAA5?T:7YHE^DLR!.NV,,/#%H\]!L)$'N 5WC M'M"U-?+#H>?%NS[77NE]8<_;.\D_IN;UQ*)' M;AL=QT:T24>+G5ZY9RM;>Q1@4>+'/_$(G_R]3O($B8@-=-\VT!7!H^Y; 8N3D^Y/0H]OEU=^\68!>,FO6R?7IL$W9#MIBT$D_7NPG4@ZD?3O MP792]?I[ROFW3%O_5BLF[X(LTMJL ]E$V\V/V:\(R"^^/$>+W4'*J>;?H24#N>:23&C=CP MPM=KD%2,*_I^;R'Z/ M*/#.<\I/A(#;..9LE!X="2V#%@I)M=C:17#!KD;0Q"#(,:E$./UBRU* M-E99UVA_)J=30*Y-2ZM$:7.#Z&$:@QI(L9O.K+M>C.)I+K?>#L<(/?#%%C;" MTA?L?$[PX]/K77]JXA1!CW?>2BF72TJ_/-O0L])C1R_F:_.BWKV!+/'GL+&Q ME%B^UC#R]$;I@NTPY]13=6QTX%LI="(B<*?-HTE&)L&-&\>-"^9U_R92O'RE MI-8O-5J)C9V6YHV9K=(-)J<^WD BYHMIW-E&7K2K7IV6>762B/F%2H,' 6K$ M?OPC"!'^S"U:DL=]\1LE]P8;-]@15XE(Z!FN1NWF3*+FG70++.B0@3$28B3$3XV_"3Y!5>7X O M7*Z<.RI7_D%'&[*V:&;EHF7+-:&NQ3*%"=-)_WZTLNY8(]TK6ZY[QET8;6G7 MKHXF<:F[U=*;83XNM8OB@(N'QQ,1+G:I/"J29OS55WQ[<$ :=I ;(3=U(X2( M,,'@;X;!GVR2@7%LZ::VS%BNC;:%>$W>Y$>]WP_Y;X]B3FSB+3U8UI>3U3.*.D&*:?C@\W:T521KV%409'\7Z#*[\7Q/SMAVC<= &>S!1H.T\-G02E1EHIN MH)3S**1;U(54H5R@^H[NZ>#C(OG?#!^^]AGR=^,GR4PE(GSG_"0B3$3XSOE) M,GF^F "35+2OOF(BP%^*G20=^%L$=NX\#(V"0.(NJ)&UG)9B@-8^HB%J4]_U MT*JJP*N-?A$4ZI>$K68GF:K, \_(% 0UW4LT!EP"AYJ9"!.[9+#Y6VD:V1V_ M ;1\4LSX(R& K>2M:+56B,W\Z>/0>&R70"R !07_B4$W&6&-ZY5 AD[MR%5 M@[QNL$8_?URU#7*&='-'WB3%CZ2W$MDGLD]D_]O+_FU[G*]6EX^J/)LJLWY: M4KJ/B8%8UAV_\?LFYI.QZ+:M%]Z,.]@,%1=HZ0.3J0G@(EPH!BW@+'45U"%; M+*T)5&MLXJ=T%,,'9RS.*CUEYDMA)>Y2(PYK>!( M0(KD-WWE_":2B4PDGT@^D7R2@_^=NOD!N% O>_\J/NLBIV$+>W[#!B#QQ51UG>4#0H5#SIF#7J\=+WQ@$OBQL,T%XDG+]@#\%MI$4E1O@7@("G*1(3O283O($'N,X\K M7MCUL(W\XJ;W8NY+7G86O1G==F;SM:4JJT2T/>KCW4] O:1BB=/:AA^4_?;] MD(-DOWVIK8^D;W[U%=^> -_T-OARK]:^VA2E1BEF2%%3S5:J:JK4-;([&(JB+:^5 [5NCV)5YKJ4: @UPJN>%+)63O(WL? MV?MNZ7CD0_8L>C:,ZJ.>O*471<=H-@I->J"L<*PRN*E ?TH;T"O?70A,B_"0 MPP&V[Z@32#Q2E/X+9["^)PCTU8\\FGN1/W/N<>:$0^<62E/5I*SD=\UIR8ZZ M;N9Q/(C1Z(0#V@216(RY8)3GNVL3R8J_44PA-T*([!/9)[)/$N^^>>(=23DE MDO\-)/_V#](_]P3A!3_JI6Q3#ZZLM:Z/XC1;-/UJ/C54^=$*N5'HP$"(Q'A2 MEIQT:G$._?!OLD\YEPZK])=2=58:51N+56\#Z)#B%_N M@W=Y[2*MN!-*TYH_Z;Q_[[P1O;= M^!W&_J['[]LC"5&![\5OH@)$!;Z]"C!$ \XX,C>K +478\2:OZ>CN3 M:A-ZKHY6XJA='0]BS(!AT!W2""^<7D0G1:0)GGP'/"&IR!<)A!,-.(F*$Q7X M)OPF>\"=[0%?(%+^#G.PUV#&+2&WFDJ^F=)!;)VJ/^HK9 [B+/U?FH-?)4__ M/\.C1ZX D@HX=T.#?TPIAF*JP(U0-=6SH/W^__TWP]-_#&IY0]$MU!;?212?\56HV;R881FZ6'LL0. M0"^O1?\DZ1^OI>9[+EH=)/^9'/]DN=Z*NOKR=Q@^OZLEVX,8BRN8L1% M.(Z-),[T,2'J=>E,YVNKUQ&5_H< R86N$UX!1=Y_TC^!>R]PW& F!5,U?,2$ MNN4@"HB>Y^A#WT,=E=I6U3+1\AS+,."0 EPHJB]XQMHQTLI*LZN<('1MRK6=!KED56)S:*;I:5V^Y7E9/F' MJ4:7 *#QLKVMU.-#@69!IMQN3ZQ97QLC !*@Z<-S$29.(.C3?DNTK45\L.1Y\7[1M=>Z7U!CZBJ_MPWX%#MI8;6(135!DRIDLOJ4WJ1 M3&R-9&I221F_G\1T>2@:SI8CN2>4&Y*>LN1J/<,XZSH._S")'__$(GS\8A6$ M"1(1$^C:"[TM[ZMB#M+&*#K9R%%=D">=TB+5,F[0<6K5IVM;6(HY>=&;VK-\ M11]FBBM\6D5#QTF(102.^U4EN__#;_THM3Y@I K0S'><%)Y8&+*Q/0&4HD+0 MADJ\@0NE3,M#/7@<^+%)Z?#+8T=EH-V M&NFF8JHZ'.[N=A+W 2]TORQ-=VU#V2!2@+\A84%T$IRDOSKME_#I-^A#OP/- M-'VY^R_\S^[-J@$4!^GXY._=:C#SPLGNU1?C*_P]7&#\(0$5: =U-/TOM**# MQQX]*ZH"P_C[!5@Y>L*%!8:-G4A,[(0X^+__=;B8)W"+JI9A.3]W"'9 O) N M+ :S,8@.H4LSBRHC^/:?BK%2-FZX5"&V2P?ZN8= 1%U*^!<5_HLH<<*HN;*. M'A K1,RH 48>_.2!33Y]AN%N_Z'EXDCR3P= *P<:-<\X%?+9L^R?+-RY3YAZ MZ:WY7>)[7G##)6!21.&RGUX8DN+IPV,:GI F^",44O7?: 3UOQ2+O_G7,Z(] MH_[3#K:G/?KHAI],K MO>$L>]EF=S(>L*@GX]L;"R[L*C-LG+M<QT)&>1% M)I=:U%<#Y@SOYTD02W&I+3^+5H5".3;*B_T5''J&^7+!?ZR+Z\_DM0*?>HY5;MK0>;-+2^F\R+F)17(C MH[F>X55SHW)3EW:6]$)0[+D\Y+UNLR$.V#,L2-1\<]N8]YH2KWOQ6-=J+VD)#CW# M EOOBF8FN9"DKK@<=9HYT^0[<.@9%G#Q[DB+%C5VILC#M3:G1ZD:!U7Z# MZ M@BYWE-)V2;."W&0>ZY4$G84X<88%DV6ODVNXE8HT+V@3)26938[#0_GG0W.= M-+N(->R:Y">X58W66)IH3<79LILU8@:>B4-9G#H&6ZE&YZ= M]7II5?)+R4IS56IE%ML5&GHR 2%6XU*2(4YG.7;3H<6U5!@- MVZ4\S7>Z\F.U4QB-/?C4,XQUF*)?5I/>5 (ZG6:RS6*C.(2P>H:QXURKUZC7 MUO-9M!:-%65@;U(#.($SC%V;?!/K'79J-06G@Z'GF&!N\PEI&G9XB30:W=;A5GZ<9$3]E@=Q)\\.D&*5K46$4O(%+C"J)&1%LNB-78SL73*A)O;&1E@"HOR)*4] M%NAH>QSK32JY3/01/O6,#&0MS1HZI9$JL36OE;$=L:;5\-"3N9;RD)O\U)O3 M?F]BNN-\.YI9X*$GIF& M8KO@Y^Z'0T,.N6BAMXG\&1QU,KTC)TCQ/>O8 \*?''DMITX+?>+[>.#&NUO()U^Z=F& MH8LC5TP9NI;A>\]=L<^+/S._%['YLQ M^_#J/33"AT_B _,0>[5U"V'$)S$B M^8LF4(01!)F^%1\(,MT((Y(/R3AAQ,JI/PCR>QUT])7?@% M*/\Q"9+/*1#<*S[][]%:H"^$%OC_?L1__.ZZ8@\)X:J7\84_/!VHZB:@*O#S MB4M)I@:T%ZYH'U_/)CKPY72 _5T=8)@'.G[7.L#2;.R#R@](.++K;D]9?1>X^GF$?<6G@5P'X#YGU:S< N*,LX",F'D[:=@".H:$K M I=N7I5Z'Y\;:*T'Z6TK\>FOZ/27KBV MY:M*VUO.:64@2RF:7Y6,J*..HG0599GRR(&.<+$W*.U=NM6B-O5=#]_(H3R+ M<@#DD*H;@#+WM@3Z'/VFHO90MF.A$J$:-=Q0E@T0!\TQA4BRU#T=?$37*.(_ M$/_AVA[V35&!* 11".)0?[I#O;_>R+#X^>F)8H[AHW0378QU?+@)ZN'M7\I" M5V*7(-Q)B2%_BX;\[2V9N.Z?[KH73!552 (9$/Q;,,5 EW<7^9M !?H299)7 MP:LU01+3E=41-IXF+THMD:TMQ,=X%%T-XU!%V&22)6X^08=[CA'\??_]+-ZM M[<^57!]%U5+)J6C2?&:T6H_Y+> ;2,GY'_\P$2'Q02TN;B4@\-SDP;51*%0$ M!)@N9AP%UNCG#SM@^"*F+'%K[L[/)[;1V18<*0B36OI X\^@8CLG\3E3Z61F M )2S5KNAV>)F/$@@TX>+<)<_X?CN^D)0XUK!D#M$C0O;6&]&C2X8J%X3.DFT M4J@JWF+8Z@TR2(FP9T[,6!J MNP-)K'A2H'=GD&B['L:F*SJ),PXZZM0ZMNJN!$(1N8DR]08?O/SZ3 9#SJH[Y M0WPKXEN1B,S7,F@.]?L,!E94.C/;3!\+:BY'P#P$!$L:Y8U3,/V&C,PV++S6M_5$S$1@0"ZNYS\>G$= MW%SVPPR9;PA8=XI.)!3SV>DT2-%0NU/%G01^V--Q_(O7H@"(.>I@-FK,6)&. MN?Q\W%11RR8VC,;0%S^4(AI]+QI-HBJ?G5SS.QKM;#U@U96*!]>A%;5E5HOV M-*S1R, 0OF1@Y>^CZ]X'A4Z"* KD,F7H"M9N4O3DKOVIVZ,"*2M*-(1HR*U% M*CY/0^[,'1=5%?( ;HK._BXUL>2_FR5_7=_\[T^H5'"-NB18KYY*%)P[ >"[ M[>K$&,YGB^1H9?>3]RM#;%N(16CB-__U%U/.[J2=QM&^A\,BI.K_H M//A+-?0/490^'3:&2.]1NF:O/ 5?>Z3>FMP'%I>Z'03%X*X$/?M M9-\A3'ZZU;-3^J[N3=*^"WD(''ST^>J9P[8OU)9BO2S5EDZ6+45[58E=#9AX M4) DSB=))@0!E:\9E[@!U^C3;:G70.*D'4.:!Z5?#=#9:?2]4"C15,+ZV*7GY*:SB"A4<]&XW2BM985CA?;4CN;2R6A M+X4+O\:X2()^0S(8P0>"#S<<,+E%?+C:8=4[\:&KN.IRU&UV9VQF+G12S:7: MH46$#]!22D:2;[F)?VY$DM)ZN1Y([A,J;.+#:H>3F#$:.N48A88K)M-S=*&/+KK2G(PEB)"X^*R0C M/$<:!Q%<^8QC*H(KMVR"O1M7&"U3SQ?+!3B3OM]\=#*RFV@@7(&V5QP:7_37 M3AIB8_CY5=*H^$8EH,H& &5&S+1_@A4 M=#LIUB5EDJ'GJW4O'M=-P(@-!"HH,L9&6/X-Q9IN+C3V##B>VV*OH$CPI:@! M1AZ>S>?=(/V&./JMEGSQ1*A[N2K]K;C^+07]PBE!MW[C^[$SYX5;2GQ2K'T3*=7E?U[*"D1=N/C0$;E/3DXA&:/HV(DRHC1+EOPX^] >6^ M<&CZ3Y1;4MF&ZHT6Y=F"677-T985>]4Q4FY4:83YI7+?G^_^W% )R:1_AJ7R M14Q1XI;Z(Z7EZ#J;G68V MV47?QF"";+!X,I*(?[V;,T?Q(66IZ :Z:A2%%(^ZD#Z4NZ<8\22))TG"1-<) M$XD[QDN5T:JT\(2M/BOE"\WL=J64DK(X8&.!841'Z%B< M!(N(BI-@T:T$B]ZMXB _2"C=]3 F=?T)S27+=1!--I"*(W.%CD5BR=,[;%\X M9/0IQLMW=W.(LTD^JK 8MKUB8C+$?"1P112/@(H05:,\/^_34B';:#;J-ZFPAE&XKI MX6)J -IA-C+*B!MTBV[0UZW:^A4C%O50P>I(O>#.+.V4Z\PF7..'?@TL.%6* M%A=:7I_42E,9;L*X &L\PC*G=^9)J.+;Z2@).7QTR.$].CK1"G!T$ZRD35(J M2G1JX/3Z6$=Q^54F=H$2[K<4:R@\9:&@7K2N92@.!4S@C#?(F)@"E:2GD'OG M'QI,N-U[YU_18$'@YVTJP)M8VH&RGX'"136OS=N91WX6[9;::;#*Z,-^8\ F M@CXW'/-JV)5 X&&[U.2XGZC!L\K6?DNT-#.'Z2C7J:*U7=4Y:^IM[==,O0+ M[-\OU($I[+3SJ [,BZU?FMM6=.4\%@>STD1+&WXO[\G,>, *094I/B*0- FB M[O=>R?,+Q"X^1MUCZL WJW2+IWF+94TI4\PJFQ52=]R%+B((KVK[/40Q[K$8 M%'%JR!'H%\N&T1#KEI'XX;+3]ULK:ELH2I6TY>K-?6M)/];YEA_ M1@7%FUHRD>MOL.3/*9AX.QO4+1UBIZWYW$*4L-09Y0![EQ%'S%1BIMZW(W<# M$;!/.K#.6DYSK[FU4:#2+:31Y]K1-%O-1\:,F_)"B"436EVN)!@-0\$F)?.^"@GP_G93*?8ZENP5K&>ME12%E-- 4^1__")$8 M?X'^Z=?+]0\IA%+]\>F]IJ-S U,C1_4WZ::0W/X[L#QJH\Q.BUZ'FNV@W7SL MUYHQ*;U:E);SFI8?=,8#+JQ4>;;-"CE4_W:*21+Z/\@.>+-B3HOIZ6+]/ G2@.B X5E-JGK""GW0AE M @_]::5[DXEEH+E1GK*&K[<572/>$4GC)1G^MVVV*./U<6D I.0II.,B4O$# M"*@"KS;J/BEZ&^EY':KY:SE$.3H^+SIN69#Y>#Q;2"8R#N^* XX+LO\3=(P$ M50ALD.S_FZE",$TF@$5*\V MDM;J1#''H*EXH&8B9P+]'Y556D(OP?3<)G ]1U<]H*$_B*9V_,'!R%<#"O8P MI4P%/B7Y\GA*CZQE*O\(70Q<+))Y_0(WP1*")20*<<-1B$_&D@U?X(=ILR71 MT6;*2+C;F;145PA+^!__))@OUG'U5_9956I3_\Y(Z:8DMJ2_J$(U^ G^@,TR M2JQF@A^DAESHB&6IVO[0&ZU?Q$J_*X_M"DDO7QL@+VQL_1$4UB&]4'%+U0&* M"S(@^!?^;OB(#8>@&P#Q:]B9&KQ-+0B5$K*%:I55%"DEJ7J4K-0RY!(&?%NOTND[!80670'M1$$ MXYUQ!S)Z;YVWA+G<%?M=5XTEA)%Q)>/N#*"*ZM)G>UJI*O&.\;A2.-=(Z(T! M%U0W328B-/<&1"6P0F#EZP;-;@]6N,&&%:)3DN5XI4,NS.P M8DX-=;[:TG4IVBHZE5Q6J?K],8(59*X6)+TI"6H\E&H\J8[9@15 M7D<5;E Q!VEC%)ULY*@NR)-.:9%J&;=CLT751K%N"TR?SBV6%2FLNM;Z>? MN7@(G!#3]'-H.X(")-4D)=.&2A_!?X9SAPGX9 *)!]U M(/HEHF:GN1(D1';=S%BLW;61[ (1J78M5.R"NWC,BGC3!B3U&--OR[1_J.1'4F)?CO3%!%.H!M$]&FUDV\0AFC)]7I9JDC5MEBF M]FWQJ$(U6VM6Q':A5B71!^);D>@#B3X0#2'1A\^./KQ$GRL$)-"Q/2XKCR,. MNJE:,[D=\97L)-0L MXSBH^E(##%\:];3!N)Z1%EY>$U;-AIOM0",ICLN*1&)GVNN0< D!#7+YX>L9 M5V\'#;.I]O(^;X^E]&S>K!2]0712:2#0P%USN-AI);?SEM7_>0ID\P4B7RJ MY'-V?!0.NN $?&Q/ *6HT(B$D]H@0\BT//@NQ8$?FY0.OSQV% -:3 X."WD3 MX +$$X@!J&L._ E?J%8\^$O8/P<.=SWX >Y!]( 7^L?+XI^KX6$-($U?[OX+ M_[-[E0I-.@>IXB3\YEZMT!-"R*'I?UTDX'A,=M1PZ!G=X\^G_E^'G8JR4C;LSO),/,6;GN/W<8P@B M \70#VSR7]3!SX@<)[2<*^OH <5"Z(D:8.3]#+^V^PSCQOY#R]61U/]T@ &U M:0G0TX^>BQGC6?9/EGG@+\27EW>YM^YKOY8M3(HH7/;3"T-2/'UX3,,3T@1_ MA!"C_AN-H/Z78O$W_WI&M&?4?]H*]K1''[WP^!UE%0QA@V&29;7AD!MP@L8- M8B A#)*C(0\_%SB:YD<\R[-(()2+Z\@;SG?%9DZL1E!]R ><7]Z24ZU"IB V M"U*+VA_M7G^>U5H;3JA=H]*U:D:JMJ0,^JE5*Q!D5YXLI9>79)L*KX&+2CMKR=*!U9#U9_#5ZL? MXCD=!XYJSE@Q]2U^4GJ_B<-?1%.K.W"3-SW\:VV4W>WJK?VFGM%=U;!CY^Y*QXC3/<]#BPXW33!YKHO3)N@(8Q/R@ M32T;3M=S?'"!?>#M[,%,AO:A%1#]V7;\_*^&;H*?<-<&#OKIY,_X)3\QK4.8 MH!@*[3<,\S>5D5KI9J&.TE10R8YV7J)2331/@/?D0[\CV?S;#?3 M3\-%SU @@JA4W;&F0'WZ$E76YP@\7WJI6-\_!0]I63[DC6-2%<79&.B3-/*] MGKV[5=E_"QH;B&#XRWO_Y\GK.20)]IO@PP'$3&2(PY&& 5 ',V!LT)DZ+21=!$]S1VH[Z-(&UTF-?,.@''QM M 4H[,.$3 9R .8Z@42K<&]!6$<&T@FJ/G5_TVWRNNR[\&8^<*\C#1/L+P%]# MC(7>.J2690=?QT0'ZL1$X17\,-_ 7NXVJ6NPJE 8J(IVE@*Q\ ,A1@^VYD! M[P'+F0I7;D%D1'8"J@P*ASO0XW<@1>$G&K !0D8)D/AR!AI,#"U_$\H1#8MJ&C%Z )6TC \%J!@_WAD>[,H2;IW@07-M9' M<#7[USGH,0&YPC'V3L0AN&(9P]8-H%#4!/Z&-V(HX <")#^T=L+S5\"R)@CG M#KE30$X G-=.N,/?C]3BX/DE2%_-FC][0>GA22$.! 1.WP[LA4-)P9M:XF\W M7"*D,>2 LWGB&OR6Y>"@!_QLC-:..!6(']3[8 WAU_20\SLQ>NTI3R** !HN MYT!0)DK */@5RH0*%##QZ,D80Z SA6'P2#XISW=,!?OD\ _NQ/,Q0$Z*:X'US8^V$H0@T,^P57,E MDM%?1\H0[OI*H&,:,"#>0&*CX3IAC\.X33D:,$E$7/ M:%F&'U(5S=@#$!>A@OAF.&^DFD=?V//MA+,[H(#PIXS/PLS1JM%2#AEYB!Q/ M.AK!G#"HL05I9^(7HB^. -S]CS]^ I-#$,&KJNA:=+]1G3(P""8<66J7-]Q2 MBJN[M9&HJLA3@CP.C+>73+C"O)BO E/UE$KYJ(T'2"5L+A MEH?4T(F&\69JJ!A()0.X\: UX091:*$M #0$P*8AF!,_MV<^S3-X M#YH+VDILW[$M%^!9S)49^AB3TWS:6^!'Z# #&5B0^%<4LM,UH<,3:@,4!QJ+ M&MJ>J:)B^M &ISB& @HD$OIC:*^=%]%07.#N"X"']AE(B.?!JD .7GC @60C MHU5QD!D:,!ABNCJ#<@QUWPUGC>T[;X-IC_>LB0, '@R_!GD,*31QT6K@DT]B M9F@8.I2*[*VK-\U)1?DI(\-:N?O7ON-EV/_P=^&D=]/RB2'A/?LC\ @UU/&-$#*@%OE&:#X< M&DHM !T0;+#C8;L;5D@J0_?CR+AM20?.7CI$BT.,P#Q'.*/M(U\N_ #^V3#V MEAC&)ZCW/C;XSRQMOR T#H*IHV$.8)-?>=HFH%4!OVJC-0;N#'H'_#NP7W0% M$")C^T'9V_B8#CE1K.^M_"?*/O$#Y4!![]D[H3+$F?-TAO)LH$@KM (/ 7<( M81KZ;:&5C?YR2*JY O<0?*:H09V"4T8O@1 &0C/_B=*0RA1DD0$4=*(12/#1 M^>1[9&G'-FA#PAD;4.CAHN"3PXUDZIN!U8\Y$*KHZX\,T"5X)G+R@&<]*?BA M)XF,/VA)!^*+_; ##B-W<(^, <8'3T.V*R8@HM6A6)W;)L1 U)K!]^$RLI"* M%$-'2WOH>(:Z\%DG*KZ3EVPP%'VVUX4K[1\%,]R(=3,TH \M?>]/) *9ITBY MH4Y!640S"=D:;-.([/!U2JC;H>Q#+''PT;B"')/ UX"&!>*M":#UXB*"(I(K MT!'3G:?W[3#I:2J[8[G=7W;J\])>MK.PCK:J,WL$M@/T.3KQT"T-0PTR27=[ MP,Z2@>\X<$+QE,W-LR]C(B UW*TM#))@/VT)=C-__9%!!.39@^'?0BJAV-&! M;)YWC$Y^O\=S?IZ<\Y-S_BN>\T,="CWW8']]]90N]-Y?_-:K/G^@L(=?NWQL M \K&05S#L4SXHQI _>M1CE4F5B@GU4>)GC/"5F\EW$'N\9L<5#4!0BT(Z@77 M]>$>=ABA."+A%>,4V*]?@CG:#0,O"NTY^Z/HPSGOL@A=*F7!?XX,^ZS82NWM M7_UDN4]?E6UD-#R=&;7D_=?0ZZ-T(D+]1S].CL5$U3VX(A45'PBCE,V]R_[O M-K1@5(H5Z+]^4H4Y"D>$5@@T?IM/$83=-Y].U=T(U*5_J"'>FO%A!'K>#$ [ M 8[4]@\!Y@1[$(>F-C1N0H,3CL(NT,Z;/1.T>$#1$_Q)X" =!WSFB#J>!8V; MIQ?@&/)!/&<7G 5K&]E@;N@J.,;F*?X2NFWJ1 >C,X$*[ @X>]JG:YG*TU'& M\9L#LV+W3CTX< R,M(,S%&1D8!L-&N H**^;!X&4.5 "0OG(8H0DQF88?&?H M:SP1&)O=.AP8R 8RBP!N(8>L(/2. PL&NC(8W%0-,L.?"],>G?G%D-IWDGQ>4<_?OQ S<+> M;<(5400^%[\1.)"S-53@S?R@L&(6+4W9Z_H<.QI M?( V$#SVH+$G8?)70!!2I[@?^R$[]D0MMH30F +T7 M YR1]S#N<(@$S^]V!TQ&*PF_[>Z08G]TLX,,-+O=J9X+90!I.X7.J<86/N8. M/=*GIU,.4A'H*EF0[>@ ?AZ (G(N"= ^''('>G&L]+0KY=H<+"6D2!K%QOAB.XQZ0!M\(>W[W'4T, MH*A7Y"AFBT$C/!:*!+Y>H-IP+7 #-ZFI[^@N=)>""/6.YE!E_@ ]GJD\?!AR M2H-M'"P5PP]#V),=1D%OQ>[4W8;WDK9OY_V>,00!TS@UH?8&@P/!TG!CHA4>R<[ MB/8'FD[]N^4/OA"R>]]EDW-QI&.W5-G=WY$?!\UA93":T:5%)>_JI5Z3V:Z01QHFO>]' M>MFBFG+MPIRNL>5$H1MO%Z))$8Y,/A]96SG,E(ZV2W).+"3K@8^KDG MSTQOE-*PS;> M%&C6W[P^.CUX#/90?SY2*> MO%TILX6%H#RN9EU-GJ>3='F=6Z*W,R>O+U77O>(FM\C-TC)K<:/DZ''17@VX M ?U\I#B-S08N4^G3K?$C/36WN6EY@$:>/'.;SDURB7@B+K5B7+,R7WHMDVG MD2=+6O.)K);I;DMR29D+DCB9=[LM$8X\61+'%M)\UJO/Y)QN#C*M\FJP;:&W MGR[)ZXA"=\I-?#I:3HW45G8AQR&=8J=+,B29+K6XACO+6>VY;"O3M)AL#.*G M(Q/^)-88Y,=I.2UY^0(_=+V%MAKPIR,WG:(Q>=Q:30"WT1CCPA4UUXM)6Y/_?I^:(9YQ;)KM1/C^'($S(- MVLG&BFZTN[+2GB7X_F;9;-GH[7LR73H:TP1+8/H@ZUCS-'PXNO'6A?"=#O-E M3J,PH,@.H[QJL;)?9;-NIYHOQOG5::[)^7'?*=<$YXJS^USQIM21JK+4HK+- M6@5=+FDWQ72[174+[3R5EEOM6D5JMCXX?G-C)#FUE$+YNW9^S<@RX#:.C0@< M6@D=*?=X_W+"R?YI=L&):X*>-0;6V%'L"3IV=( "C42TE0$3A

54&#>44+AX)#S3VM*$#[< A^8A\2K!= ((SZ+$?2#\&JS/,*)3X,F02", MN %&0&QZM?0L8<0G8A-1B5O@!#&;;H,/S -'%.(V&,$31MP$(^B'.$LX<0.< M8$F,XS88 ;$I01AQ"XP@V/2QG'AG=ZY?AET_9=6')S^?U&;H$Q;])^7*@C*5 MI_\]:42F6@8BRO_[$?_QN[00'ACF>7U^QEY3^,SI,RK("G](K#8^ :L$!U_2 MX<%70#2.B;Q O>\N/9=QL3Z' !^)(A^@18D'.G;76E1%I\?O5B*RW]P-8EQ$ M8=C?51@&.D/L72L,2EKXL!WE]2CNU=?Z?GODCP3CWN6"^TJ6QO7A\PL;''^B M)@0^WQA7N_I:/Q<^F9-VB_U+77 M_1'M>\)$HMMJ:?RL/\_%6N\(YY-^70<_-+B(D]NG'RN&N-;= ;XEY&S@VP9< M:[F);Y+]CE0;+@OKXK+*C9>_WP#Q%W<.I#6ZS@[Y(+HN*F*JM97UF3X^PF,) MU)HCNB3K:9&KK0J)>*^#KJV@WE]<,A(3DF<:^7R0NW!ME;@*%'QZ)\C+0<%U M6'@[4/"\"]>;H:#G/5@P*W>,#"/G6/'*B"CE^4T[^YBIR'JR;6^FJ>QFIHW1 M_5OZQS_Q>!)BXH6LHUOP_JZ"!8GKKYM@P65ZE+X9"]PUS_9Y8"FRDA_JXY(B M5QOU:UM'SI(M549;*R_G$L+(;'3=3EO&=_%#3TEXU3ZZ@U/&,WU3[N4 X.JX M]?I%MPLL\K +[&7OAGT96/JC^$U!&G2=Q4ROM%JTE./Z]:%426>][+5-%%'M MZJG-8Z$[FWM]AZXJOB.JC4$,Q6\8/I(4F,N%;[Z^5K]Z1>S6M?IS#QSO,A0# MM9H9F*UDA5N6:&!M4W-7B2=Z\6M'924?^)E8TZ_*&TN-.6G%6>AS$6HU_^,? M7HAP\0NY'=]AJ_[D@_@;"K+<+92]GF#_9:#LCV(H$,JF(V<03\;HI<0V5;V6 MRL37G'MM*!L6IGS77OMI>E$70=E-9#9"=PRA#,50$K$(S5TPA/+EP>SU2T!$ MK6](K7_;0EF/1B##=X4,G4[/YD-?3DK1Q+7]CC+'1X$$=1F3@G MD(R:3\BHN;9N732PI7O+E#&>--9>JG%E5)U)R^UHQ>D-*?WHK\UMOE65 M,R)$5126$B+Q9((D]GQ"8L^UU8O R7V%PR"<6*EYTVRQ9DQF^YLV$W@' OA+3&B7FY6 &=/LTN MUHQ4LNCN*GMM.TBPG:W49;(9:1.+YQAVO(DN >J=@W KGHC0] 6C55]?U4_* M4GT551=N8&&WH^K/C1D'+#I*?M LT[7!C%&9>7?:MJX=E!9*=&U>LMW5;,,( M3)P?&HO'&&JHQ:-402Z2B,=)5A')*GIWD.C:,'"QRQO77M@-X-L[&UU=%=_R MQ477RT_'-KV81*OR*+MU$R/>O](7P,M:D-> M ZP(2#R"=MO4W'*]W7L<,%=TW&M[/P.@..:SAWF0O%&XX.B^>?/^D0]4^L6I MG?2N='!C]: ]8D #1-&JY0&*B>^H]NZ&T%^R_>D.-J@V:FQN!DU0/ZWSZ:E> M9*&0BO7T7B!#U4!,0VSR'!_^HE!CQ8V.= ?)#Q;^D:)B+0_X[* NXT\J]&_$ M;O1$EOZ[I!N.97E4/7@N_I3Y^R_4-9X"<&YS+ 2&Y6(546SX_C7^T-A0__.I MFT5LH %]4(92;4BF!]>&8_?*>#T0/;@LN"^':W!#)2[K<>ZUZFP:SYJ3R.&DJ!>X#^%,P M0RL![4F.JQBU415X.0?^"4Y@A$BH(HM.*YAUB+NZY;L]"-[G^;KAE/:@->7, MF=^I*D:O,!?,->3KJVQ=0;8ZX4LHS7=PTV.HLZB#<11W,*9LB"R6]EH?XZ=M M!B+?\2,A*.!]$CX"0H6.IDUMX!(>J$]%N2>S$R(<0K:ECF;W!SV2;T0"#V0N MZ@+U)V0A:K?A O-0Z.#^"]]0QXRLC5(.4-1);;3;@&HK$PI?VTH!M-%#PD!P M%]W=7P]VIP-A<[M,2NO."W,Y/6/F<:L^4MJ],021&*4I&_>Y,1IN*I2))X+M M@/"QT*J"I@04&-_X_[7\/'H29:Q M/)1FQ:..[%1$J*B^C@9FZ<\\_F=07K.9\:(@M>3%?*4MS80IN^;JK(W[NW(: M_(J- !/QS?C[T-X(/T(TC$(:[HUD_$^HA9'GU K@]Y R3Y35**C@%65#<8&N M/E M?^B"A0\-*V,3"17SD-IS18/\H#1'6>V[FH]\PZ"4.3JXQOORY; ^/HCM M-6W_\Q_I63$[*:?C;7E!I_N;=%3GZYE^9OQNW-[Y?/!=*@":BYR^,@1(%^H0 MU!7=.XO'O-G3HRZ[ ;-<1NN(AE6:30NK'_\D']B7\5AW(,Y#5P09T ;P("\1 MT57\%KC?PM],:%'.$>I"B< S-Z%"#:%%'0D@];D;>-B8YJ#?CFI %$9AA4F( ME?N@ 9+42S3<>;$2+1L[0>G$\YXZ_W74*VB?D/+,'C]85.BSLCC0,0;1H!61 M,H+O_:D8*XA1X2(3R8?8_GCKYSY"PN$\ ?J!3?Z+.O@9D>.$EJBE^P'%CEJV MAU\[[MJ^^_ 7/9%"QGB6_9-E'O@+\>7/(W*_EBU,BBAS&$$(2?'TX3$-3T@3 M_!&JF?IO-(+Z7XAIZ)M_/2/:,^H_!;KVM+>]%Q^_HZRR"]#XB6Y2&UO#D327 M';>R N8XT1\CDP )@G(P<@+J9K),)W*S=#_?'RS]Q[ZJH9')YR/EB5P"??VQ M3+/-7#]'R_)BV5E!0^/DF4FGN\F.W:A*1]L:(UN>D$B.QW!D_/G(WL;WVN7! M>D0K"TET.UQL.3,:<.3)VPNY^+9DH=S*NYN^X8_F=:* MLA5G'QVR;.C2H=U$TUT;1[940]'GR((WE'V@2W^*!@R!JOC0\$)V],[V#]\, M_V;HT)$Y8UCHT#+0@^?!OV'[ @6J+-^C@L*I/LW8CT++:6[-[\VZI.+H2Q/$0_4-V(6L-3@% ^WT78X3S MC2 :01O80I2EL+C IQZQ%E#/XC)!S/*8?6BVB@M7C@4$D18U6% J0 M^X!_6\'U[!4(O0D'&R$GX,=P4"4GENHJS^5!G\E:CA.@@P0MX7M85O"WK<&&?%C \)4C[ M#.A J4-.%V1Q&"?>Q8LP[,ZA,X)\M"%FMJN['@H0XY#U@41 :4'J$(BW91A( M#E7%G5 C:'VLH&!Y41'@0"!ZUM MUX:V,YHS])MGZ.EC!QW8A)*-@]P@<*F>PAF0DD@M-."JCCX,4,T!NAD"$]3H MG8L&OV! ^AVX9T;(O VRYO>?(NV"=%$,9,[C"+V!(ZH'7UONY@1E!0D.A7IM MXNF@Z1UXR(>+.HCB9XZC.Q2.[KBOQ7508#1$Y9U_#=75=WVHA=@5 5&$,I2B M(5D)2!N "O+,P[5\4J3G1"0/CTVP'PLER5HA"NQ/,# U\<(.-Y C9]HX4+4] M=^"WT* A@"\V0W$/8F"N#443&Y4^@D!D?A"$ 4VP4_=S\<3@JY5.&$D/^!66-Z1TZ+XGO6L<>"/SGR M,DZ=C%,?VG-V$SOHGOOCS:GRR0>&-*Q^)AG7ZAS^:C4]PHC/ZQQ.-.(F&$$_ M<$0E;H$3N%\CX+V&$&VB!OA!(&F MV^ #@:9;802!IH_EQ'OKD_PJZ/HIJ_Z#WO:7B7!>.!OLEX>MO]/$/?Z[3=Q9 M_LR]NKMJXMZ>. !0E>"P3SH\[ N(QC&1%ZAWD6W\CJ3GCM?_D2CR,4IT4D'D MKI2HB@[,WZU#9+^YG_WF(AK#_J[&,,Q#DK]KC4'Y"W>"J'^ZU/>;(W\D%_%[ MEPON3N3BTW&#D(&H"8%/ I_O@L_?,S*O7;MY7X3C($L3I_>>R[S\,"/SVJN^ M2KVC\]R^>J6@2Y1 XM[20N5[5D7ZG&*NYU*1]RG(HN__C$Z5-IT M1>P7U-4L*O0K;,V>)":L"-&!1_W((@F!(^#PL7XEZ2%$0/(FUGH#(/DY163_ M&"37=LS>EEUC)'='WM:M,+D4K>';\#2TH1+Q"'^I7FO?$B8)/-S"6F\''BY< M=_:/X4%<@ M^Z5![08'X%ON0 OK6+A!+:_(<5G6Y[>[%=LV]* \U$&YA+#TF:WHN!K(_B8\ ME&U/-U!%+S#"]]?MB>*"H(S7/M#V5 7WJ#BM0F>+NY3NZRS MW>)1X1)=]0WEZ6E!M8K=//83@T3X=9V L/3$OK@I>M-3T0#%.W\IOJB8ON)L MGC[$%\@_NBB:Z YJHT,K8U TV.G2+XVDS:Q@-](+D?<2OU>"LAE22<14DQ$1 MT@$N1*(]A4!&[ZWS MEC"7NV*_ZZJQA# RKD AQ=777#0?=:6%I+=SXIG K^^*,T)XM=2@L%)0"-QRSA0!.7@O--8LQ]L!^2%^/R^! M 27<=$--#9X-%PSI@@LNJ?M"H6C!0TP_7$WC9(]R/;@@?5?G%OX=5>U\1HQ@ M4I&@Y,\P*!FSQ _?5?Y1J+FEX5I)>#Y/=<3#C0+-+]@*=KR "F\],7%?UN.0 M+*'%P[6!MXW+Q< 9!I280'EL%U9"&BAN4W812JHQQ"?-] M:9RIKP4%T5&Y="=@#%RO Q074F%HP#DO%3VH J6; 4[!J3U0XAMWHK!JUJX> M^YZ[<"6NKT[.E9"*! N#JX?Z 57ML#84) ;B@@N>I#H2EOQZN6S*J_2%SPEW M^]T>O)=H.).[VT>K=;0H+8W5MH9!H1 2I&"VGQ:/AYW?*Z;5?H&==9ZF7X F>8#-=VK;&0@Y>+]N&]S?#;;:_SX1WB(O75' M_;0J1#>QRS;W31]D2%Y/=T,3%^']76I> MG_1>Y9('*I>N>?WJHKY,2=$L[:KF+#=V.(A,],-I> [LGBK0CLPKG?F>KMV M(XA)F%FHFAID'EHOA6N([;<;O)T"$TH# *A&603M-ZKOX/TS+ -WX*/MQ%4* MFE4@:7WJO'+@YYWWZW"U.6]CH[C740UE+0SDX WS#07#QXF5-Z\[W>RL-JY4 MQ^4XUUB.KU(PW#+!LVKAD)ZOE!T[D7%4C[Z)X!F+)OJMHJSUN3\/ZVA_K@[8 MOUZ"6!B=%[Q^HO+5"C1T"]#*@A$/10^6\@8,,^J,"H$?2NN]* MA HF@C4J.OXN?MX&9EV57[U6G,W.REYRUF+2RY*<*]J=Z>H7_#IT(':.P*X0 MY%$_FC=N.C;$L$&[66U9F956IA?J;-"3IDQ;B#;N;-=A/WK3@1^BY$?H).VW MGRA[P+]^77R=RT.N$"IV>9_Y:?+^198.QZ+/=AA;6 M,#WIX?4TU;;\F9GS^ZWXC&N:./.% MQ--2KV1G%H+:T7/[J(S>YD9^9[O@"=_6$7B;1@[ MMUH#(^ XV*^U=O&=PS*IZ*&6"FV<0X\;!X5>%D[$[0=*5%%K'<@5U,(#"T X MP>#QP9/"8/P^"*[!EVS"@M''$T5MA8*:T:A(<. M77Q3Q=M2$ X;&7#7\G?/0P$H*W@J>"(B[EL"1B.\J0VA#,X!-3.ME8EZDJB3 MYQ5D]\O:=:/#IJ+FJWNZ[R5W" QK=0K:#_M>&(=UWX_OA-]--PR!=,, I!O& M];IAO+][ NZ[<*)\^X8-&V_N./VJE)GQ?+\8S2X%+U-IG.NJL:Y'<]GZILO1 M;'4079:3Z^$VBD:>M(LP%D[NL:/$;7DQ-WO9[G3>$)*-3#JZ.#/YQKD&&"R_=I()<9N>;40A M&FWEBQ,EVCC7 (.OQ*IK><$59^EJ1TTTUTFYV1;/-<#PH^:\\,CXKKS)&96N M-F$K_QT9&I@Y,N+>#8F1ROB6LM% MW9S31"-/&W5LZ:W2BW<&,U",%IVD.QJE[#$<>3Q/:+'&.64TA-8KPXT&,9#@ M!PHWY :JIJDC$%>U9)QY_NST8^/1-FL3;P8,F?86':.5Y,_R7U:7PTTG4RK3 MK)/C-GRRW5N9XMD.*)XSS;D+-S6;Z]JF-MWDY64:]4H1GH_,E]:/F9FR[,S2 M5JO-EDK X&.(_\S)1+/+;*FSF533=&F\\@R_G"@/:NCU3.SYT.Y(3F4+L\>& MU-I8@U0I-]TZD]4Y"9#I/!BNF\G*++V2DE+5YJ+QYNJN%- MU4E>C0[Y1Y0-?[*FV:83S_+L:B67!'\2;59:8E-&SSQ=4ZQ3]CMZW4O)T5DC MZ4KS8MZ-XP20DS6E*I6VW^\ON-FF(HQ8P96SW!A)X,F:?2Q65_#$>>K,F*VA,W):]:-+O(U-89<[/<.FCDR9K*'*N6(38I=*T@5XR$ MJ.=4(,*1IVNRNMMH2\GT>[.YX; JU\Q.M&X##3U9T\A(30K=63TKS=V5E._& M^_1F*9[3E4G<7CS*F41^!MV6KQTUK4>QZ-)M5;6 M?!&.Y$\P,C?GATM>M6D^S97MCBQSZ2IZY@E%H1FX:;8[\8&L3,OEJMD;CJTT M;BU_0M%>U^O6E]M'0V89OC35MLM20<5#3RAJY&(#J284ZG*M"ZK=M6YGIJPX M2)S22:-3B^BVP3#2PBU'1;#M.5)]#$>>K$EYK#'336G R)MX/:4F5V+>@WHO MG#[3T1;6L"R4\C.0:@C9Y$+DR^4Q''GRS&JGX7!E)S^D0:SDR^O!H]SS5H/D MZ3-7DUR_ETIEDU*77W*")=C=B3=&_OG)4"L-QDZIZH\EUN_[DK^4MO4Y'GKR M?J-(\V)F,(_1+%.4:G[2ZS62(AIZTM%(F!4ZU:@@3Z5TQW/MZK@W&W+PJW8$*@W9)F^=,>C8W-7=C%,=NO-(XNP-- M>V:J4#!H0P9MBZ>VX%6\\=8+";)_S][W]FVP/R>/^L&?;N)&Z5WA6 MZ-6K::'$=UDE)S!Z+5$_9X&FE+*QM,G"(OD-0]N5R)39).OG+% [WAUH7$:, M6/A..RJ;,[=->DEK(PZS "3G3MO@;P8GRE,597D MRW'B.*^'!%X>Z-)RTFRPYRQ0,UGN4=DT*9%>8]UQ9NWN.EM5SUF@G&1;S$+C M>*'4B]# "VHLH\Q9"V06K6EZ'G/+7$AH)"+S29).4NHY"R25&<:KV;))BLUL M9Y63XDITPYZU0+G-JL]+BIL@0Z4EQ58W5J,_/&^! MKQG+RJY^R*U^B.0Y'J(,IY\W*'CXV$F%D\ M:U?H:*B2IZ7)6@A%9M5NOB&U*BEHJTYO_ILD9'&ZX'ERJD1(;9S5K%J(/6>! MM#50C*K!B(+8KY"D6FXUVV,X\H2?IB,LZGRD&R'Y226JLU'Y.C<8O3.;%D28\ZHOYRK8.0)/[/>8-70 MB]2,I N.M%D+7KK?@<\\Y:>16V5J;+^^$4*+Q2P^RXOK)O [DWM^7OVB'-$9 MP_^XN:LVYRS:9+Q88 M]?22P//CME<*7N=:G<>J/:CR+8Y@"%3W1/U#I-EF_@G]2W!UH=!FRURUU238 M:H8H5-MB"Y)._JJAO9(D88> M%A4*X6:8:,%".@_,UMI7MOQS^ N<+!JIPK(VTZ\M4!53TE!^VG,!#J"J]*># M]XA!H3I,XL_@YA"L2D3YVIFM.0IX R24K#RL%+_N1J=M9?ZQZ\"XB@6_HV=O=IGJTL:QN)C#!JJQ52FW2+Y:+< MS NE)2QS>;VR[*L5X/T>A9+FV&%D8PS]0S?[XN'[@ M1=P1TL_=S7D()=OK-^7=?O7N>L3SE^6>18O;W&^XI^@KEQB2.;=5 V'IF*13 M(<;@VQ;7T)?X$L.+76(83X:3R0M<8QCWVUKBCN9W[RU/AZ-QS(@'8 05IA.8 M$8_ "!)5/F!.W)T3=)B,8D8\ ",P-CT*(S V7983'VR:^DN_]5%JSZ[J$UYA MD:_W_KUTW]_KKNQWV_I>^4:6M^WI[50V\0&5_3[,#[(JE[Q*! /6 R[R4J+\ MM=N77ZZM_951+7%78_5',?ESZ'7O7H*H," $VV\=ILXOAEOW7MX]6B7">/+> MZ[Y0)\3(?>X3>'^CPR/^'JYD9BLH H3-$"_=#?$S.[T?:7]XKECG3)/#Z&83 MRW<[L9#0%/NY8L$QJF:1#=K(TY&G2/)<"]3+^270--U;SK%^8_V^EGY_I$SA M"NK=F4^89J5?C0A:HZ5VYU9SU$O7_3[P%)E\BB1.VR>=B/D7"*G8;4.P$*!@ MR!'AQC L*KK%++4Z>K_7TTK'S3-M.3Q5X# JY1M&G1.*TL/5"KM%= M'?]=RXP8>G[+$EC!G^7ADQ>F= M6%571WK)7,S@H7[@'3$,^91DKN\=86!X'&7!P/!HP' M5^EM7*BUUKVX-^JW MN,ZH::W*@ID8#2$NQ.!]#-$G)OX.7,!WWGSBSIO_:,<3AC\_:_ \G;3;6H.) M/N+HO(QVK_,RY_?Z/G(6YN!(#0B58)/0H-.K?VV!?S!/5E#]W*X=8CKC[/HF MHB.1&M Q#7BN0/@#'Q]U(_[\$9MM(]'"_D:!U#H-YJ-:]IH?'<03:]0A=#L^ MKQ@R #1_&NM]R!%T!%9BA82FN_6ZWM3F*T&OY*R(J[ZGYRL\D;;G>25X@=_ M]>#8V:H4:FSL_ [/KAJ* MXQ#;,ZK!3>LIT=2A<+%HF/A$5,-LF/@;'@8+I!..V'?I;+VXZ00.U-!9(_^2 M*!^&X '6L67(?L/VS/8**O#;VA=J97N)!/@ WCLB@37"YO2PAR9L-CDS/&=W M@!4^WP8$>OV(ZW;$]@(I^,H'.^QZ)<%+U]3<1NG'!:XSK71F=#4[6%C+#Y\0 MW1M2GY"_. XJMD.Y3#(739'T2&M41"&>SR?@[4;ATQW5FQZ8O1*5&75>24=J MPR@W3<5YP9K'7:7&7IO*%.G48]PR4A32*6/9BJ^UY*H"T"\2CK[[PHOMJ[8G MS%\Y/8Z8 _O@'O2=]1OH^]][@L?TG_8WO)C R8 8",P)FB#\]WWQ9RQ6F#M#M1CN[KM1;C,H-F M&LG?Z>T/?R&.7HGP]U?OF](]S0\F;G=B3SG/JU2YRK15RFF [M$S[0C^NNL- M-[%W>OK[+>RL98=@,IMH'FQAW]CAW\ MW^F E]B:$O IT?M>.?G/Q*G9+%?K#?1 ^),(TYL,#\ $#TX,P @/38_ ! ]-C\ $#TX,P N>9'H01.,]T M64:\_Y3*:QSYY:[$E>]ZO5?A]KW/_9XTC?EL)R4J\MDN.S$JG(A^Z38[YWO& M_7;SG1OI!-: W]* Z[@"MX>[8W6X"1%^98:_!1'N?:#[>,D7LP>?;[I&HSO( M'QCNV<.BH:_20^^+24$R?-T.+[\K SE8&X9YCWF/>7_IEILW:";Z.]SGMO6> MV+?_XWW[[R#/[+8D&B/:-_5GTZCL';/_6SHSPNYX Q8 + !8 +ZC"Y 5-1M[ MLP_IS;[%MM=O01A>28:_\!Y-VG*^C(MS^X;'00Y_LM&TOYMUHV MEO)OM6[LFW_)=3_ZSM*+VVLRGH+:@<-6K+LNSU]R)^E."GK315[B?HF;'TKX MQ5415[\>9MN?-:N9HBEIHE$P'=?V8 _AH_ZM0G.;6*K"O-)) ]=&;YCOKUJ+ M-3GMKL<;A2^U,LK'KY. '5R/[]9ZV9ER5[$&]_2VS=IA43[LZRJSIMP$[#*4 M[5\RX-,>T-L.4F/>1+^NE4CP]3-?KY4A:'<3@S351\HFA MSUU0\?AIX\> @J^(!+_L^71S*$#]<>E_L-A=I!'(@XK=+]IF8/MS=_LC2=[4 M,Z"Q04=!]A5T<%LYI8!7*"UQ]2M[0W;X]'!"C2I"3B[U*;ZK)E(K:&^2/WY2 M,0H;&ZSU6.N_@M;#,H*=UK,C5_FEJ]EFDCE[$K/&'"_7N"X7S1?=& M4GZ)_ M_&1HK/HXY,3*_TC*#RND49'(Y<+-YLS(+8:ZVQ::13TD9&(YLD N(09$4;P9 MB;Z% U^P/.5,9BW(JKD6X8YMQ4^OX?NA<4[\R^3$,:;>/(T'$+5EM2!,:SZ?FJ'RX8>%VXNG2K\AFS& M910/*MO8E'XN(XER$UL;.@;L5<>O&=(9,XO7%S-UQBFLWJL6DT9&(Z$A3?[X M&4F<7CV)<0;C#,:9[XLSISG0]^&,,LY6U6%^/M2]J"I.AXD,LW:7 &=@)C09 MPSB#DP,X.? -D>83"=4MC2;E(=S=9! .5+FB8Z?7G"/]Y\?M<[Q;MG/!X(-7!7Y MX/51=THN/)"(8LOVFQE+WZ3YN817[)JDN66FQ+4C>J=F2U$ML1S7F"6P:S!E M24>Q4<-X@?'BS\.+\YG'=^#%P"Z5HLU>9D3&&HERR9)&>KT!\0*F'N,)[ 7C MX!D'SU\8,CZ10GP[<,[J,[56,U=#H6D6\]VU0=.111T"1A15%R6IMYR,+UBQ M^4_04$RR[)EE QH!)@U=PO%)OL:=Q?!FS)?9C,%=.G")X'IO;.DXF!LG*W##3K[0W[257TG)+CI2\G)UYH$J?-VL>%Z%BMKENR3F2 M']L-Q:R.2XFTBHCUXR=%/I&1*]97_^%ZY^&& MN#AVQ;'KMP>>2Y_5DZH_1 M&8VBT0M:E@OX@ZMK+I_!/P8;!H"-;'E DN\#N9?K'?F(2WT@8!T4#7JR\$HC M;JT79O7TG(VY\8]#88"_SR\!\ 4\'J;R4J*C.>?Z'E3H69E2&SFR&;$20D[5 M(K6H.J HF)NCR=@3D[QB ?)W1(3O @BOEQ[=?:VX?=D#U&K<70HN+O&OE6?< M?:7?U@*^[W#?&;.HI3*LR?77([*SC.;='I^?Z/,Z-(OP4H0G\IIGTS%$/(SB M8(CXOA!QE*P\ Q&\4EC.9ZJN"CF7'D3J0KR<(9<0(E!2\HF\YE'?[X@1.)2^ M^U*_#TKL$>(8+\ZU]'(DK2'$2F6RJ8_K!;&^'E1J/A!$_1@Z\NNF7O]VX)Y[C::/W[ZHLFN/U.((F291CBS%&>MS\<3@26%XX5*";/4W$50MPTMR(3 M,I21^RQZKK7] F4_TD@N_Z8 V$.QL!/?$V))\-)$&/^@(G6[=2"5U+^0B]4 M@REKBS//M\ S1X:UW-)M^WL(*O/S$%@2/;0$E/IG9CD:Y/JSK0!3HRV4%\\, M-!J]>#M4'#J6X;G*+IPF_[H%F!\,!']\+[2#M>S^O6K%*&;$C1CQJ\/SF!$W M8L2O#OAC1MP,FMXN",",N!DT861Z"#[\J@,?Y@2&IN_%B%_T*,-\N!$??M%' M#?,! ]/W8@0&IL?@ P:FQ^ #!J8'803.,ST((W">Z;*,>'_]]VL_[__IF+D/PSUY/\ MV[_\^_A;Q^3^,.+';ZZ!ES' M%;@]W!VKPY_9S_D1B7#OLY?'2[Z8/: _:PXH.DQ?]ZZ;WX5[>-1N*9J2 DMN MCA$>2\&%I" 9CCVT#* "2LQ[S'O,^\NB/W5M@OPN]SG'U::PAAK[]G^\;_\= MY'EW=!8CVC?U9].V(FLN9O^W=&;VAX"P & !P +P'5T V$P(>[,/Z< MN5"GQC]]V?C&V.^U;GR7YG=:-I;R;[5L+.7?:MW8-_^2ZW[TG25\8^Q7/.AP MM,C+]:6\X=&$^_28_/ U.$)SFUVJPN32R04X:J2:BN/+MWXGP_#E4."779^^ M_!T-?[S8O=D*Y$'%[A>-,[#MN;?M>=]="Q^X];$?7=4+5C+1T[U2.]42^4V^ MK:O \B1__(S&$MCL8/W'^O\%]/^SM[Z2HTZOK#KS$MG28KF.GG:K,2M>3'EL@H4 $$6Q9S3ZU@TK M7[A81=K>IPMX-'0)QZ?X&E>MX,SX-\N,XQT@7+6"JU:PG./]?+R?_PW7C:7\ M.RW[^THY]LV_X+IQU0.CT-K5UG$H, M4I6-^BH^;%!S0U>*"T=<"'DC/?\JE3+C^FBTP+/-<'P=Y,%E.9^(];ZWD/N!'Q;Q/Y2]6,2_GHAC__$V MU2Y%DY2H]EC522]OI^Q4CH[73!9XC[#:)8Z+K''4BJ/6[XXZERZP*=7)6J*1 M&+GDFNZ+G?G4<.>V"C$'%M@\,73RSZJOV64$*1J]H&6Y@#VXJN;RF?MCJ&$ MU,B6!P3Y/H![N>K#1USJX\"JDM%ZJ[R5F H=MM]QI$@\,3+J'P;" 'V?7\+? M"W \3.&E1$=SSB!AB:<"DE\U(,""2[3IT;*KFU$&(7 M@M2-&:UE@84@$/4CYT0B\JODX+]=^.Z?VV%5;PK(+UU,0#4S-/8[5I/AMU5Y M_TWXQ_G( M08K3)T/27\I^ZO]U./>],H8DR[#LYZW&'2PJ(#&-E$]50D-@1O20"#>VGD5C M*:Z=8)'Q9#A";3<9GG=:RZ!\*PGOR" .?H;D.*'E5%R%#B@6*'O(4$;N<_"U M[6=(47RA4@1H@X% M/B#%_L-C&IZ0QO\CT'?I;SB"^%^"1M_\UPNBO:#^'GQWM(# M43*1C"3B\.A^C!Q$Q(0R$"-R9!!+1B5&E!-D3)2A0(@?^L: _L1WF. [0+LA M$FNF)R(D1[@W'!1K25>;S75%7Z\Y=]DF\\4"HP[@4.H:&CSQ'%<;K5]N4B1V M&LPZA#4B>,FUAHI-,-03 2T% 0P-413!Y.WU[L,G0H-PH#@N82N2HBT@_,*: M9W>L$.(4Z+F+'O8_][=BT0]8L5_NQ-N>(A>"E:,=]]UEY&",?Y$C]'G3GFT# MO-P9NYAO[*JB;0^*ZTE*'QLTS96FS, *M:82'U_^^'D=2I$[4@V*!CU9>*41 MM]8+LWIZSL;<^&.3*B&/JNQF*.O"?!AGA\JJ'^\;@%14^%PJ_<4'!% 8 Q)R M":8 1%,R/%F1MS(Z% TX%22D;+:Y/?@.EA(FP/S0&+]P'XJ_J9D*,074'3N$ M8L+'G-42\ /S!+\*7HC>>F&>9CP;(; M0I07UOE1;_D&BT-@V9#-2V!)'<5\R>.:;0&_67:RMC6%7.5';[MY9YG82GF1 M]#@SK.JE>L;I1$-3GJFK%Y?W'6T2YVEC*_.VF!\TRB0_T"F)FG8F+8N],VTB M0SJJV0M)T6->O:S&296KN_7KT2:0F\@1;2*#1&*6J$?K+$-V\EFNERT49 MO3=M^G8T9X/EYTEE(9;DC#N1>WD@-Z;U:UQ\!W(ZX(4(&2$*IJTIW96%9O5W6TX/:3.!,X)OR[)?'TQM+(O"JA_/:L"S0G4+*F:]6 MI#VZOB1>&WAO2\3DQ/$&5L/U2$]>!F8.SP@["O@,\!!&U:;L[#Z"W]/,A>(+(U@; MLK*0Q]9" 9/T;;0&>0O"*&=FF3!M L7#+U@"GX,0'5+$N0UGWTR)4N]/B=X^ M^_'WH,0!W+!^Q7F0P7_[5 ,'BLP>B1!O^=/)G]))G5 X-WLJ)-@@N50?* M:^& T;O;$&]/B,,I'Z#-A,7($+YT%NKCI>#O5L>>+;S&JEFG-%#@%4ST+ M_BFF697K DV3::\7E8Q-&J5M.Z2RAKKU/P)K+VV^'9A0EE:J-Q:YRV=9TF!]$0 MJ2A6N@ED+1D^+3/8$>H3F,<8> U/Q1=I2=])\]VP)^B2/6V3E8#,P% Z MR)R;R'+ 6@M@&,#__&=!WR9XS"\VPKY'O= M0SAW49+\Z 3\K0!WZ^ ;P'_;\3.X#0R8@QBLOO9-GS"E,/S9\6:0DMN45*#H MENFG[VOI,/&AO2MQ-K.M%4 5%SKI]%]H&$7_]=*RO)(!0R1%"X(_0"\>!!E( M#9$%&BL&6,Z:&&U/?!T2](0HNV561%-4D3J?"X!$-T""Z1 HA1P$@+L99IS= MP]"D @$# X_$ZNE4'."?3@3B:;^\W4;)EN\*$I>/+0XAF;("C_%#5AB\F'"I M(?!M#\9 !EBFX3P=!'60.S9\@0V4^G[1RP=*. XW>;<[Q2UIT%G1KD)-BT4N MG9_SU3D7;;T\>FM.-F&*4!UU!G!=";-'I-41)!2.C+T=6"J'R M1$T5Q\):*Z2JFW%:+LV68&3BY./#MIQ,MU'IV MK6Q41D)IV"E7(H4*K1;@ZZG(RZ':,!/MAMS\D.1;JW;!6'LT9[)P:/SE4">9 MF!3<2D3A%&FE:6:S.4@([( Y73Z;WG2,Z,):Z\JJXLX&+7K 6"H8>;+\"+M: MB#%/J7#>@"OJ?PX3R9H\G-1ITG1?C^T^7;KLSSY$9R M];EI]!I=,5_IBO5!9$"^'"EZ6K-6ZK4+2MEXVDQ)@ MC:XD2X[2MT:E9 H^,_9R9*/F,(E$W'9U7@;14JPN\%T7/O.$^+8CU]ICBK;U M9C)3[K-3#3/4S;U*B)?K1;ID##7 M.NQLT-BDK1D:>L*F8M-,F[,A(Y,YTS.Z?3JGDD.X)NID^3.6C7%:2UAST_B: M39##2*]IPZF>$>CYG+/GCCP1IMQ$:!C64)\NT- 3 JASMKF.U%J,+I)CHY*D M&LN.!'O5G[#43*\V+5XM<*0VZ0S+]205R>?80?QTI#,N-&9,=%X1^(W!N_1" MZPK%.AC)G#PSRQJ;-M.5!*TGAQ;N8@6TIE^8(E*'&O9:6C9*LW6<*A)ZL7]6FT-D]-.V1N(@L*TS52 ML21L7G"R)FDZ&L[LHF>3BKOBD_7II$\/@R99QR.%M3=JY$]LK9>M ZX7BHLE@QR<8FQ'-:K586J?HB M(OHGGD_AM&/KT4Y^WB([F8FZ*$;+KF[#,NB3-0FSF=Z+KF)#;I[NFE2UWL_$ M4W4P\N3UH8&MSCNQC4?.BU)&WZ27M2P-GWDBI6PY:L7F*[K!T7T[FI3;@K54 M8?WER3S9N*JQUNI<4R>N$NN9+4ELS;DBN0(/O14]=(EBM+9@6[HH>HDI([4U(:D_MD5@6F)5D0LMAQ+H2-WQ6*,^ ([,#T(!$>P,/,VU/>5:Q]/O';M5 M^19'1/R3@=0_1)8M-(@V6Q8XHL*Q3:'!5;AJJWGI5.B;6Q C"Q8IP10Z*B@F M F?4.1L''/O ?D\'YR-;"[Y?#_, 4W2KBN)[S3"[;\N!GPVDB(![& J,&T7X M-\^VX02'\!RR?T_'S429=1S%=2K!9'FSL9T-.A1]*MTEEX_HL7XU2:Z3&;[4 ME-A(;5&_EG1?N4K;EXAM/;-_D@!H@R'.'.5Y^\/AI&#U;S A6"J+^&*Z1_6U MHN=:Q\6UZ).C@MC3>MA]N7@VK= M@^?#.&X$%&9+M^WO(7@8X]FOWX;;L;\LFPX*V8_J?,4A K/?5GG>^T*ZD]M M5QU6[/_N\23FS3OS,"-NQ @J3+W9:!DSXD:,2(0Q'QZ!#U0X@1GQ&(S R/00 MC$B$$V]>3XX9<2-&D.'DFU?V8D;<#IK>O.\5,^)FT!3#T/0(C,!>T\,P GM- M#\$([#4]"". UX1338_ " Q-#\((#$T/P@CL-3T,(W! ]Q",2(0C,&H38=37D M*@8!ASL/$NZ\Q3D_5CW]]T23+^76?.$XOV#./-?Y*AB7>%0Y"*P9%@0<#V'@ MP,"!@0/'3=>-F[# ?'?D\ .H/TP./A=?W?MVO_2+QF#/%PNJ[KVRBVXK_4ZU MY!T(\6$K<7/2H*.RF#*OF@6L/5A[?E7]BTGS:OR.2?-JA2PFS:N'$#%IL#W" M]@C;HPO;H_L$0X]/&JQ06*&P/<+NW#74!QY!^I-)\^C5',3VOQAZ?N5EW_XO M6KMQ\P*57QVXOL(B_^=2Z;T;*AOJ-GHH?LQ>!,$++WW!Z\F5Y4'_V<&N_VQJ MO?LQKRFV:$OC-2K+8E>:E;FGF-+Z_/,. M1CJ[UKAC2V0I2V2S06"?X>F2\BL5F^D@B159J99LN-[:[ MQS=Q,1^X'0EN0+"F#/_'[;*?98OSW*07$40^Q8W)J%.7 M:-B*GOGQ,TD])9/1,Q=4/OZ^'<:=J[5%N#GPH!;<]#]?L3#IY=+N)8?7/7QQ M+3E\NZG9%Y9##'^/+'8/!G_7\;N^H]N5G*?3MID?LJ18C ]2\BB6L9?L7=PN M.MTO-[KT?"/PG>2RG8^TYB,%W2M$__A)T;&G6"1V#'VX["\O]'[ZS^Q""_PB%>@]!B+OMX]Y=$^Y?<_<@ H!-P'=:-S8!#U0; M]Q"$P)KP[07@VYJ ;^K[W+] [9*"_\7*T81P,TRT;+1;LR9,RU4<7)#VL-L1 M=TI./7(2&>]=8!E]M VV+U1C23_*9K_0W%JAYFXW)7B$/FT-O:$:'W%SV7"R MJ^F*E9*?W_#?;>!D+;LI&LK^?1EEZ.Y_.[/?;T3Z66[#Z6UN+:3(8K303V9B M[" ^B/WX225C3U&*O-)V/RYX^U.Q"Y?'?67^80/[M8445U)AJ?W:;N%W]0HW MDUIJZ!IR%;B'N>9"7$4FA?KG3]_\AE?(5&/KBNH,';TYS6:6.48T^Z$E\ JI MZ(^?T"N,XM,WV G$I7JWS6:?2W1*ECVS;-%5 $H,W6W=WAH7[5U^O^Z./2T? M@2ZO%?7=FRQWC 2Q[NS/_9.=Z,!8@/!"6]-X87(NA!JNVS=:"Y+3EO=P[.=V0HDE4G*.X\FDG(Y,_^<#?'+5T3<&R7NCIZO5(O>FR[8M\"^Q=WI\B?X%I=.;V-C@M7E M#U87G%>_DB=>R+02KDUY(DE[;9?NK)/=K'"7P@NSRR3;L52[+W2:3#,[DB,Q MD82>.$JQ/S%T\GH9]F_I6V#/^R.URO>FR^U3^W?(XU,T>D'+<@'TX"+E#_D] M1_+) /F4+0\ \7T4]V)M->^^K+L[*5^S[V9KWEHW*&$XY&(D*T9**TD?..KG M_0K'4=[;L:DBI K]:*WIZ6LFH4RF [[1;+*#)&Z4B:'F[1#IWNOZ,['FZA%1 M*M(8U-EZWB3YCA6)Y/EEN9:Z#=:LK*J9FD6Z-8$>D:\V0=8$WLQT^: MC#U%(E?<0/B&"9Z3NYC_#/2)?3'TP17DV&QBL_FU6[3.&ZFFPF3;:5U+K$H1 M?KIFQ/QO%-=^P&H6A908WXB-&<W\=F[R[4TC>GTG.N0XPI#F\.)X\'\ -QHH,CH M4R(1P1D"[*.?VQ>X][I^>Q?@WR[KW15;PK>)IW^_B : M+8(X6) #P),;EF'695$8I:H1^LL0W;R6:Z7+11S&[.^!3-173VW M;%%66%/FW;%B ]!4M 5DF+-'M!9X6T50?>6N5;'!'U58/ZAV#3 M:5ZHMII$@TMSA3:;*G/_^??09_+%]77B.:XV6K].$E:2+ ^82L+>L9W03,GP M9(40I_Z?W+'H$F-QH1!#13$)(*R&(A/ ;S@>(=H*^AMZAFL1$GBW!<35"1.L M0U@C@I=<"YAA@J&>""B93P24-X58*H??W#[35@S1!>\!3P+*8@'H=(!I)V:V M-5$D%TP2?AO\U16-X#OP'<3_7-C?V6G7@48=ZY=CNX.:;Y/)V4[$7FJ0@ MWP2HUH /YEWSIQTX(K1$%ET^.6$Y)=7,I#,U6V7KQZ7(T7QM"OD5HE$>;S)2!NJ_N,G'0E3)QX( 230 M #\\!4(!; LBN[*:@=4 [M@*O&L04AY^;"BN"Q@,?I-L1=9<0K;%)7@U<,:T MD0:& ZY5+5(:3-Y5P)R#*4+YVLDJL=36Y M!'0R-1LM5S15#0HF@ 0HD3:0MZ'H@,4 X0*2J2R \X=$9$N%[<.0QL?_<8C1 MMFH&2A9XIX:^"1X Y9\8 5I;4$O2VTG,Q#7R7^$;_#'@>[#>!C'E"7QC"(R MN'L.(*T!? Q?])#T(DE &JDJ)IRRL29D3T'+ SQ@2$(6UT@IH=Z!93X!V9L! MJL 56[YJF8IJN9JO@XH]=7;+LVQ;<6:6/WC[MC#!K6;(5D"* JOA*&C^XA9@ MX$11'[ CJ''VH@2^)FNC$5@MG"GX#;YL(=IK^)IS) 3S441IO*-WF#CBM 7T M'="5T%STDMW< KX'4X330D+A0"=%<\:0IX!>UA*\3X$Z^.(+.]X#T115%&CL M& UKGZ;P&.!6'\!7?'!\L5!+ I$) C4T#L0KHF;"=1K::/?MF0B]1<\0[8/E MBS#H\%>Z1FDX2<(+L>VHOBL (8+TL@=@YD!2R:?P+./RU?# MT\1Y;T6-3\O%BM+ND_1\17$EB^PLL_4/0^,V1JMMB9*U[ QPF]V19VQMWEEX M7 +G9112.SH7*SIL51FV6YTA@$),DOSK*F'5\4W&=.2@.LDW8;#_T^QH[O]U./E]Z=@+Q_5@56/? MVZ51E*@JH:&MB'I('($7/XO&$IB#8)7Q9#A";UG**+BYB#.N-7NF MJ7#L2HSY_6S&KX4+D2($EKU_84"*_8?'-#PAC?]'H)C2WW $\;\ M>$W__6" M:"^HO\\2[&@//WKE\5O* B4*(CO?[7@S"@RBNWO$,P :&=]P::8#O@'<3DDT MMP;S#;,.;/2) 80(4Q3!DNWU@54$0F-73R<=?E!6_88V-,,MFF M$TM [/!I5=-5;>++Y+.2T7JKO)68"AVVWW&D2#PQ,NY&IOZZT$]5W&A(UT:) M:6%:]D(Y'EA$*IQXMT7T'R41:0 M) )Q6#P8N:E'U6E)ME9D+$&VFO6!-ZSE5#"28EX.C8_9PB25:4Q(S:2M=E29 M.\4."QP/^N5(OCUD$_JDU->]>#-:;)423&(#1YZ\OI;G,A$Q80ADL]JT57V4 M;%C&$HR,OQRYGM>8W"1G)3DMW\S(=*LU*Z;A2(I\.=3BNZ7XM,OPG-:MBE$I M9\W<*1IZLJ9D.S1-*9$818988=/M)TEAT4!#8R^'"BNJ.EBD>F,NEO0,)M:8 M4#F^#H, .F%-*3257)+4Y!W1FWNFN4R'' MS7268.0)I=RL96U*PS:C=[KULASKB$U'K(.1)Y0R$O%NB"T52]QZ5:^3F4%M M)*-GGE*JM6P/RK-&KDUZTZZ0(>NM;-)#0T\H%=.6%5H6V8Z^+K7+W=+ 7@X: M<$VGE,KV6* JY?:43+LKEZ=G@\J84N'0$TJ58SF:CQE6E?/$?S6KU=+ B&O:+#LQNOQB6$5# M3RAE=9IQ7IX.5$[CVU*N96?[E5(=#CVAU+A5<)KK;&C(T2;@4H$9SH8M.-4S M,K4JQ8?U0K),:N),J;E+9J0FX66?IU,=&(U6JJSK^I1;=DHA+=-G+740.QV9 MG"[+FJF,S,_J,M91TK!AY[2E(_7 M!BFE;UID,[O*:$PH)6?L.AQZ0M.5O1:97,/.>D)3.A.: M.:Z7;W&B7(_W1O-V:R1#\#O14T<-=9A(+YK5U]UD)J]F9D6V#W'B9%$DF:GQ MZSSEZ3SGEC+2DH\(NGH.)2.U1:W0[L_37*[23:E3(=9.\E!-3IZI)KK#1'(R MZY*A]+!$UTHE3'$3==!]'^R?EH:X)0+4M> C^-&(H&= OWFQ(S&_B/-ICS-D^9JS71@UJ--!@T MLVP79O.@N^L\H3]<)9GV:@5URG, MQR'E>; "J#(;KN-QHN?02KW MGMTB_JRX^;\BB3:: M +^@M*A-2)HM>5/']2$(;1W8< O")D3;3$7K! M/03'0>\/LJZG2 '%9$-*C,K5WX;"C[(:X)A2!E(HLZ9< $9]M/_DI8^36E?$B66G M#4#)%DQ]G+HZB_2BTSBMX'^6O^7TGJ^EXF'SSX,Y!KOC@^7!S<@3D>4NT[>\A6*#V M[.\>+ &9?IFT#_91CK+,XA"XC)[[,LO\F 5B!QM&OWLRG'ZSZ3!FQ(T8 7S, M-UNX8T; Q&8&AZ&$9@I^DA&(&=IL?@ T:FAV$$1J:'8 1&IL?@ T:FAV$$CB(>@A$X MG'L01F!H>AA&8*?I(1B!G::+\N']G=A?W;C^50G!E4]$GB'-31H+_6K#_B;\ M/ZS=O>BJW[45?CL13WQ Q*]J<&^[Y-_EL609\,/_^Y'X\5DI3X9IZF6?J9M> M-I%XA_*_7M#^XV=0:??__IN*D?\PU)/_ ZR/VQ6<8Y'!(G,H,D$=YB]%YH/7 MF-S(4F*[>$6[^-FJL;O+-!>TGY$QZKV%>O1G42\>CEZWE>_O"D#.MAP',_\J MS*?(<.2ZK51_E_NL)'E3S\ \'T!H*JXF/7?D_48^S'V8^S_Q@!P@OTX='V0 MT/4MKOEYA]-_+Z3%?LSZA?,T@J.,/(,H:R/EJP!;XCH"<"D(^\+"P/J]0K$@ M7,:?^=J2 %:\04?CL3A@7,"X@ 4!"P(V$-A 8%QX+RY\+C[>]UI__F])4I31 MZ+;1)+JL";7WN5@T?.\EW3X+$(3%MU_WKX3X]490K]^6_KX>3D?7)2(AJ@(9 M)\U4-P+;X\*[6*/$6A%MY_3FA@LA^/<3=[^R M^=[KOL25B*@T^+YZ>Y\+5V^L]Y^\$O6-.:']J3,WHR8T3TX52DJ2X_/FT%UQ M<\OF8&/CZ(^?D:=(,GFE:U&_*1# 0S_W7O=E[D:]TTHP$OPN$ASL51Y&:>=N M39;2&[9##5 XL=/^BD6O]:5R=\4&["3@*'AOM!05=PS M,)"F/#6[*59R@D@MZZ5DQ$D,-NC>#0J$"T\)^K1K-,8!C /?%P>N P,%1D@F M$L5QG9LRFIS.3\3\,L3>,E;HAV1*J_8S#:'47,57]=4FWS>A/T!%<+" @P4< M+/QQ2/#^6*'5RUIQ;[%<"UXHWDC6>NMRHXV]IJL MS9PO6AA[IWV_;[+)MQ65QJ&D!&HZ+>>FM6:-:73WC5@OPCDNXWT=>>;_O#Y?IP!3?KSCC$8C@6_$[T^#N)OU^ MN'&['$"[FJ*'U=ZB**S')5%=TYL,OZH#*(G^^)FD8M=S\O]P#0JB_>\-(XF' M( +&D;MD$!0]6JLU%#TCK.N3)+ULF4U;ALB2^/$S0<4QLF '!3LH&%C>SC\, M4WR*CQ4%AEN/VHR7ZM'E4(D%( +W*J^Y/_&'ZP\&$0PBETQ MMD4V&V1BV0O5LTKSMD61%#L,->A:1L^U>G0WUB^0F0)"D0B.G^H:B+7T W1.XR4K%W@*1+WCHJ0![[F,NKUE-=/>5WMTH[E-_@Z)!3Q9>:<2M]<*LGIZS M,3=>O^D>XKQ()JA,K<;-9\G67)(6>3I6'\3@'F+T*4+A\P2W*".^NT[4D6G4L%>B^?[HP2>-3QECYL?)?)4&F9+3>*F\E MID*'[7<<*1)/C(R;A@(L'9_TVL)$(=>V%V\Y^4V.KRVA]D=P+(!C 1P+_!GJ M_X%SA')#CQ:-XE28=DODBNP9F_$0N0-Q& M0R2MND7U'0,#NP+U7^AWQX'PH M4"C6/(W+""*9EJ16,L6OW7P+ZKY_>)!^LP@8[6S]VQ7!.WZ>G&6ZD$QJ9BBX M\IH,OZV]^V_"/[Y3ER\N3Q//<;71>CO/1"!-B9U$M<8*X*=A6$L@UH3F$"+@ MREB1/2#_UH@8>:YG*X3HMV^%GX@'Z.V?@51DPK6(F6=+8]$!OV@[5CO/:%6O M'[?+>#9ZT( >!!+8L@Y#TT1BEJA'ZRQ#=O)9KIXX".KNV:#K09WM&/T&+_3?Y% )_^M>79,<'*YA^:1_^S,NR?P'&5UCT MZ_!/>'N&R@U>NOOBZ_^/V(OT[^9B+2?H7OO8C"+$NH@1W3LV!>#1*_&TK4U$S 3O^=2EYOO>Z MWH7:O^.'WGN![TD=GG'DOF-'LKO4")UF9!I;)>-'60WF"*%=.9,ME$(ADLDQ M;%/PQ$6D/IZEVX+.#I@!\^/GF[L$7\"#!%R(?3N3>9UP]VJ@^3E@P2AR&Q2I M@FFUEHJQ4"I@CN-SM0>UN2AYC>AFI#>;N;'#U+)1+P_;&0, 8>)O'?+]LCY, M_$_Q6^Z%,_=>]^] #_9I[H9&T(5I+:TS(-0KK[B-M8ZU]&FRQ F#K*"VINH@ MBD"(?*MI\M=P8Q+8C<%N# :.WP*.L:THYXX!ES.LG=1IB8N%)HH:5Q:EG@%/ M35P).NYM^P WDMA_^=K^R^77C1V=1\.KK.6=R]?DJWPE'3>$B)ZV)TMEDB/Y M04X=Q/\(3ZP. M8M-ZJJ^RDLOQQ17*6<_]>%\GL9^_TU7;L,/J,,W8SF2(;E>/:9BO;(8M;HNI'<2M * MA7E4*HPR_%SU)5\S/45FW3?&#> PZEKU[Z\=3WBCN@0Q#RB8Y=,.UK-;]O,6 MG%[^U=!,Y=F#F\KPIY,_HY<\(X\-O+7*MS@B3D >4M0_1+909:OI0C5'L(T& M6\UQ%:[::A*[JI8;*-4+LO F41'7!!UY(J" /!'N6"'2UA3(VIH 8(=^3XFF M3B@K1?+0$0WP21,L&/R1G2J $#(:V% <%QWA:"@S Q@]\">72-N*K+D$J]J* M_\%2<\=@.'C:3/,I1LC@6_ \")P'0Z%YQ(F_X5L@V6CR'[CREP]"?Z+^^5>8 M@.=.SHT@'&^FV(XB ]K!AP$;[+\53%'RQXK;L4^$Z!"BOQA( A%,%'RR6[+E M4XF*PME1\7>N(G*T"BYX]VLK>2+ 'SPIF.U0=!3"4/P".,F:3C47+#OJC]A0%I:Q L]'A,\H#RV6QPUB9I"J;6Q MR[I7GA5KZI'%C'[ 8I:!TF[GO'N3N-*FWC1EV38ZO906@=<&/M_9SY@/?571 MM@>534>IV&ZK0(I9@2JN5^/$B%D"MY\,G_K]!-!@ [+&M:[&+CKB8_O;[/+Y MX^P9%+\4@QQZF(M/G(W&E1PC+3@SDA^.[L@@L@H^BZLC1UB38X.TG?(\DE=_ M_&2B;S#HB=!,@ I ZWS],Y!T0X4.L&*DP+]8Q%"!3' TQ]W!F>39-OP%@*RN MN/#/,BJ@=YX0,$)<'!J:,PX>K<'21_ A84/( '0!BA_0ES LT01(Y&Y!UH.( MP0.OVX3FB@#NGFA*<& #?O?O %J:?+:QA1'BR+V -[^%M%7(]R:>\^A_@P$E M]<6E$LL+I&60&5H<*)TZ89?X6)@DG .,T-D&UGL/:& MRGR* M,K!U@Y ,/)9/--2SB>2F-:GHFA.5\@P[2H=>=(V^KT2(%E7.-MQ1CPLE9+V8 MIJ.)=6@);PA]RTG:H\+,MA8:C"R&:\3FUYQGW_W?QBM3X'M[CN+CT7:>A.A' MU$C,X*$XP@)_M[=V7=N!ID-HCN/MWXFB'@A%!R$1"N3B_SCH-4!>X9_@E$UX M/D6R/!!O0&0:>@X@J^/ L$)61N!G>3OZ7*@2)K*>#2?UM(TTMA'$<3P&4' & M'),@!C,5U7(U/_J Q^G1GT43@6K R*?M6Z\'FELO]&6C]$_+=F?F9:;:HM@1 MYN,B&^;AL7\R=;#=[?4D:E6:<$C+,=6HE)OA"_<=/^FUW$O@GCB>: M"-V68TT:$VPM_716E@HV< XA&CJ:K %!>D*"+(E;48:"N!O,>;8U4V#L"734 MEVHDMH''ZARXK("Y&I#JH3(6C5$0U8+I01?6"5Q+(.HB,33 "X#C.A.1&RL% MTJ9ZH@T6H"@'>L':JK@S^7!>X3OE+5B7X"77 @*SC[:ALWUP5NR, LF:3)B6 M2XS%!= )\,$.)0#=/->!P@\A Z5W7E57(L"$UT )1O+.#%@V;:$8ZS!Q9JYH M6L#K6<)_;G5!VZ=5LK8RQ<5 W9B"URUW9+86RVB=MQP0=.$T4,M7+IQ^82;Y M/>59A%-G]7"=+L\8*]]QR'FRI/9T?M7+ND /3>M4"P]Y>:H7@3COF;P-\?Q5 M:XIS,ZD.^J9LY7,,[ 5 >%D-('X*+Y2 6@XF#U591)E]J'^^ J,/1[N@$)!) M!&8;&3/?,AY!!XQ;H?AJ#E("6YE[2'Z1NRV!7YRMZR4#R053A8XY^$T2 3R! MCX!!-F4'2K\#5J.-- GBFV;"L;X!!=,W+#@1YXQ'!Z8'5J2X;Z3L@BDY/EB= MF+YU$&\'CPX6CL*#!?#$T S<@"90@M!MY"$P:00-X$^*"' X^-L,L'7CMO);#_\17.$@#.P(P)-A6-78LSO[U#_6K@0*4+489>@@!3[#X]I M>$(:_X] F:2_X0CB?X%M@]_\U\N.$L?4WV_S[F@_3J(3T#H M 6,CA)"V!9Q8,!$7'7H*3>&I)X#<(MP-1'.: 2I9 #99A'IGG9L=:'J7B7+>VB+MM=(M<5IL M)G21RX=X/N91C73]NIN>I[)XQTW/Q&[3,\U7*H46VNF\\$;G@ZV[IMC(!X8R MGK*@JP3%.K<-HYP[;O,6S& /%.;=SR8J3-\/W/I6R/.$:1B8H7..-1I&IR"& MW/F/ *&L(?H6U 4(<39$B!TMAA;RQ)]0!F87U4(O'/T93./$1W]",9:US0.] M&IHZQ-_0';6F*/<\! ZAGY.&P94U^A<$'N1$'#WK8&K H0:H8$K^WHYD:#[L MF-N@.0!K"",PN(#OVH;I,$R C>!59T^#'R_)9C *+KD+5$V(IVTR77 \0' M(!@DI#1GFSL"_ ?D'!F UOM,T=Z]=;8)1Y0A@XF1H'HOF$S+$X ^1; MH;<#P;M.1O!C-6^)=V:K_88.8($I1(@#Q.7W9-BE#Y*'&6DYY-*=P5@AV((=X)[=/T/YB:T@[7;2O-G6)EQ['^!, MUC$5N!CL/L.TVR_+*=.I6+.6BMU<@WAFZKS8(-OY3@?:G5I74<1TE+_,;NFS M^T;P)%8;=IN24XMP8E2UY9G8+@O9SQ>GG)M0L)O K68H%C@KLJYB,26USBUT MK;TLEZ1VJ$1'@<@RX=/>$+OM,.10S68@7CMRU600"AK6#*&#,@)3A\D^UCPP M*-#H':*%.P:NQCZ=#V'"MY'@S[*'< H*!\R6$7Y!WXLT.KTK-?';Z*#/=B5X M?ZY'W_%A6KNK[WZ("ZIB*C8 L?46')R]"QMRUS-E:UF@&PJ]O*5EZUMW89?S M#EQ:N/'IZ_[.%_0SH0?/\'=,966$H!)() 3+F;_+ 87-!CJ'T@PP)4P$+P04 M@'<\WH&SQ% O]W\=Q0N9?-RJ)Y/VWV=9ZJ->'?< MX^S5\AZ%2\ '45X4+@%%>\<2JM/V-+LLU%JH\EN$O Q75H M!(TA2O&\K,1"F=D@48/ M>KK[<'/O*06?$3"0LN%N/=I8@^Y0\! DX3"QN86RH^E!"9P!D4,1(/2$72C8 M?D51L*3C$ )NP<#=$64%154!>B7O!!VH#_P8!6D[B?;#E2!FFXD.6'KG^&\P M@-F#\Q"UMK?,@S?L,V)(A<'"T*)0N@Y,23?!XGT?DM@F1^%R4*YN[PGN* ]5 M& 1[-H@V$96V$:?O(Z*]Z&!*05VBO*^-V,]SV[#_++P$2WM"#]K9$M$)I,5' M$T@EN Y@?'8(]+0M*E^CKP;;*_)QG8)_/0!< 4QQ^B?R=B2&C@W\ +DX"*@# ML@81,5B/L@6R?:R]?7"0N_!A*$"@73854"&(P@EI#'?2=B_=DV6?M_6@@P%G M>D8F4'P4JOX)ED8M1+ZEZEPY>T ME=@=1[Y3GC*YRU.6N1Q;)M)\M56HYKAJNL!=.E]YR8S=:4H.%37,MD<&_ P- M%%0#"@1$!TE1X-^:MQ>I;9%4&=3%O[C?:3;:8*?I(%AM"(? M>J+PA8>;QU,DIZB@%(74,\T,C R@IZ@&Y10[R#S*1.W32:[OX8+)*4>%%::U MJ\T^H,<@>]D5Y 4^20&\;F:(W@>A,V@YMC)_)(UPTU+SR MN;FKGSG;;:;P(RB:"LIZ66;#%YXTE*_F&-B,%!2&FI\=.0-H-0^(ID!WBCI= M=?AA+"UE2I'EZ=FT\^-N<3;MH>"/(G?XUVSQZ5(HQ3:Y#-RSJ7'5)MLJ\-5[ M'D\+CN/O\.8 2AP7L)T0@>M*;?VK/ZP M(&J++H^*_.DW2G(!*:]&H@\"QO5)-*1*,X#:>DD/T>U\/.6J6=F$1X?"I^>B M]Z6>A]5^!_[M3<2+.:(=,P!A5EO,#QIEDA_HE$1-.Y.6Q=Z"=J6D:?5H9E(A M8_9,-^P./:TR[ .(UTL2*6IDX:0VE"KPHTTAR@OK_*CW^0+C#Y"($9E06>EW M/8[/>)M5*=8,64OV;?'Z#+0Q'ZE _4)[!EN21=5R>PJ8LV0!EW2CR&>YEBFM);Z7SPVXN9TH-)UB;^PVP+C1,^W=@U&8OGUSX"P?V++#K:0CNW92!^F[J8X?J@9/]RMW_",! M*Y>X@JOVLK17]NQ72GNOQIH:BMBSEAU\!,=1!UQ*5Y>&.%*I!ZL['K5740.7U[ MOSLVRHT1715HJQ_-1LNYI2FQ8.3)VW/5NC6O1C1.3V\4IK]@H[FZ"/O;G[Q] M62E%YB7=:^M-I:*SDA@OKPT6GJ)].5))9-R:VH_D.)YM4IED8QPKF[!=]CDLYWZG)1T$J+16$YB W(ER,+W>Z@0N:+16[-&G(EZI6B?=0;]V2> MIB8T0@5WII.Y2;I=F#9I:1J"SSQY>XD=A)+=O$B2=&P2RUM,(J:IL('ER=OC MG6$JG0J1*:&92\;%P8QTFF0=C#QY>RJAB49<:\X$6N]LRNE8DPP-8$^ZDV=6 MTVV:&U'M#$F7U_UTK-W,.%T5C#QYYH)JJR45N A";E&06_&HE:WWV4'R])F+ M&I_L3:*#J%[:)'2JUJ/%7KH.1IX\,SD8+V2=U*>ZE]*%.B5UU-X8ON/TH6E: M6_:J>=KDUG:J&9\V4VD#B!T8>O+4%;>,EVW6VPBA8=E@-H61ZVGHJ2?$CZZH M=HU2)%)0A$R\X:1M.S=@!Q1U.H&,(JCI:B^N>U3+U3K[-PZ"D%)DYRX9"-$EDBN?ZXTN'TR H]]7@" YJ)Q\6X M-!S$$A)8B#P"4Z2'@"[T2(S2<8#2$>GEPZ6LM!F5$XLU1T_E;"&^41EF"*'W M9!K.("UFDXNVR^6F64LE([5F5E//06^JV'<:;M[2A.8P7TC4K.JP#T:>@I9?AYQ MN!@]Y.-1.L\W>\MS4)'6-NFZH% B*294(1?5EYT!@(HS $ [KY+BS -".CT=2I2=90LF0,R[E](O9C7H. M "8-.D7.LZ$Q.4_T^&5]7"SIM?I9 !@P";9<7/=+W%P?5V8:$QLVE^PA +QR M+.3M].X'DL'T70Z1W"C132K8%*L7^VX?N6J M]?2T.U6YE&J32C'>$!NCFCQ-L5=*YW^H$)APO"DZ%&2-@@C?FOG;6,&*=GF> M=R2NX8:ZWQ4#;GPKAK4D_G8@[8+]:LMS1%-V_O7\QU_9'HF'*7QE^V_L\EWP MRO9H'#/B 1@1#].8#P_ !SI,1C$C'H 15#@9P8QX!$8P809CTR-P F/3@S"" MHL*1-R]HP9S *O&]&$&AG3[,B+LS(A%.X(CN@HSXX,T_OTQM/,IF]E73!C=A M[6%Z]2:K_D6,?N7ZD3WO]U<8Z]Q]8Y^XC8=!4=>^ M[XI Q7E6G+X0R"2"@ RB_OJW"M2VU9Z=F_UA;5N+H7)X*C,K*_/B1'EO!;Z< MEI^"!KRAP2__WR_\UU<7PG@4OT ?WU!,KBDF9W(;ODV$Y OY? MHH!LMY%"KI\4'- H=MZ%\TP2$%I!H1446D$AT-V.%10N=;>G!;=OX%!@1IPL MACS_H>;-4?Z'QDUHW(3&30ASCV/&:$5\7C\VJ[]E:MPQ>SNB-0W(\;=?J>K?C\WFDUD6=\SR M5S3Z:S;'5&4I,NNT#L]?)XB.7%D^E^T1Y\6[>V6[D[T$WH?^%:XBX4F(H@RWD3;O-P7!_5>"Q:%)&&QQ4@L M2B8.*^8^B&Q?8XV#9UVO/>]3K''!8=&;UN8[6N)@<]0O+V_TS 526_2;H/E- M4G8*J+T.#/Y./]SHAR%Q/QA^9.&;CH5>(M-%>55<9LKIR:@Y:AMPX<-08 &C MT=AA+]W[":=O2VICN/\ GR*B<)\Q\\MCV:7S "[OP9Z@;\DE/5I??NVB'E3. MSUN&;1_Q:5<4VU_Q+7RD+C%=E<89/JUW8'E1X-,>]J:]AYCD+2C#>S6G;G05 M?[="TXUI\=?6[._K\4G=5/M3>OQ)5]7$!UUO%:NWF/I0F\YSY7Y'G,'RX=B;)U3Q6TEP>4]7KK3__Q-X^TX-HH>8Y'OU?6Y:?N]PGVS?O]A ]^D\ MC&L'$J[D=-Q6U %:+7_?O_,!8P9%VW9%(>NW50^LCR#?:+-G(]ST&Z2:0)^XP WR*)H@>FQ[_#4&*X7?9SM\ONS"_9:/Z779,8 MZ67:=2]#US,F[K+%4@SVZ$JN=]'BA]T50WAXK.VV*SHP/U ";F*OZ5INSN,( M_KUMH^0,2Q*5<"/E;LXD_! 'YYN[*VNQ=JUG^^>(!U2EQ4(;'\?+*A*31F-/ M93"I KLBPHS!P\W2TSE #ZXCX?Y*Z,>@@\/=2SI M=G9=7CHM!'!:!,.%S4=OP&NYV &G9SN'+6GX9.Z6)7JI%LUF9D:13N*V3S@) M5-=TAW814:=#NJ@E,HMBS?'[+0.')1Y/AB'9<,)1$GM<) B/.'W/C;^#,TZM_)SI]XG)@"FC6G.$ M).41+7IP'W/"WSH8<>O[<\^9AQQPS2[B(=_G\GUD'RYT:6_+I=T1Y%==VDEJ5)X[ MRYBMEL5%W>GVY&J&!=J,^2[MD2S$,'X;[L'=D-[>U))]!L7]I&?JT.(LQI<7 M%%,>U^?$O(94^XX,U3G8; M/--WQ9MO#.*>OR_=KSBFVE7!/HNI<9Z7DF'R+ M6,ZF,2Y;J/@2'CBGQ/FML/N;K&OXA'U,OKE24 M2O49=#D4I0>5?.UCQM^*L-[GQNP+A=^5=M,2$5_>?_WIBC:@9,2P M(N+"%'GXV3$B<_#M4^1-5_5TJ1>WL*=[]E*3H5][RWYMH 64+M!K)>@8\*N/ M[.#B\>DP7;5D&N6T07& R?C"HH'U@(<[N.$.[EWOX'YD^8C+$HZ6YRHR[M8ZDIND%=:#&/+&[N]CG<\*-X'OPL_^M.B_[WX;2"S6RA/Q M%,VUV[2D8^5I.=V$PI_X* 8%&\AKA0CWD<-]Y/O;1WZXQ?9;@8 /HXW]E5B MP10HBD5[=;37+F>[O63;4DL41)RW]IN/Y6K_QX'QB$/0.9$>*#HR#II8H-&W M >'Y2OCC!^'A]*O0WF+#CT7!U<2Z5#/TN<]+G]T4(.D6,Z-2#CP)RA&@7W470Q KYVQG9$U 5PDW7L)4*LNWI$%#L"L,"&?4^$R$C4 M#"_R]_JN_LL8K@UTPO[W;Y^WOF!N*+0./O"&IG&F+?[>?-@E!@FFN!:V*;= M?&G0-R*':*+D_.9"U!1,DWFUL*ROS(_0UP3PF0;:,3F[]]>/T]LD1.13Q J7],PU8@ M!W];H@;48"[NW7,=Q/$?O!G*C6Q#L2AL#.P(_K_7_ 7+;_GC7= M)&3$A1@!%BWTS:RFD!,74PG\S3W=D!$G8H1CF&_Y+K$W(DCQ6.UQWUW&3^[T'.VC>%QVDY^0W;,NH7=& MA!-TWWQO.;MZ=\U-& ;Y5G?-$+(>9I(ADH5(=I=(M@XDAS@6XMA=X-B!"#\0 ML(4P]F48\S?"$+@3%B)9B&0ADH5(=J](!G?R@P"+OY\?PED(9SMP=L6ZS=\5 M[*"WRTMYOET82WXI#'HR@+IC/C=$*^+S^A30=>UTO-HVS>4IDA-'ELM9R\@Z M124\#?0:2#UZYN$WS@1]HI/WYX\$?2/3>9NR%IS\J4L!7!\Y 93)S.AR7FWK MS&RXRN!T,V?1#09/]T!XXO[ M,?M-9GQZW&N+F3O>KK_1M?S.>LF\[/"=MPS[V+K>R3+M;JF!N$Q/'K21=B,? M%T2/3"^?0+Y7:>'Z%3QS0*;+),#.5U*VSB7(W@0G<\=,?#!?_LRO^5A3XC5^UTR5[9:*;; M7TU[&8R.T5[0_#H)9/B!?/.P >S=;26&2_^G@G,O&TE^P!J(3S7;=&;2&'5+ MF967Z9I+AJ*"MK"),QH#=ZXXH1,?KNG7T^JO+/.U1,$VJWFDSRAB2Q>=7IGH M\G+0&381)0]U_:[=^;W]^!_0>_$"'OX=5>J\\M;]>WT1G18$I"%3 M12NG;5HP)J/8N]OW]UT,[#KEM!S#X;2(HCN6HML*'YE#YD2X*5 JQX[XE1V" MBN2P2%90,FM374M<%U45(H(+KI8_6D<++'?P Q'Q1$N,_/<'5T>H*#FSU;%- M6QVI",G/J;Y@VH/!Z5WJ^.7[PHC;3;0.9$AQPX^7ND(&NE+C+(MMB.S8L6J5 M)IK!W7%^V.JWZXKWZP\>BQX6JXT 8=(@<2'MSTUQX@7%"5:48W,[O<)DIBZM MBO$ZLRQ( ^_^*([GK98^JO$D^^ZG"R;(DRT+=]=?2O@2/ 0B=:VA+JVHLB=L9S/4:?P^)S MJX8]G77&G!/H'40@'/T'@!JX,P+N)2[]K[!_SJ.77S%9+RD6.S4M/R +_%"U MEJ4J-D3SZ4Z#RDMZ+"4#68@EHX<)IV?5OHO0]32-@5[2%3M*V#Y&\RR'"%U: MJ<[Z>BM5 K."A,6CAZD KVC91993]& Y?>,,@G\;0& C0$I8"-*P?F_\V?U? M-;"&_@YT'7PZ^-E_R&\_- Z>V@+V%K!RX"KM-VN)0#&R(]NC#I>G S0KH*QP MNH\H6.(?>XU"')0+6"V3UUQA8WL$/UFBXUIZQ!0M7S)U7D1\B8*(R%FPUK4-;Q24_/S\+>F]>UJB+GH^EH(/EKS\_!U; M+V\(8< !Y/[8Q9W=BZ.1%X;FK@,D^?\!^F<_8XT%2\^:70&#P"B? @!F@/7N MKRD1!S!;=. ZM#%9WWV-"T0]UAC%^GC369HBM5!LEI,7P#K:LL@'_&'^30*S5Q MGR+TW?.?7N, (*K/BT_(@T :RP*64R6&3-/M3$,:>NT.=5/RD/4:65K"IBMZ M2F3,U*A8CILC:(FB9Q*(UKW+0VN#X9\0A Y5Z;#UC%BBN3I.%BA2:DOB;0E" MC3>:FDW+*[3N5"KYK&0,-%L^%S#X"U?GI2CN]F".T=6"S;'B/.1 M6ER99%;B;HO=O4K.F4VD/X"8V?GM_1R(XI%U' +(!I M<$6&?S^T\S$.;ER?C$\+GTU!M%87[+V-C%WNL(O14*2$N,#@9I9;#4<%:3($ MW"&>4LG7-S*^K(R!\6@$9?"#@)T_AK/'$6'SNF#NP$D3(B:G^&/7]WH. T"# M&?[N6D!&P1W6D;ZUI?X\SA8=1WL9ZC-]00V$Y+D,_RMO"^X[$C=HK6\!B@"-Q_&FT+[FWU(Z-RYLZLUB%LW-\@D8$/XA?TY23PX-^O_/<>T?:H M_[Q!MJ6]Z;QZ^PUE.1_NV%2,3_*\0+(DD8BQ,3PY8CEL-&)Y0I+X!)GB!2D) M!8+;7 $/9S8*2M8;8#54=.*+5;_77 (_"R!Y;'_D *P#67W!JZB+I_+,L-FT M%GD*H/[!R))814NRW&JCRYHMI-(BS>;;'DL/E22GKH76,3<0HW5;A"75T?V0S%U'HNA22$40'E MDS(8>7#/46NHV)69UT?=15J4R6*;1RV*31S>TVX3K,ZE-4$M9U.IE#[I$2U+ M!B,/[FDGVKV^L"!G=)W!I%:308QF'B;M']Q3S6C%S,RMT8S2&:453._J]2%, MYSVXISQ(+]N)"4(P2!,C:B.ATBFZ,"/HX)YZM5)'B&',8C*E-FMA [Y!M.#( M@WOFYVP[35:6,R:C%=HE;3E35D-_J_#@IMTD>+,:2MI,6Y?2),VNC\@,GRW'/!8.Q7]=LG?/\!B/A_V MKJT+(22=D@V?/[#P \[R/5H_H+LM37RCQ^:N6,8T?MY3P3?3PB=$F<>89 @^ M]S3EGP!1)^K-\P-T-P2HL)U%B&&WB&&G:\SS S0\A+$0QD(8NT48.W%7GA^@ MYC\&R^ZX52Y"PR[8VGX=N.>=[(5KET'8^?,:=C,YP%*?MQ*)Y_C!R$V MWQ[+'&NUF?4QB'EI4K9+1;JG3E,CLIIG:FB^>(5. ?3,!5!9U,&[NO!+N^Z, M1:LSYO3C-8:.U!;B'".>*L^'7<9%R:Q83^@]8M0,^@(1L;"VT,EK"\$M_FM/ M.JPM=*K&0.=%D8NT*?@XB'RI8-&,J4ZS10=GW*%K3V-%?$'$Y*#=$(%&\<,Z M+&>P8:Y7YCAL071[Y4QOM?_0=["$:R>XFD$L:::'%:@\.7(P9'"+%LG+;BA' M#))^IS[D5R.[A(*93*P,B2^8-A4T-$H>0XM'B>9=ROBX2TOC=M#C*L60SPL- MMV%F?+]/4GX8YW+LA.29\B39;+)Z/UUUY:!/4HR()H^U.7VL>,F^^5'TSQ(_ M3)3D2J'BF_)R_KE.EX4?89P$G5O>,$[L15LNVP@U8$H8=1$ MQ MZ2Y&'?>7"YE)A/"6T/^X[GK*&!1?0["L&2)]KJ.5QHL:KF7@VYJUPI=,H M44&3*CP114_3C/*6@RG[R2=AYZIONSUAVZI35>S\&%9-$PE.)&+RDG;'9AO) MYV2.+E,W:,.\GZB2F[8JG.HF'11)MFSZM16!1\K"Y1MAQ)KB:AEV'X@3^E"0/ M]VA>K>/N!$6> P")F$"1Q9V.*6#X.UV*;KDM\LOH]P9BGP%X#9L-..E->XA- MI?:-WASPJ3X"$OXZ8[",FDQVT5H>+4OM(M^O]%V[)?_Z UR]U)%^4)NRDYL. M>FL. $G^#_R%6T2\YT?#XI* BKH8, +^$MEMZK6]B^UKNP&7C8"1Z_XR?GWM M=0%O?V6)1CZLE,35E/+S7>2NI)13 3F*)*$;>LTX^=]!\J9RN?=>K M)921C:GB6RKM+76 *, O D-XV[^1T@7?1GX6+-^0/MZ<856(._$%JS+HS*@( MJ8[3Q34&-F<@$D_)Y&' ;Z.FD-3W"W;GI>FHR1%X=]!QF7R.3XI$6^D(!0IV M*<"?R/@1'7N&/F=CDZX;#.WV[WN"Q9L#U?B"4MG15QH^;"N"HTXCQW0I><4 M/W"%B;6AN$!DR(C]VN&#=H](%95%BU8&F4DJ->S']703,.U@9++9G"\R9G&$ M+M,9G>&JS4:S"4?&]T>V$J9MX%*#I\7X8E1OBVJ]EX0EZP\JETL#I==&ALV\ M2O:4K"77K'S''WGP=!L'M^JS8I_IQ5MZHR;8N$[)8.3!T[EYO6ZH#<*BE7DK MF:7'V+SG-=G8X=.17G/&Y0O]#(J(G4Q/*JD<5F8PS'W9FQ7)B MM:2.%:+O=WILCB!K+30#9'(IUIUJEVD>*R]/XL7EN.%B+LHM,VUU:E>4I=$\ M6C0>%8PFHDX<#ZT/5K:7'GCI60P,Q0Z'+FQE.&S$AKPZ*RJK&:FD>*9%P:$' M;(I)I8)3PZJBNB0)DM+YQC2W](=N^'3NHO)%'=@<(EA&LXK-:P;0P",5XNUD MCHBE,W%#1?I+/85E'5U1UF8#4"< "GA]7_ @T_6+Y ./P32#AL7P09((Z,II\#(34E38)TD[%+DL2P;&+]!ZHXAGNSE3*?:!.7MN+%:2O&FTB)P2=T%ALG>^F8#&R3HX?R]K[X:],%:RV=(Q',9U=6Q6?="9I@ M 8O$WF\.\3OB:__E^H1\A):O- 6A1DM!&@W%.(T,VEIM1F1SS+!Y+A _BWJKD.'K/4[V"EUN MJS[&OUKU$4]&4_A=5WVLP7!D-0A'TKOAR+WL]!-5"7T/D"Y;)?2 'I_1EQ + M'A(+OEX!%H\FB;O&@N $RDGT_#VGZ/2=K6Y)#.Y="H@0[4^#]M<^]9#9; Z* M"YCQ 3[L[ '"[W1;?)@S9]=8[6 T]-KS/LW1EFNQ\$H'Z6#F9LYL=6S35D]Y-?+&3N/V:#G0V+>JBI#@?W:Q]/ORVR*0F1J^# M4'0]F:C5XYVV6%-@\A+QZP\6?\)CAWGMIU.7P"BXMKIY@3\0KD%LR')7W_(IP1VSO*I@=%X;6WY,DK< M05@@&Z25Z;P(4X%=S8$I8S#%[/>=1@"N9/@]^"3?W6*^1+&GRT_[[*&+6^#M M>WNE#S')=_?"PRGZ%06A4O%$YV*^I/ O_/K@7Q@O#>.&- MV)+O[/T< WI?ERE=H'E8K]=']H4#HOLPHAC,HPW/DR\,6=8 M(GC1YS*KZRJNNJ-P6AAK#&.-CQ!K_.<3;9COR]Y;J^\+US^[H\%O[2KA2"JU MZ!83:;6-RQJ3:I&+U!B61P?V7OQ(C?Y3=$<. X0_:]XW&2"\!!Q)ZP/5P91/LX 780\-L.!>="PDC?I^R]ZQ72N04B;(R_*U/A1UJ"Q[Q]7]O? MPOPEAF<0Q^'Z:-LH=^9%,]Y 7,]_^5]_4O'#]._3V8 /K@IK@R_$@QN@0A@M M_"9^[,-&3"=R37F06C"XHK9SGL<.C;;?,AJ>&SG:,#H,#]Y%>!#F<+P*4,R)=UEX[M"&OM2D*3%P6F[0VD MZKS2=U.$![L2P@)LR:=8\IPI/V&L\-;TZ((5VJX^USO#C$L9C>]BQJ!@Y+F) M.5S1[J(Y+,\2U:+>]_NCPC@B]G3>3))'""?^Q^]2]V=#I75_P'MIL7?NEJ8W MT^!5=")U4X2_Z7($'N2*_ W)@:/_U.H5_Q/VS[\C?N=A*(]7[/E*V1%N73O/ M;[ ]#JQ[?LSIL@C[NG+\NB5KT#/>,G1NKEBN_12A%.$ITA(U193\^# -,,B8 M*GRD+?*N!60A0O&.'V#RJS4[1D3C// A4N4L?@S[PJ*1O^%=UZ3)4"VZ#:_9 M$.AEG_HI)XC@724@9H"H GC"NCWL4N2L=0/:$J>[G+7<-*#%(I[BC/U!19C4 MHG,:>.&YJ+LB>$EKKO#BBS99VNW*N%B_(_6'BY0H2 M_\0*DA4ET;)$8:<@Q::C?!"+$)4YQ+V,:UF[.4GD3N?6M)N/RPG4T.@\FL.P M?D:SS"'L*H]'#T^U1(!B:>!#-$(YZY:MMF.Y :W6:@"$X:4 LF#W>*G 6=W M6Q"+CFOI07/7';[Z_-QAX49FMU_AL7\V3XJ,.3NB&XY_LD\3H!_,$-_*W/[;9LW;[G[>O &@0!OA#MZ)="Y#BJW1%OTD0<2 M(@M@0#-,/W$=R%@D \1/<>Q+(C%XI>Q'4(PXQ .<.(Z1+T5T4[3M/5'%<9\D MN_CU&IX>O@FV129GS#GP69H++[5VJ2WL4-M?7@)JOP9FIX:O$SC1GX&S5Z*H MX(NUE&TD\2B0HK\U%/J$J1+$^TW++@H8!((M'DZ_BV%,$6+V UAY$$=&! M\.&O?!P$"FB< 1I"]KHZ'Z1V[@A#9-/0;,N.\S%BO8X\4YXM:?AD[I8E>JD6 MS69F1I%.XO.4WS\^O^7 VA-.+;NF][2\/.K-8N#.[[<[*(!'W^. D\^#>G>=S2 M?FZO'<,V>U"_MW$#PD^*0*-XZJ_(SF=(CP-BPL[?.R1[T=E[?=G+YMZ;+]]I M.+CFC&.8OW$L2IZ),=_W3-\7+I\4"+;K4*Y)\?SE2QH>D";X$:@F_S<<$?E? MH%?PRG_O$6V/^L_^_);VIO/J[3>4!4H$(4L!*Y^OFNM>]W8R1\32F;BA(OVE MGL*RCJXH318.QR&!IM@.S RB2 M'/A'ML-!?P]@OF#P+L3$X)JUI;BQ'N>*Z/TLJW&]Y05MQ%;@_5W<6R=WO77 MH7U.^[S9,]76[!]Q&N[ M_<'E$7LLBCNVW8LE*?"(K:V3]A2Q@L4VPO&\Y0:^/UBP;.?)?U'3$GUW^84# M?<00M"_FUI[%'-DQ GT* 8.C$GA&[YQN+P27M>MS_&BEEEL"@8R2G3HX8]FX\EDI)V:?(4TWREJ_:9+%-6 MJ['V=&F($YWRR7.8D_1L( ,!-(.S\-HR&NF,Q6-2O)7P9S/8?NXXYAB1D?AL MP,$^$UO_W37A4N&/?L5E7X<5]CWU6KUR$&#:H*Y_@T ]_:C .CJQ_YCUG8_Y M_,?\O!W?#: 8)[-6\H(ZNO(F(O1R)6P[0;@W:?9%8.QG1T_0;$CMCN: ,F# M2. &^/T2HIRW,1ID5^,"!S/P4J%T M*_">@"B^"P26HXDKR,%K@"< G=DHZ0XY=".B&;H,UK"=EWG1!7"K$C8,6'.N M,S8L8.N)@1Y M9$"V=\-T<+7MX!B@R'B_BJ*/H&[\B)@$+R!#1Q&R 3@N<&% M;OW3VG.&P &-JC6EGY[)[/-L?:G/.T@'Z,'!$88IZC#G6C$ _$!"&_HZ A/, M]<+J>%UK:W=O3O+_ R_2-C1 #5H7+7D9:5@&Y/RM*.D8D /($1!G!XBH/A?7 M^?%0Y8+W?HXM;F-G[4YF)YJ_O28*)@=620M,(! >,.[%/7TU]*/4K@71V@XJ MOX&/FL(%OIJ_4' ZE/AU- Y>#M_&]M]&#*AHKJD8#(+W%<'<87(?5*GU K<9 MO!.OBT9V I8Z[+<]-?Q^V^)NO^T]$_3%_LWN?,YNWETX[-?@EO[$.@;%^P!' M^W)1%0$, :MF._&C5DV^Q!ARQ;4DAAOTR%3#[9,,T?SUAWC#J/&E;$](?([Z M\2$@"D ZG$!2 *WW'03@-![U)EYR;>I"]<]^*);73S,ZHX]WJD MT"L)*[5>\"B&J>I:*P_]K^AA1ML]NE]?H8G2+S=3DYS65$6TZ>0I':5Z;0\& MP0^+21_WN39;%'"UV0DD1/S('&)(B MCWX"*09CB\^$)^UIQJ1<& <#:35P> M0 "<$WQ_L,J9A@6I$X0WP,=58#E/??)O;8,&5=W:!M#D/ KO,Q>\F00,9 9: M51%P#33Z=[56L3=/"8C\_/R- <]IFL$_&^]@C5^7^[>?'=R-,Q"8IT];YV$7 M'G;GXO_^?*>M PU9;L+]0!V2!9X<7+L:ARV\-PS?]Y)?$0#?G/9?!$P"&,T0 MG@'(YM8[F9\U4> &D@6'W:DE A= :H^.O ;E^9J4SML0/ M\7++PYWBD6#*R+/,(L]Q3@!QT/I^AJ]- M_.6MI\%U=/=QVPWX8*[P9N\+\.=,\KV]2$'QMR$!:LWA\Y9OP8VRWFF$7+D2 MT.9>278Y^M:"X4]MC96;5W\Y_ZUQLZ'\[EU<>T/6M7^WAFHH4,%U\/=UL 4N M9_8&S^!WL(.*:.\+_2Y$ZVM165_T1>"SCR/?9T1HG7>V)QS;-[#' +\#;VTC MYYO(IWWHI!Y(=72[-;V[J_;G_[A-4C"&9A+#IN8.U)D9*_!"&J?:E@QQ$NZW MKKEBU:+PH@Y'Q_9$]NRE.E&DERRADKE:+#Z<# O7 MR(.GBXM>.S\F>V4FOQ2*RZ9!)19Q>$_LX/&LEN:-5!),/E]L"[V!1DQHFF() M%MT?.2W79_%N#&VC&4DIHTBC.5U,FF#DP3UYBN\GY[WT7)TETG2K:F/%8@:. M/)A2O#2F1\V&5Z6GI=2('K48Q"S!IQ],28ZA*V.>$LIHO>I8O19-ILJ2#$8> M3HF?C$O>5)]1ZK1N8964[K57.=A$[F!*$IF,*\-Z@4.GK6D7^%Y5=EF"74H. M1C8)0TZ0[&QB._)%YL-)EMX]6WFM80W1:D-]Z(#;IX$% MI?[:[ ^KPL#UZDP?."RS<:H@#<6Z.FD&9@"0>E&@G#?&K?>1(R)8B$WP7,=R MQ7.5?+CVCFJMWJ$C&.XGW6+8/Q&::M6*M7P[TJ!;D7:!:M%7C.XU#"9'C'7X-XASVPX0O@"=X8_09H0A,W@7\.4&I*$Y M'8#J\\)AZ.!Q.T_9QN4 Y+HOWB4:.;NLM_FQ*+B:"*S'/:E/<[;"P\RI8$H= M& 7?TX2\9;@FF\LDJ2E?U&CX("V6J<3:A';D[_4BYB^RAFN#V]C_WL^7"GK&'TO_>.]-/S&M$R>,G/O$ M1K#1LY )QKF.\3 3ROWF1 MO'.8N_.Z^=AP9R_?#XHAD<3;Q;@V0>P8#E>^F?*VS\%[D*'$C@)I FB^<_;4S\..RLIMN^.U3CLF0$3? M".R=BKTA(R[%"#0:#U7B%CB!1V.QD!$WP B 32$C;H(1 )M2(2=N@!-HE P- MV%M@!!9-A8RX#4;$0FBZ"4:@42PT8&^!$WB4"'VZ6V $P*90(VZ"$2$VG983 M'R]N^>58[*V_XU_= M.U5.H&GQZ'6K[7]7T6HP;^G3>A:N/+>[\KS%[8"7A_\>H.A6,_"O:@:&1S'B MKE4#YG*<:'EY;S?C)',-Q>!<8D"$5D9H97S?ROBZ$F%1,GGO2G0Z+'T[L/;( M:RJ0@_LV-P_!]&2FY+4K3M>"TCW&]#3-.J#A>.TI7:%=T/ZUG)A62E6Q.T3QV0*CRP;:\W)?;]8!%#LH7P,KC!\IMS]=XN-X M7,V8M**Y"RY.EA/MGL<2L$,'GGQ",?2,U?8#S^)' L7Q>5]=>+<&+#??,,29UVNP+8J:)U5,1Z;]B8=@SH;!N"#+E$5I*J"YMFV55);4J>5 MAT>\R%]_XD\Q\K"&[@\ZN M,.N@M0G=8Y!)2R];3C%=R?EG7E& G;$G-'5>^XDX[G \O/T4NU'M"9'BHO;3 M99J7O0<"Q>'0XBN+9)5!EFD6GGRG\;H/ M")0I^(V#$0"+? MY'L'U1[3OCW[/NI-\/:=$U>/,&YGUVX=B'D6/ MWT[J?DS>7F,3^DH^XJ-/\JX%^&%VSWM^F@ L)P0K^,OBMAZ>Z]C0MX5% #>5 MK$:P1E&XR7[Z3?9'G_>K.^ZW$^B59?\\F=V_5GG_7)D1^)%9KO;*S(QWE!)3Y1R"YF;E-JP M^B'QZP]&/,6)<,_]@GONCS[O5S?@0]RX\#[\=W$#3\KEE,#B8[0N-%&&F(\3 M6,,#N$'ZN$'@A\U_3^W\WY88A?OUUP\1_$A$?65++D34"V_/?Q=1>X3-]&=5 M6:#KE?D(<7FZ'G.A)0:W[R&DILX)J>'V_0^;]QT QP4PX]F[_A?@3#_0?0D@0;9QI2)*A1SGF MX7:X@_^I^-3U3CG=!!'6P:HK4^&.[*7+1*Z*.F_Y+6$X#;8]-/0 %2G'L921 MZQ=R[QB;,OZBL.Y625D6I\OBR\YOSX!I)]!Y#TVFRK0H+]B";'9B0M]C21C. MBJ/'DL?#C(K/!ZY"0$E=GPKW!RAG#FF=!5 6*8 MH)"__N#$,>LKS' ),UR^&+[Z\;B*A8;:[06VSF.H87UU->UD:PQ7[S-";4$L MBGT9X"J,=L6(P\[%8?,@PV+ M(_C;1)9.,=DO>"@^+=34>+L2E[H4F_ SR6)/*''^Z-N/Q)Y[J-YR2ZEF5Z?, M_6'/=7+1/H$]R14];+-UJ<$H7,/NYPKC5!F'_;:#;+1X/!5FHX79:-?/1KLZ M]ER;,(]00>+JJ'S5?+9/H+* "3:GHG7C29 Y75&6_+,APO" MC+;;4K%K$^81P.?^@W_?QQ6.U:RI:U3F=!D9I6:UJDIT8M#37&?%Q6/'S+T[ MSHJ[BKK\H RY1Y]D6./F<7D;UKAY6 $.,X!^TJS#&C>/RML?E'#RZ).\:P'V M/9__^.D5?WP'"7J!BNYR:P\I<)F 0P9>BO_SHDWN3O=?7A,Y"U)JO'ZMK=\, M7^\<[7]?[9.#QW9.# 7$P>+[+7[_ZT7KXJWSC_"&9EB_-Q[^SJS6+9-QG[NR MB 2=D3D)//@WIWGM'O;90 TB$") 5/_179^0SI<4#,*;= M=DBVEB9$$R7G]_JRS7=6T,AY_>4[+9K7G'$,\S>.1;[8OF^$":X$>@Y?S?<$3D?R.X?^6_]XBV1_UG[=[2WG1>O?V&LMPF M2E%N5N:6FZJ:6R4B/%HOAE#^B(]R!23_ET/YH7U1IUXBND547>^S?+,RH_RA M!_.2S9(E%$I-2:UW$XEE=Y!9H45_Z.&\^%Y9X$MT+<4LF9K7TN+S)%&E6(PX MG%?)U9!X/S5I,!D75>)Y#^VFES(<2JR'[L%P<.&(586!Z]69OD0O9^-401J* M=7729.%0[-?QJ_( UTPVETE24[ZHT7 70(ME*K%VH=)D\>VE/OYO\3"(? (L MU#C3%G]O/NQJ.D2/-29"5?-#A[KS0C\YUS%>*J?_S0N%.M2GY_4B%>C.(^3> M/7A9HZPRSHH86FEVDW$"1>FK1KNHL7\:(@3>WITU_%X/\]0>-QL*Z/F%6SPG]]6L# MQ3D0\+"P1HB ;R/@EX_MG ,!%6/0;./]):/B4XNU13T;&ZJ^\>,7X(F>N5;B MCTF(NKJ*A+I_0[K_^:,UY]!]7-7TT7#<'M!B(C%3:B27S@>.CW^ )AK_0/6M MQZB5LQ_9R8;%<'Y&,9Q31H!N<*YWA8U7"0JM-?T(.E80U.TD6!Y!VS@RDKCZ M,KZH^)E@05@H;(CV8\O8G#)X=(-SO4?4N&P\Z774J$[;Y7$_139I11CU!=3H M3\VFG\ :1)3.B1IAGDB8)W*7!6A.Z8[>X%SO"D^O$IUZ'4]=-MWAY6FFIW(6 M@L>M2GZJB92?CX_^^D-$4^<,T8=)-K>F2B%LW#9L7#:P]3ILC"K&N-H?-72F MW.CF[%@K/Z8' 6P$H:T/V&$/D*'T0C!V#^K R\+J,:<-=CWZ),/J,8_+V[!Z MS,,*<)AG\I-F?8GJ,3YN5E?1L1O[&C'M2,OE.XH MB-\81YF+$5OD74MQ%' _W? /]VNN$"8)/'Z2P"V=^K\Z93Y1HMAO+87_$^Z' M/_I^^"T5![@Z9>ZH@K2?I"7 MF@+^.D?*?R_EL9NM\]T./>6)HM%URS-UX==4(G_](5/A3GNXTQ[NM%^?,.$& MV]VT>CD74K-(=VAB>-5 >S6FW<>R='<$$\V)H /,69.BPCW\6U.[:Q/F$0#I M_MN_G MK5NVJ9:F]),:X369H]3N]ACSVK4*X\Y],'LL7.EH8^=S"OC/P$YOQ M1ZLUO_SF_/B+GUQ!)J[M*-)R\Y[)@PK0WR=V4+V5Q>)"DN E@DV0.,;& M)%QBN1C&L2,4%V(<)V*)1!(\#A9Q/4L^1_)Y2J,7]_>"8JPC0Q,"R@!5,P(E MWJMJO?^KINCB;P!]H@4_'?SL/^2W;6B* )Y:JW?H"$9L.X6W._5,N5"O9.E6 MV_\N\4^$;C+%SN#__C.Z#+6( M628YQ%0:Z0V\<37%<&GOTPF7G+SX#2 3EDOG9+&XGFQ1!Q.=&GK;,7@UNY[4 M!EFWF(K@ :C6.,MBRXT^R\]=OH"6RU.V6;%DHC*G?OW!XP=X^E=$ N@=^>^S MYIO%=PSBQ-8>)MRB4N_P>%Y5NKVXWA0729'[&QM;KWK; MD3/&]7+5N)I'D>&P-EW0RVFI!&N.']1#K^=3;9H93!U*%(P^* MK/=(W"UTT!I&+PNJIXP[6;F#DP=/+A:G#E)GJ')V9?,'.H\E*6O-88COR M]6+IK[+@9$NZHB/KVNF['0S>-J_0CYLJMUC,/9&*IE+K>NZ;5UL_$@NF_64? MCHA%4V\FK.UT<]AYI $>(P&)WY!R\[;:NQ=A']!V^&[=U>+,'=O>#2L>!+@NLC?P'G1?-K1Z'1J$HO$#1 .X MA/!+/Q[VQ<45C:;(LQ(D^0$I>3T@_NM/L$44:8C6-BY]6O1\N5^(F8N('S*_ MQ';A=VG3@L%^(9+E'/$E<6Y7/Y('ZO'6!/_G7QB)_G/X[XEF>_\2T."64W!- M* (G!,,[%H=VT)_P/#AYU?3 HZ3XP$[!*[LFZ[T =KL70"T4F^7D!5N'(?DF ML?VAZF]&LJP]]JJ]7*["9%AS,D-2&+;2Y9<[*P)0PBEXB;' +9YE4H]2>7^AVA[QAIL<$IKPJ]AA533G*B:W1^ MA'@Q;C;PB#S>=(&30<#I M\PLRG#V&F'"D$)#'ZU-D63%;-" MXSF^S_.JQ37'+:+ ,DN+2#).7)]T^M0EC)UF?X(74[PU0<4!G5XA5:D)[L;& MH+%3#X,V!^F=,99 /R8&V+X8&&P#&>*ME40KY=J"D+%9192\2Y@QQ9R@E:9> MBU#S+,0$.)?\1PS=6,HA\\8;X[KE?K736?FE6[W3&N+_L>2_K!'4YW.2N,[_R<^,YMRO,G3)[6,D$E MD.FJBKHU!;-J!2'7ZT!QQI_%.8SQA#&>,,9S4;V_J/$R+F33TWF6S3#M>59- MJ:[80V4*8$ 8Y/E@CL)^@9+WY.!@@W*$])(MJJ7G5+R6P$ECFQ9Z0B MS6MI,,YSNU+_":M'7@QZZE2G$\PL*2J5ZE[0.@/,W-"H0]#/6&HYSR=44\&&!K M$#S"6,^Q?5!B=Q_T?9X?[(/*=+604]%&2ETF&S':%&=->7Z1I.4IU1RT4MF\ MR7 98^Z1=6(R',M F+=Y/.=>(AX<&$-9_I8L?\+@09.K1,_C\T6FG9:2[8'& M6/C* Z*\E\<3BG(8XPEC/!?1^)#XOMY>,2,1G^;;3EWD*+F6^S8(? M[4$:AG@.:M!NMBG?%X.#;3QHZ.J&\9T;%_E/6#NUNK"(NTN48)!LH32N%X5)L>4! MB=_F\>#)4.+#X$X8W#EUO_4SH,5%[:15=F TSW2FN_+$9KB:9K\6._TG8@[W P?/1N#=^($-2X MA5?JBBY&_%4*O)X.'[I_?-=_0RCWP:L*PKJ*]_K^8&H.+'?M6LO(ND)P=GM[ M6X25A!5#>.,];[&?2[&6^X1"^JK8>IY2,/^&/W%?*^VC)9F)?F'<20^M,>.6 MIX0\ZE'Y,=O\]0?#GHY%6C<$AURXQ;X4%Z&9/4Y+GJP,D[$,4_6*=^ MG_!%O\$JH#V]X!5;['"+759T.?$4IR>5>E\>L"7Z(87DVH4 M7$K(0RX J-7 AZ<(H.Y9JK '=?UW*,:6-'PR=\L2O52+9C,SHT@G\>4:];Y$ M-J P')7*"9UK46F6S:F9;&D9&Z3KY?$(T"*>B&)'9');7/W)5^9S"],76LQ< M6I@:RVE-QB2[I;-WPZ/JXD)%__4E&8]<7)H*MZFQ&DY#QDD$48+EUR[-T M6_/.)$R#'%K/E,CI@*FK<;$U2A;X@0N$B4A%R<2;P@3F9P*K0)D#B(J^K"Z_ M'$ZKG9$GIM4,%VN0%)7/5MNPNOQ!)?AY<<(TQP*9H=W!(*OU1EAF933!R-3^ MR&EJJ*Z<>&%)NVTT%FO..T2_?K2Z_$K%&U*QAA=4KC4NN G&7J9AX7=H>KX< MV-G MNKZLQJ M:)HV2E1.5Z=RMCDM98NK[@(^'CMX_HB=9B=YD<#5NK&RM%'=H1.%]4'\ER,Y M3G5SQ4HYARHT0?2%6+=8'*W/NFT*]I^UGT/&T&&T)KA52[&!UV+SF@$LQOVF M#IT12Z=LPAE MF':G7J5;D4R]EJ%KG1;5*=9K[2LV$.H >VO*38"SXRRA676L'1#@H3\A8&H) M -/F(F"['?&K#HO0W0"(YV,MD"KH(<%;F(8'8%#1!?!\Z(>(UMPWW&Q1AN7W MHA'XW* /!_1,;!YX8*X&[3O@HNC /?)OLNW@$YB+Q]X"FH:&5=@GJ97L)_:3BWVOC$03GDU$BK(N_)QA7 MJHN/O5FY-V3$I0KC1T,^W 0? )(G0T[< "?P:)P(&7$#C BAZ4;X * I[&)S M"YP(H2ED1,B(<(VX03Z$YNN-<"*$IAMA1 A--\('-(J%C+@!1@!D"KO#GI 1 M'S^?\;'@]T5F??&F>>]%FB^3?'_:)E'Q+S>)BD=3V%TWB>KXVX;58+>0WMTM M#(A&8$\G[;+VGCEU1^)SSP0X)8Z<1HWPNU:C&MQSOZ@6W$0D7VOM9 M:,\"%%]NRH@!)S!YUT 1U'^\CY7DNW.]8+=.*!BI>Q<,XEX$X^+($=(A1- 0 M0<^-H(E[EXL3 NB-F=?? HZOV=O7/H+>.)YF?3++^MKSN\(1^^C/G':PEWK/ ME06VQ_),UQ+93JO6-K*>4$%GO,H.Z G622*?;/UJ6P[;L S!Y9VZU0YT:UM9 MP%>]XEKSUC]NR@MLZA$<'+1)+].BSH_AV5;_1IN!;4X3[59PIJ$F.N_?IK,T MQ1=W6+_GP=#UKH4/P;:4# M/!%+VL1D8=#(,)=G\ *%)K/PQ!7QZT\2+"1O%#KXIMUR;4W^*X2D;Z8 _FQ( MVC\J_$"0E)W$&XN9I#357GY1JI"I"4KNFS5:9I,G6:[2%-/*U(1 MGNPD?_U)Q**'A\1#2+J%F;RAFJ&Y&)J+E\'F5TY\/A V%_.NJ:&4H]/+:;F1 M+_2F6+5U,7-1J3(#C=12.--K$)T8U6W6L:)_0!\%X)R($B$XAYCT2L[=SX:D M!S87\[4!FN,K3(*9)FH]?)0=E:>C;Y0V_APD$9-)PDO45@3=$W+3KIA=%JDQ MK"Z" 1+[K^$"ON*_'$.T57K3>V7&R9*#$(FY@-Z_Q(1\R+H6MW MP-/<(-.;T^UD=1Y37;:,3R"ZPL BCD7?JKA_X\@3 LVYSNH^',[\!"M.S>>M MS+!GM]1I*MU;M!,K;]&^6+007=;U05Y,6H%1JH-87TWA-5L:- MYJ+)QOTXY9'>#0^S<1X"59AM>=GXYKT#%.V*+)<;D M6M[,0MVL+>.5LM'HX=_H6OK)K:FB:CAR8M5G>EDEQI<7J3%>DF'G>A3:EH>= ML.X9ND*D.GF$]6<#U8\R+3M8+]_+8K)$S^85SA!DB^:]BYF6U!)W,P6;FS+Y M1BGIK/@,9;5-_'PVD+M],NG.D5=K4L)V(#2Y7 M)" ]NA/AP5T,0,B@71J,&8\5T][K2/9VNV?%[^'Y\<;,FT>R$YM=VE6VTD?Q M:GV\RK:[7B\M/^X9Z,QZXJ_!4GUJ\%Y[U:%I$=>6$VV^XO+.FVVF$5OD(3C! M8J^VJ.]V6@7J >Y9EZJP>=[FR<=[)'?$+#[IV_T^.D.FBZ4WJ*KUEO?KCV2X MUI'^H:^TSMNPU7Z* !CBQQ&.YP'4P&YX4)JN$<1].?>M6+SXNJZ+:_(_DBC1 M=:U-6SFWKF9(VI@4$;DP3\A?;4#[J17.%ZE9JI>;$GY<-O:"-9MEL M7$#;<^"MY:;M5;4.V]@?9@_>LFS E?$!I2,V;F"K^+Q20Y?4=)B**Y.&ZU*7 MDXXT56L:(VI$,^42EE<\5O4J.8 T6M%I.T3 'Y.#SC\->K;7F#_K[G M-XZ)RQK']WR\\CVYP]G6O)JL.G4:R72:Z7B]2=91[_S&L36U/,Q(EUV&M$@U MEEIRBWD'K%8^\^_&.CXF&3_7.C9CE#ZID[I"Y[LBFR)62K?0N2"&R:3@S:F5 MQ]&].:+V*-DP,B4/GJ"XA@7T5=EX3.NX.S4MKF(D:76Z=%9#)^])[?D%K6.! M'>"SBJW/5,5K<;D&&^L.4U V#I._+V/_?%D\'M1 CL<2*LU1\8DJ.OU<)EE.:\ I)$!+TU5OHX,,+DUK*%4M7&"AI ASM<;QA P>;)*:P@';9-N(4( MX0.4O7G7=<]/.M-I5]=IMTCQPUY#<..B?'XCB$*X2A,IX*0JQL:)62.V*JH. M "7',V[?!'I#+GZN"42RXWJA04J2.IV-2I-28\IV\ NBF&&2Q1J7G<943AXO M*_*JKW6J ,7PP[,'9U[FOBD>CVD%S<25'&.%)*M.J6I]D$BR&I.Y8!3(Y7"M M[3KV#"4KCE<1NW356L$8(7YQ+__=]>U23OX#U%!Z3^RR$N8?V?N0BB4CHT42D]4IH@W?B164.,[DB(T[C=+AN2I8Q/:_MM&/8OS3S/RUR MU'HBK>T\SB!UPA0HV5RJ(C09;[9+>FVQ$KH7V.SHL4E+X@H='.W)HM&14Q2A MQINO90+!E[2>C1[ 6M,2P<.=CUO"5_3F;Y/SI5B6MNALN:^*B=ID.7&LB>'Z9& MP>HT@=+ M+]TDNZIX0=MT2-#%J5*N)NBZ57 &JK2:-6CYXEQ^%96_8G[<)J<[Z, QZ@DK MQ]39E;1D6(^WI OJ+5.CJUB:WV;V3D+-;?*ZEZJ: M%-)P$ZC;M#)4M5+O9EL7M!4[ C$8\RU^K.(3C\29UJBAOA4T@]$MWK# FFT: M.DS]?VD]KLVS"&?#P?N;.M$(=5V3[H7G8<'C,Z&)1J(R5(<+EPT@.:,JALSY*#UDAGVBAB<3EDBC,]O$2]'@[ZU!)?XG27LY8[ M2_P5 T90O.!4P+O9HO-L6( _#5[QW]Y3G/'=A(W@+.R.X7#:&<2RL:K.Y'RV ME:#=1BDFRFI^050N<'),3,FS5FG93M+E_-0VLD6[,2#">-$E6([$9R-)Z36[ MC&*4)YIB5(G1);78AM,V5YQQW+FPXA?,.V."N#)3YG M9VJRVU7Q(D:Z_>D\66M<<*E)S-/5OMEF/53A$',E51F\R\D79_!W(X'?,BG. MRN":F%>R?%ZLTDJNV\IV,O0092]H-3(=LF)8K-ED7(\:#-J IJO\:[;$ X>& MSLKD\5!/3!/\0%3+HZE"T.V28 \NR.2XVU>QV4 FZ0S9Z,L+3VZB[FNNP?=C M0C=CN9TJ.G16X5BV*'X6+U$&C)W-72"=MU\9SB6!7$SD+UBD:K_U^ M)*A9])N /O^F$!?ZUUFJ:T&BB=8FX(#'GFMKK2,.,!QJOGCW_]I]^>?"20AO M:(;U^U^H_]\_.[-:%P_"_4I*LHB,+)%3$4X"#_[-:1ZWM->S3*2B,5AO#$ X M^ G=O!6D0P1#HWCJK\C.9TB/ V).N06R0[)UY29$$R7G]_JRS7=^8;'MEX:M M0.;_#E*=YR*\^XO[^IQQ#/,WCD7),S'F^S6AWAVUS1X=F2J6=Q%+'33'G.90LFV^-QP@/H MC.Z/+/=R; T;5545Z33Q(:8&1R?^24*N K=5*7T27B)MRJM2C88PJL M* ?OV:+33'8H-;.TFW5[J*2IS#(G@Y$'[XERW:FIB<,%/5L5L_E:(64..'C/ M@_&R8D'1AZ^Y[BB^T/Y3 \-EC-.);)3/KJW)L6!5&#G7X/ M9F_3=#++-48F*A9;%)V0@"#689OR@]DK-48F&PMQK&:&N!;/MRJ.78'W/)B] MDIL.JA.QS-* 4M3P4V2?9'&7WE-TD_F#U) MEJI5WF;;3%W0T&Z7&^89T8-##]Z4$GM$2\,:16:*KQ!IT-&+[6D3#CT@E*.9 ML6%/E;.,JY3P\JCFE$+BV:W4Y6G;68?BX_E;QY&HX\O*E1F4I5 MF1%[--YWF6FEDE$<2F;)PYNB1J7<9ETPLR]@$T3PV<61.RY75()B: MH):E=@%S>O7Z>"BSR<.1/#/N3)EAMT\OS4%Y6O)Z&C*EV-3AR))<:0,[;U1@ M>I05JR6Z6J''PI$',[)6F7&IR.;CC#B/99-C.Y//+9M@Y(% H8UZD2V.#1$E M"7FF8MJPKLMPY(% =2_!%'$7S3E'M MM).<6!A1<.BA\&%>0;6FHVJ<5F+5D5ZD8ZI2 V]P1$W'4GJLHWRRP2RG>5-A M6#8N!$,/R$I+XX;A]02#=B>NU!-46V"8)AQ*[ _59%.H.5R'HG&M(:5TKC26 M;/^N!RQ(]=AN.SLA$W1Y$)>P5J67\%H>''K @YX[G.$Q3*-1):LWEX.L19MI M_P52^T.1&I6:98>,JLZJ#2%!H/-*>N:_P"&_QIU4"QDX"**2Q% =E9MS8CZD M_C][Y]JDJ)+M_??/IS#JG#FQ)X[NX7[IF5,1J'B_*][>$""@R$T1O'WZAT2K MNZJUJ^SJ4A S8J:C=U4VD+D6/U;^<^7*L.W):]EK?+[$(\BTYZNM'%,7XX8PL:9P?7/<. '=9E"]24ZB#+XEZT.NRN,^QN M0-/31QA4ROR^:M;6?+?FM>PB62BZ>G#9,Q20[%*I4T$IE\=ZU3P>L'I"\L%E MS[RQH[927RP=2^:QS42NS)!@7$=3T/3D ;):I;I#Z%I#P C!*V->KQ1\"4#3 M$^/.>UPE/^(&9<&O<>VQOZST%"&\ZHEQ*X4LNO'Y8D/(H+VAZ[1K:@]O@Z:G M%ILN57-N9@J4@&%N:V06=9/9A$]P:H5"6YH4V=V6%?Q>E9CS1;1AD\%PG6$1 M)9)S$BOU)H+%RK7V8MY74#QH>@9&2\5LV-2@NS4R8E')Y#71*V_;H.FIP6I* M4QQG$;-D-#O4+#?5FS_([^Y_N8P M%Y(=4SE,PP*_=P[C^-,$ZN??FKJM?@OF6:H+_G;RZ_ FW\():G#71K/'IU R M%>[M1/^=ZO+%.M_HI3I\J]GIE1O%U'_^)=^F_.KID!Q-_DHP"RQH!=/L\(?! M=#J8]H33TH6KK]1P@^!ATZ 2^(:K>L&/=#N8?>N2"8[Q"C6#<&:P2DEK23?# M?#MO)GG@)^I:,OWCGH^I;TJNN4O)NW!Z__/^U\E,5[64NE4G/IB'!$^BZ1/5 M!5L6'7"I\-\T\_5T<->4$CR':^DV4 9FSB;E.2G)#+PUN%5PIY7CNZ&R:RN@ M,=![5RO0=*&ZX0/;$_7\)EPW?!'"+JQ^C-/$F=K!6'_?MW*\\,1W@^==J'9P M^71*=J4N)!<\D.P'-P^>(%2I5@>16=$U377!X =/$TS+P:U2 MGBI9P95>;=?T)#-\!G##E^V35^C?7/'Z%6A^6RQ^8=*+8-P,K"4!*+UX[%G-6&MD5W-E6U7X M*MY8U+9ZCY$)[NDY\.=3S=AYN>2+=2-+)2F#-^SX$&_]"OAY.!D/O&@"]H0' MK^2/!H&A;=4#OY.FDFX'OSZ5RB3KD/]ZU-%^W 4D(($&X*?ZZP=X<:V_4X4W M->3 \WQ<1R7]]F+?'W83.'CJOR]T2:&;%PN+3F^U6!FRD:$F:VZH+%8CL"AU MUAW?*8.8^ZX5!@W+GFJMWHBEK\>>-_4 (V'#ESV8PQQE*V6SRN!%L^2UXA0.C<"&D5*4G;;_[.?7:S^4N MV3*4_9P?-%#2Z.]):PM61<\=;IX*_-<$8PWL=S4#O+,"_D<&6'3+3;HT15$D M8V5]MT?V^/*>B]P \VP;G2VMILEWI[15\/3AK@\*/)X[EO3% &GP,5JH$_!! M,W>?>KOP=]\NVP$?D.#7P=?X[Z@""M\*?A=^]635##[& %+!E]L+^/2*N,%( M^.;Q4_8C@GC1'U.!KT@OQ'KGJ_S]6_K]\ZQ]@EAA,S"XAR@ W A#_MT,+N.& M?P]BMB <]"T;?,=5*0A^5F$GOW]R5^=#&,==..$G_R4L.-CDZE'\9*8JOJDV MM9_C^?*/ "V[._[R-++O.WA6*W@=TU'N+^HS8G(FLC_?[KJ1_96//SC& M>L?EE'#I \P$3&FQ4K^]_.7U0X'%A^,# :4^-*;MO9'W)=]SWFK[X4_>Z/&G M+R'^Z4%%+ ,-$0M# M8- .,; #\S<.R10'0T RQ<80D$QQL ,=GJ4(#1&Y(0(RL= 0L3 $AD)#Q, 0 M$$TQ,01$4VP, =$4"T/ ^5Q,# '1%!M#0#3%PA 035]KB/ 0[/#_'UGDLD6( M/^XULWAGD\V'>6&@S =82:P?%A#Y< 'Q>[[6=<6UVQF<^0V#'[L\<4SPPW"K MV.>ZSWXP7XG<\F&Y<&CKK[ U\S<=;UO_J/S]=09_-])*OL&)6!N\IYKJQ+&@ MM;\(Y=>U]OM;93\ 3O%VA#X7YAY3BHY!/[K8IL+$R-3+/H,8 M\_*8-'_@+2T>XF0F)]?ED,73O^\2IQ[QZ9_.?\$&OJ2(!<:^F;? MOP@-34!#/X"A#R','1LZ3&*'5DZXE<,Z43^]S)<'J!_DA_^H*O3MOR835=6T MVTYICCMV5E\6>43=H4_5$OKSY,&HN_W?7]"1PV)-!#UY]7:&^S->[W_"W]3H M>F/=UQU9N&JX.A2T25VZ,_>&VR!/]M?^5'"8OW)>ZY>FEWT>F:([0B MB'*_MA.*-I&?]^NJ-^'>E!3,X#?:Q8<_?:]E8>9X=SW)S04IU]X6Q.W2L#%0 MI@=_>L90+(VPI\=/?*DZ!&%TSS ZY-M!&,421A>=Y*HM5CM^7I5VPFXD+67= M(.RYVXZ82NQ.ECQ/67B&Q4IY93S7;%4&=<:HIV<"3>/X:67SKY:LHWX[(X$2 M&GV_(9423J7CHJ,5]&42WF15MC57.O#)=]6?^"0CK* 6-E8#L;(*CY<+>,;* M;2+F4\[O5IQ.B:SR7:7!T"ULOVYD07%%]ND93Y/T:0$*B">(ISN:P1T*=6'_ MAOX*_?4>_#66G],I;=4J=;4_1K#E%N6K#C+8%*(.K?-DCBPR['(M[&HY>:*V MM;*4#:O]DL&,GZ33"'):O>PD!L3E$6Z-G Z!F?6 M0/Z(;1'W[X:A"*[.[*+LKQ"_O_7)2FN+H_FI2 #1%*7Q M-,;@5Q=-(7+N%3ETU+E0$#DQ%E _8@_E3X=.>UC">&O4(E&6&HEF?A.PAWIZ MQJDT35Y?&DT^>M#HWT_(GL=F3[0RZ4<4XDN](;O=VQ1B[:J*8W>6PS4"(B V MF$2F*0*%$((02LJ\5<\+U*3#)IT756J]3"=33=@SE<]YW#]=5<@VL\<9P+W%#Z M#.'0"MEP+N]!G].;%J8K@E1;;9"FB/5&O:E( N$39](,>GW=,^HW#H(&YF8E M%C11")[O$R>#E.A)03 (P7?RX_&R/-#&!B .R 1-DPP",ZT2FKD"B?,(Q(E6 MYGR?/59IN6K/RPW6H,SU8M82#!'/; +VL$_/+$Y \D#RW/VD"B9Z0J>].Z>- MY>?RBT7-]S]-PDIN4@([WPCZA)/%LLR.^AX7?)J I$D0:1R[( W@/I,XNZII M!G=(IZ:J'40?9GARH:2 HX^#J"&L+_O]L$&8;76OV5:W'P.XLG,O(+)C-=3_(BD)8_32[R(ZFVR.Q7D?T5A>I3?GMM+K@ G913\]HFB$NV!\$ M$V3N+$$&P@O"*YX:[:(A)*9 M9F$[%>DPLQE)X\25MU5#,CU.MV%"8HS)%(52?QFB*C.$VO5[>%=0L>5B7%UE M&%W=!(BBP 23QC&8D)C0W"Z(*(BHV.CQE\%*IBB]4BEAORW$! MK$"!"(R%J(*H2O \#Z#GK_BAYV8J^GE&!",57.=<3:N 8-/YLJ'QF?6:VW0O6=W(5R,I8J.3;!E+ME]KD8JYG^[EI,%SXTS.9IM K)WA" MTQ@6#:YKT0 M*!(E^W=1U)W7EPUR4\P*.CO-M@P:U4;8)A@WD&M^]QE3[TL$CYI"]?ZH/ ZI M8JH2W;U _1&#?JE#^;++Z_H87QE%&JG0)+':S;+M8"C90&KS>!P +$:RI-$1=L!DEH7K>L!L.NOJC;GK3]PBHM M4?-5#2"/OZIVS,FEJ^(]5Q9>34G7;#YZ]^7TO M239$T*%=#P"(WWJN%+B1;DON+NQ^ 'LPAJX3[NPI!Z/IJJMSA;@85EI-QNZB MA.SV"Z&L*]7>0)N*;)@W3J99ZLK[C"'UXH2"+Z?>+_,P(^\JI%X\%?C;XL^N MC-!J8;T4D2XIY]G"RM7VRW: OV-.^I7/ X#I6[%B L0?Q%]LE@%N"\)ECMUM M1J469F ;?%!M<9-J=X'<^GO/9<>%G]/UH+#;6,7+(=+98O> M&L(.PQ1Q6.H,^.P&((,,SY1GZ0OBE_M,M2]_7X9XJ1D/4UQ_0X-+>!\/-$QX M)Z&W)J2/![$DX9U\H/R6A'<2NFMR.OD [OHHL<"CN&O4&78P>_"Q)O/!)/V8 M+YA5;?7\J6Y*)5NJCC,U6L@X'K-A9W1EJK?!HX&9.)-FJ5M.Q*,6M1JJ=TP3 MA*DRL,3BG>B8D9L;NOD#=3NR,GV1FQNN-CU2OZ&?/UJ_']//'SAL@7X>J\0> MF,/TH&K%X)!:"[)J*3]^2NB5GYYBPG M>.Q]..U/.5I*MSW)GNJR"6OEP*H1#Z*UI8#]4>PKDJ*@P\?,"V"=@'L1EQ-; M)N7U)[:IE;]_8+G52O7.2=_9H4V5E)K."LL:UB!'SLC$]E,1Q4&I$Q9N\(>+ M8P_.KZ_]8$./CY4;P! 5>CST^(?W^%C&J%^< /';D2$_7#*J(DA3I%F4BK+6 M'),^NP&1(4B*N"0TO,^$B+P:6'VBAP,%UX\_?3!8U&R++,LQZE&X<^PEK6[S M:YR="OD2$<6*"^_'E78JC_O;P"MP&F'" MI!6GU@'.]+Q=U$VY@Z.9W MZ>:Q_"A_L9+[P0<0IUM[O9+A!HBU[JXW/LD.6FT.? "!;DM< M81&U $?!](D[8JGGU!Q[6M/7JO+K1;IV9[!; G@7R, MI7&$@.?T0>9%7H!LLFE,$&:G-IP!^X)@^ M_/K"]$.B[QX2FR#[(/ON1]'^,PJV\D6'%8QU1:@2>7--5S+;G!F&@.S3\Y6/ M:88,C-6K#N>\#\O FYW_]V>P&N4YS9UE:CXR8'FO8.?R Z>P ; "Y_AAD%:0 M5I!6=TZK+U[N^#/@E+#VAO)%8L%G\+EG5_NU L6'<\2PM%^:).BD)K+#6FFP M5MH?L3'AG83>FI ^PE)IR>GD ]2>@NZ:G$X^@+O>)A9X9\X#_1?Z;^S]%Y;Z M>S,".=]UPQ2[<%X.[N:K"M5&,OA6YCFS M7+'JW.=+5X00.2+EC,97G8KY*EJD#*$XFW>]405W>UY;1&F0!$<26)J\P3YJ MB*;8O*^PCMECH^FB3+;IEN0VWC*98'4]$TV[B$P[0BGUZ)M(PMQ;""L[U M[@56OTX-R[J(57>&=4:@!C,],]S+DT7G>C$0IV3W&6/N:<;2*N_&7:V)-L@I MH I(_D(Q)(V0%^Q.A6"!8(%@N398Q(J)S==^5>-W1GG1SBTYRJ/_H/SH!VQ0 M:UJWZ=OKJ2"5\P,:7]GLB#ZP@7QZIE$ZC1)H4C.U7M1R4Y="&.A?>"!.\MD6 M@P(5L5CBBGP4[@UQ2=/):S_P\6O0:CAO*D.UNA!4L[.M(>-";5C;B"@#Q'(" M1=,T?N5-0Q!*#P$E6- OOE"*0B&_B$XRTEN4M&J_S6>01GGLXS.I!=+UF7!+ M-Y*FJ.M/$!/^7L+*9I!.\:93M-KX19SBZ.ZH6YX#O DE,;3U+4G M91 H$"@0*+=2PR]BPJ14[[#>)J?PQ=UB.RTPYG*Q:8=," NY4FF4NB!I*#$Y MY47'43:Z:<*4S82G;,):$/<+RJ1IZB_0.<-G8[JM"-,AM^,I$\TAO+W=]7/! M') -C^YBT@1]Y2PIB+ XO:GQ$+1B.# 083%1X-]AV43'\>D0IY9(=]VO],6Y M.-1!:A8+='5G)S,N"+(,LB[%>_P[5MGYP!Z>W4'E++^!\BT + MW54;4(T-J(9 I$&DP1EFA&>(P?4V3 M<\0,D;J=OE%U+'V#J'764PIF?EI;M0&1J*=GBDZC]/7/;4CXNPASDR"1XDVD M.-0K.5?Z+5.VU(SKYI!J'AODD<6FCM2F@$ULP*8T1;BC.M_>5)@TBM8;![,#'5M]XXK__BW M3/#+2QW[T*N&;P4/,#GSWXJ^?ODS^./E7A-3E5S@][/C WUW:_!@QW>=!!\+U7T9"8SXX;I']T7I0]]^//O_>_WP/Y:;,A/'=-QO+R_@JU[-5/"& M?,/"=W&J9F17E8R,I 4W_B:9&VFW>IF]L'\3WQ'W[?M+#,8AA2)_8^P_4J_^ M#L;C9# M:9MY-63'=S]CJIKW[?C/7GX6OK???^BLP@/1OKFJ&7QFURJX^IOK MAI;QG,4W#/V;NI)A_IRM'SM7.!29H-L_;G@I[+;(5B?;^@5O/1'%<*R;G M5%QG9_BX[S#J>BAWEJ E]G/+R=CB-$_DIX:4[]0Z5)ER#;#-3"1_;KDR*X)3 M6%MUOFCSBL%TK"6[ RV9GUO2S'Z .N-^D\<*&HM!LQ%,P4Z?LR4-5Y5F MD]T)*FLB&V+I=*E,@-?3Y_2ZF4(;;W1)01^6)I6EXKKHE M:GCPG4D3*@R:" M%O@!US;;M6QMBZ"@Y%(&*F#R:P.NH02/S<=(]L"K\CBG!],'&98-4:5^F0JXJ>]WQ8:75N9 M4RA21"5CV>GXHM('+4]ZOR#;\MXD*#K@C#78X6UO5L3;0O2Z0N M#'!TIM(Y;XK6-D'+D]X/UK[5+%58Q[ ,K,)(*-.>%,$U3WM/F&V,^1^-<.!IB=/VI>'+?;D$6IY>E/#L[G)N%3-(5UWJ[- 9 M[L?D1J1.+RJQ=2JG>44"D09&P^HY[AP4HZ=/6];WY"*[J#LX7]3JW-Q%^Q3G M3D7FM"6+^^)T5U,[?'':58J\5C619EL,"V#\Y%"3SHAA@M?"P*8SA?;,K;JE M04OVYY:[H=CMZK72D"].)BQ374Y=5)^*[.G=47O!N],E4S"HXF[$];,M?>"T M@Y8GH\2Z>:PXG&>GQA+OU.>5=7&E;S9!RQ,G;32+$K*:9FFCRZU'&".BGEH M=S]Q4I&H[26,]PR^.&ONZ9;4I$MKV\JM?DQ8P1VR!H M/.E3N=X4ZBMKV>!SQ@PG^WB6*@971<^0M$.*S<*NK8^%XEQI9WV'E+AAV/34 MH>?L?IU3_3F#Y)9VK<-J0[17#*A[YM5?B94JLS7&.<'7EO..,-NVUT8;-#T9 MUK$E-6;$1G-XS)OH)#]T90WC0%/\!!--961VV6Q=J&;MR="@2N:*"1_@Q 33 M2K_$*X(Y-7;8:I)EAX2H3*>@Z8D-]"U2& _W0>N%Q;ALYZXE8O; MW0I&.!NC.^-Z99WK=_E.^*RG]EK.UJ7Z?M8I&U*C:.&\@*.3R:'MR1@,!CE& M:^0R:T$JC/8M9:9F)OGP$4ZMX!2,!H?FLH0A%:X.C8$^:*HOA'+=*?0.AACV!IQ=$N6.%U0A/FFJB45RO M]P6&;\K-&;,?V;L,$S8]Z1=3RN0G4U68(_ZX@+)9E!5R>MCTQ& 4/U[;/5-5 MD$$/VS<$I[02QN&1%B<&0]3*S"(LOLPO9^-^94O(RWPIK-5\YJU93CLY/J.L MA5S%M]M,HR>S:\LIJ6:^O.VSX57:KO;WV>' M\[Q Y>=4T<[FM2YU-KPJ+IJU]60^HH5J1]0R[KPC[0&^3LU;5_1=DV*9GN$W M^"HFE,4%:YP-K_KE3KXNB9,MWZW+@Z4QXE?4:',NO.K2VUDMOZ%S2& EH>VH M!;,67O/D.<<"-LKY)4<5JK;*X6499_?ZYEQXA7"9%L'V)=6HHM/-9.SM+6-Y M/KQ"5MPZ5^Q;JK#49;S88KB:4>#.AE?#'I[OC3+5#5)%R_7Q2%V6LN/VV?!J M+'N8%L0)ALH)A%C+YC)9DSL77I'K3H?"Q*$@+,<6M0L^$&59G9X+KUI*U2W. M-C/#V(WF&,Z9JTYVU#X77O4Z15V>&,A,4(5*SAO;[8+>W9P-KYKJ(B_:\V+P M.9+V..[+-8T.H[O3%X#M>;V1N-5\05\8^:K6S.>I"7FY\*J)(/O^AI)UWA?8KBGD>B6O.CT;7E7L28=4]HVQT)6V0QEQ MFV-I<#:\JJW0"5H4NA-D4*CGLJNJMUUBF[/AU0J1#$\8LCI2K$GS[$PO=AL< M=RZ\&F3)*;T9RGLA,^+\H5X1V^TF=RZ\6L@^3W5:;M;8E;6![QN3S9X^&UX9 M_?%ZV:)G'$_-W,&@X=$;9[(Y%PH1>7O=8QO]#&\IHDE+,[,L%3;G0J'M&JO9 MI6))1()GF#,Z6RR5">Y<*#3K%/(TJ>5=I"L6E3DV6U36F;.AD-5JN)-I4Z-Y MBNU3>@$))MK>YFPH-%ZTK &QZ2+\+IB/2_9HA*V"]_Y<*&3F=[P^W"YGAMI9 MK83J>*Z.AINSH5"#+%+K^LI4D>5\@%(3;+U5;>Y\*-34%K*;YU29SPVG3:E MY1I8?7HV%"H6;^O1L*#2IL+F!5J<1/E,SB(:ZXK>4 M?CX4&OA\:S;?E1U#LM"NVZB7]?JN?3844GFSV:ZN% OQ9_7*VG:Q2?\0B)S8 M(+OB]@A'2 V^R]=VI=8<=9LE[FPH5&F9?![7L *B]]M*7ZDUB.QL+Z?I,7B@7,;>=+ZJ+2>!,*Z=MO0)+5;3]< MMSG\0UG<#0PIZRQ)CQ^T%E@G/T,'960C@J;H0<0-_H6J<-Y'K4%/?W&/OH-G MM8+7">8UL[TH]Q?U&3'YY3W>:0WN$:JPW_6^@_ ^<4Q36JS4;R]_>:UD 77L MJ/D!*2G4I6WOC?XD^9[S5GP*?_)&,#K5BT[U4,]]>;#C#=&#=/;A\L+WK.=W MUXU>:5FOKN\$U]1,9_.BQ+W\=ZCF?SNHFYM@G#X4%8\Z[QL53))7CNE[/ZM@ MU]877S7\#<'[E:#]9ZLZV-\( 0T1 T.@?V,4-$0,#/'1F;O0$!!-CV4(B*:8 M&(+^FWQW@P,T!$338QD"HBDFAH!HBHDA()IB8@B(II@8(D 3U)KB8(@ 320T M1 P,$:")AH:(@2&@UO2UAKB\'LMERQ!_W&OFO:3OXTWD-S?9'.PL.Z82_+(W M%M1E=1__B4_?\%VCH_BQ-L9_'<2_8]=GC@F^.'_/6%/G^P^ M^T%0$+GEPWH>B;3U26=O;GSF;^:ZX_&GQO]10R&1'@ -?L+YPQ9U:.TOLO:[ M\XPK[^6Z.@"O,_M*N%.P?[^KQMRU3WPN['V[E1==;%/A7O=;[.3]4UPV)YXC MJ^[__!=*(?_&T?3A+QB"X?="4.;G=^70A=,_KQ+WWK'I7XJUW*VAW^W=K[U MODY,!#TA\:\\-/3C&)J\:T,WO=E7:A[7#7>C^X)3=VWDL/KT3^_R)P/8B$OP M=]2U:OOJ5]30/C IZ@Y%4EJ)BK[?_WW-0P >O"!2WG?#'3(B(X85D7"QY_RH MCX1'7QR;JW8P;6L064,:+NPRNME:D\KGRST>H5!P'2OHE@=&<:![LUQP:\=2 M77X[,7W@!*"04_ _I2=MS]6MQ3FE[6JU#%\U]&R'U= -PH%]GN!X1@Q-X\@U M3P""-+IW&AW2\2"-8DFCBRID#UP:H[S"=H)TT9TXZABC*C7[?-VXK\%26>>M MZGG$F3> 75)B#5()4@E2*'Y5^LTHVT?!'[*"J MS'AIPC7ZLI.KELM1ATWKK%?S5[A*\-1^,5,K9&N/TR!L8I^>B32"7;,4+L13 M O 4C:H0R3&&!X$L:KM%XJ]T]/V&DD-TGU-77?:EDMBI(4W10">H-9CWG,\? MA_4UGRYCXVGUS'B$\_ZN7."'PYF(-,,J3&0PY:?P-$V27WD@X8T28$\]/^>L MO)2CI=RO5D^3SZUHA?_303BSOO%')(NX;W>.M:0IJ0 43>U(US/$S!8*U<5^ M-:D+S5RY;FB8F$6'G$B$&BE"IVGF^N$^9,[=,NBE'\$'T5U? MKF75AN +8F-#K+93SP6%OH$2BJ<9EH7L@>R![+EW]D2KBGY$H?9J3SN(@;<% MBV1V@_& =O-E0"'VZ1E+,\3U%XDAA.X90M&F@D>M?2;?=^GH[0L%@]A^0+]8 M!_WH8]77S$YY.NRR?'>56[-4$=GC(S!?#Q5.@DB3V 7?J_M,%2VZSFJ56KB. MIGMPK?'.UQJ_FF)P 2>.D?\-EX2>ZJA7:]Z H"AEA*6: JXI+B M1#+4.?$TB5Y?:HCZC8.D@9E7R25-%/KF^\@93]V,TL2F>;ZX'V-3>>CJK3PX M/(<">50D?L%*-"0.) XD3DR)$ZVJ^3Y[T,W()+,=I<7G)$STBMT,BZY N,,& MX4X:O<&B;M3O(&0/3.2$B9QWDL@)Q8!DJ9CO?YP$;NGO,]IPA311J[;0BG1^ M5V^#LR*!ALFFL4M"XSM(TNRJIAG<(9V:JG80;)BIP&@I2;%T6P^"A+"6;$K= M+E1[!1,XX5HB7(^YG]#_AK+F$2+% T(X6^'> (0_\.,,98>CBK&D,;+$5VO8 MI+;,5PM+;B-20/&DTC@+TQJ2AZ+;#P),PKH79D4AD'X:7I.Q63&&3'.-8%-Y MWVFX&M<;3P-X44"_H# *P@O""\+K8> 5K=;Z:8SMV]6\CTM."Y&(K3*2^(*& M#=H!QM@@!D,8"#$(L8?+0+U7B.4<=^$$5U$;(&H*^72D#>+4G.6LLFORF8+- M=K&-WU_3T]O39J/M&0MG. HI>KE9I6,7>_(&S/A0#&2RT^255WU@-C!4GQZ< M(U^LHW\:!]5I2V0X"137U ME^FL5O],::YCI9Q#_!GP'2YOW_GR]NW[#9<48SPOO*$0__UA#X"I!7@YMYEP MDW&X5G&B(;N^W&%7.\?%ME.1!JH[G48QF&8,R?3%\A4D4QS)%(75K( M%-2NPE,8+?CM %;LTS-)XQ!5$%5?JZ/'"E4 /7_%#STWD\+/,R(8J> Z9V!1 MYT8>4C1F!J*W1(S6F4(6PS8!+'XM@/\3YH[?>>XX5(3N):CY8G'\L@!BSA*Y M^FRWJPE5<=&:+7KQEE8(!@B*#$IEE^[I?0&OOO^[/%1G?G]48'>#;W[GKT;EC*]YVCQ=NK9 M[T9ZZ_9BQE$+K(\T76R!J4VFVBA-05>Q(-0C,)@^"M-'X5SSCA2RWP6 TQ@C M2[6CTH).+F1!'0F&>P ">9Z-'[!@EL2LD9E-1AC]2BGI3QI^X4%&J+N:8Q6 M%-_2 @]HH3B^;*K1H/"JIPE&WM4[)V/25+@?:Q8O1Q[JMA\\>_-[JGHV9-"A M70\0B-]ZKA2XD6Y+[B[L?H!V,(:N$^X2* >CZ:JKNI0*"#E:IGW_7H7 M(0@%([,;D3V<\G59S7"(/8B]WT[SBKRK$'OQ3%6]+?_*Z\DB1\_R1<3JE3I# MKST8;E' /YCR"O$'\??8^(LV#?:V(&Q0U$*MY $*;3 M0@Q>+8,V\J["%-N(^//+5%V!),2 93 M=>\]51>6>4[6^L)M8Q=9:#F-G3]5C8PO&KO)/.L*\S9 QJ&F!;74BBJ4( M3]J^5(>^FW2-Z"E');Z3!_8EO)/079/2R8,VDO!.0G=-2B>ANR:EDX_BKK<. M3R-Q5Y@;"',#X=S]Z^?NP9S\F V856WU_'%-;I'8:0-SH!AZN3\N*39>1"L; M\&A@XDU=5M3L/K,"&ZIW3 *$*R"PH,B]B)31?ZZAGS]0OR.K\07]'/HY]'/H MY]#/DU$(+7H_A[D!L4K;@=MS'E2<.!P=_8N*7J@X9]K+0K8J8--9OC,Q-EDL MLQ%1--0CR#1!$8G( X#K G!= "8)0'=] '>%JZY)Z21TUZ1T$KIK4CH)DP22 MTLG#5#WAG;RGV/4^E[4YRPF><1_.Z%..EM)M3[*GNFS",C=PI]^CZ&A?7@L3 M>GQ\W !N\;\7Y3BQ%4Y>?V2;6OG[)Y9;K53OG*XM9QJF7Y,Z$M)DC'%.:YCY M574CHCBH4L(R<&\^Y-=C\PM^L:'')[P:Q54]'F8WQ,H-X*SL7F+4+\YN^.W( M$)=5BIH(_2S?%+>J6LC5E(7%@<@09#Q<$AK>0;I#7@U,/-'#48'+%Y\_CB)J MDD6VT2+J4;ASR"6MPO)KGIQAZI+S6U9.U7%>I=OXOC=;U0>3@*E$6!,9I^&A M9A!-USD@"J(IEFB*0B/\@%$]CB5W@YW@(]79!*UE,&F\F;@L,%&D?4?D;*CJK=W5P_@(%\>B:8Q%8E:KG@0$=O METXM3,GV4H$54^K2UQ> T2EP^S TA,OD25\FCU%-H\@'YL[1F33U_7COL+A< MP*-@;LH=N=0+HD=[6M/7JO++!4\N+\L&M6LC0K'HD$W,F2(MMQUP'8CS) // MJ8'(N[4\%L.!@#-%B'^C%9C/R!AB&D4O2+>X@TT! ML.P1+'OT"'5DH+L^O+O"HG))Z21TUZ1T$KIK4CH):R FI9.P!F+,.GF?270Y MWW7#=+EPB@W7#9*^;@ +;$2HK7$KL:G%*MU-'<^G%D_@8Z&ZVA5:[*!?V'E_ M4.PMI,B1*6?TND7'FG7WN>H,R6G(C2(*$-9]GT1>G*D$V033!5 M(Q%LNB@OK>"K6W)!=48&A2[GS6V)MP;N']0=^@!2]:V\IG27II!E5RAFF7J? M=,%VEG4SY6W@WG]\QD9 M']&*&WCCO#CCQTASZRSK/K?H4^LPI (98FD:@4EB$%8P[>L^8/7K/*\&(6IU M?VRB?':I(9Y #58RS>"P#"ND$Z13HND4K1)^ M$:>&4H]HX76BAG3937EL,RT=JVP IT#UU31S SD\X2\HQ!2LOYH(#?PBGM3W M<]PUE&5+R V#7TK:&AOF.<"3<$MSFF2O/"M[E$SFR%\EJ!7=(U"^6/R^B E& MNTRJ+:YL"!)+.EDDX_E<_< $,I@,T7B:88FD5ETM.HZRT4T39@\D/7L %FVX M7RPF34)_H2Q5DH+K]7"]'BZO)6'>=49+$Q[F0W%<90;1FS MQDW*-=1I, A 128P*DU0UY>1$_X.0A+!!,=XDRBZKAI<_5#B&+U>J<"GOUG2-A-ZE?W]+KP:>NC1I]]\L$KQ;@5Y15^?N:43W$8SG81/>^*6I) ??9=]3?^I[+#WA7T%? MOO_YAU\B]MV#4J A;F8(#-HA!G;XZ&P+: A(ID*ZQ]@R;]>J)JKMJ>Y/PR"_NS58JW%55) M_>=?\M>L/[^OK=W.WK^Q)O?2Y8EC@A_^WQ/V],GNLQ_$!)$;/DR]A[9^"%O_ M2&[^.H-'>IA\Q 9G_J:OFX;XIP8_YHY":]^%M7]..#EK[E\/R(G];Y1?]M!. M$3 _N4[QN2CW;98=NMBFPBS46R39_2DOFQ//D57W?_X+I9!_XVCZ\!<,P8A[ MB9"8GU^60Q=._[Q*['/'IG_91@$-#0T=J^]?5(8^A#O0T-#0<3=TTYM]I821 M3"L? M4[MG)8^N6GE_GR /6#]/"HZU]UU+5J^U]RNN@A\HBZ0Y%L=(J^VU<] M%_G!=R?E?3?03Y-,]U1"'_GKO_@K#_,]]3QEF MP;3)-H+>_GQQVJ_Y=M$,VY;Y_D0UJF5U7NDV]7Y';0??+E!, MA2+0-'W)U^O+M-6;O@PY9^6E'"WE?K6@FGR41;HZ<#H&9U9!_HAM$??MSD&7 M-'$5<**I'7E[AJ%NU;-Z:T&>",T"O6LC52-;;+9%XE ,'$N3R)4%"H@8L1TH%A$#LTS.=9IGK*Z 00A!" M]ZJ&0M^]6]^%T7O\E-&//E:+:I+Y/G#Y>)/+5(3KB MBQ-"9I"RB9&334 6Q>'!:E/"UZ>1 9 U63Q=,X?4$FP'TF4 MI%BZK0=Q0UAD-J5N%ZJ]@DF>,.,*KMG\(,_X.,, M=P,?TF8JEY6,W1(G:"J3)1:YC4@!#11#TS1SY00LB*)'/908,BN.S(I",_TT MO,K+<74G!__ 4*?[]=ZH>X6R31U;7;!W)>'@->])7@]+KRB55\_ MC3$O[XX*O5[)$XHMDN?8W*AK"" & SOPTRQSY65HB#&(,8BQ+\-8SG$73G 5 MM0'BII!01]Z4YNUN;6D@.-+D$6*961=+[A\(:I_FS3!+C0M=HL +^J8RPG*K M=F6S;@>\0;&G9R:-L]=?A4[XNP:! R=]L13A/\V,^:+O(=3$RR.4Y):S2K^G MYZ0I8 ;Y](S3:8:X8)=P8I*.RW809JJIOTQGM?IG2G,=*^4@V/]XI",D$RQ8U,46CUER&J7UE+&78N; 7,$+L-@:GY69D+$!76 M=4BCY/65^<=[5^.1MA69L 49%4=&12O)7T8K9R0W>6SAF$+&*Q)>#D=:]48[ MH!4+4L\@JB"JDHPJ@)Z_XH>>F\GHYQD1C%1PG3.PZ*PV9!E7Z)ZQ),MM1LJU MBQP-0IM?B^?_A*2 I( 3KWO4RR\+("2C:BZ;/:&)J&N.SO%SO'Q09,*2'&2: MO$22N<_D]?!$PI0>CDXZ9:M?5X,CX2]X_-)"889ZG$"6.&T;@"*(Y9RW1/WU MBF-V-;"564[1C:4Y,?I\:5]RJIS( )D;)=(XS$R'"(((NGL$12)B_RZ+!D-: MZ:MENB%TFW1N4$4S96>X"5A$/3W??[+4^^+ HV9/O3\J#UL^]'%)%;&4_;O, MV@P1,J-M)WK_+$FJ(K"H=O%7A MFWXYZPA8F^\+@"5 ],;2% FWJ$!^P,G8/0G;OXN [FA4;&^62H'7*3T[\OC1 MU)^#*1#0N%$ZC1 7,""A">"R&HR[>E3!4YZT_<)"+5'W-#ZIEF\!@@< 41Q? M-M5HZ'C5LT@C[^J=PS)IXOF/U<>7 U-UVP^>O?E]TTDV1-"A70\ B-]ZKA2X MD6Y+[B[L?D![,(:N$VX!*@>CZ:JK<[6XEN[.6WFY)<53$M7-S>E6SW8XD07* M.T6E,5@7&U(/4N]!J1>%7G];_&48TNCGM&U!R,Q'\PJ-E;H+?!/@[R5Y_5ZR@\.7\^V42:.1=A?R+^RK ;4EH#WOZI-WMM1!U3$WS8#( +K#V2:/L,B MF'1_[TGWL !\LI8<;AN[2&5A9_&FDD>J]6)#)++XL%X&(A98KZ"Q-$E?D 1Q MGSGYY>_K$"]UXV%&[&^(< GOXX&&">\D]-:$]/%1O/51,EP2WLG#I#;AG83N MFI1.0G=-3B=A_B"5,/&I5JZ%ZQT1!F"P#JS'>B9 9N;FAFS]0MQ_8S>%RTP/U M.[)J<)';&_KY(_4;^OFC]?MADIA@+OM]R!6'<^=_4;ZOGG'G8\:;5'C+PT?$ MTNK-V0(GHNBA?A^11E@DJ;D"<&D6+LW"I5GHK8GOXZ-XZZ,L=26\DW!E-CF= MA.Z:C$Y"=TU*)^\I&$C,RC=G.<%C[\-I?\K14KKM2?94ETU8+0?6C7@0K2T% M[(]B7Y$5!1T^9EX '?Y>Q.7$%DIY_8EM:N7O'UANM5*]<](W4S&,P4JJNORR MKU-32VHIMCX543RL;,[B<(L_7!U[L"W^5_UB0X^/E1M CX<>#ST>!JEQ#%*_ M. /BMT/#8(RHWD&=>V,%EH^J2^DKARK;+B **HIV<* M0^'9/U^_=__Q&'7NE#'(J%@R*MH:R!_0*E\?X+IH&C6#ZHMJ;>[W,M*N#6C% M/CWCZ 69_)!6D%:05C&AU-6",JL>;O+.H*^/]%& E/ ,1 M4@52!<[3XD&5+U;./P!#2>(Z36ZCCOBF21?5'#K#9FP8;X3UC=(X33U0>:.6 M"TZ4]';IU,*4;"\5F#:E+GU] <"= K9-Y=2?U_!K^!-J@3+L.6!:M;G:\G:WZ%"2'\J*=G M$F%ANO"CII+%J*I4Y ,#V1?W)80_H^"ZVQAW5MG5UO"QCN M=4'4D9""+"AH M?.73L2$%8_6R0PH^+ 5OMC3QAS-62T.D_:J119KC79_O2CA?32:MOGC)X\^ PQ8'-R@_T+_A?X+_1?Z;Z+BAW"R M^B]/DDWU^N;XT9 )?GGI8P;S;2 HZ+8O'2?;F*KD OO- MC@_U7:8!#W=T403YQU6L-%%M3W5?1@,C?D@Q1SD&: F+-\_^_UX__ ^M*3-Q M3,?]]B(HO>K53 6N\ T+G6ZJ9F17E8R,I 4W_B:9&VFW>F$L^S?Q/4OYVW=1 M"HQ#"D7^QMA_I%[]'8S'R6!:TC;S:LB.3IXQ5!R*'S]\.X8G M0W/X9<">R5^@1>I_4UCX+__YTZ#]-/H_H/-][,&/?G'YEY&50ME+E#0"42OD7O8E8U->YF6)U9X9?[:"HS3

F)_YO4&R$!S"TU^V%5[UA1H@3^W%)W-U%UXN;;A^%:M[>%;$J*K7ZFZ#ER7,:7L\W"^7\'*F2?6/0\NQ% M-L^)V.ES3MKM:DFG"8GWD=)4QK*]K>NU@Y8GSZFABMS$"4GA);1+SE&!Q6<[ MT/+D.;'A;F9R_?K.V#4K=:U(68-B;1JT/'E.M#2@ZD8!PQ'+S# 27?%R> <\ M)XK^W+2<94I^ID*1B-0N&C:OK?(Y90.:$C\WS67X"M4E*GO4=S]1G1GF1\/H?VL?JR0L_%/1>T/.E]JTYO%S,]LQ)\?<'2[>G8Z8J@ MY4GO,^T:Z7JDVQ"L^J)&^WYE:\^G0Q*[*Y$(CM)KBGV3D/8%K@H>O*D\X5]DR0HW M'_0U QL+M36"\W.WP 4M3UR/T$9^O58=Y@U_TO$K.\XS-@UPS1/7RUB9>M60 MVPYBC,Y3U_/[XEXRD?Y.\&=.JXL@)%_KM8LE[E0&&CD\NNZ:V*C8QJ#[%RO"3(['")EMJ@Z\%76Q[6VLVR-9/=@*;XSTVMCK!MVBH[1@:#1JZ 59F.5PZO>F("95C&.XME ME3-4GM'G>V)K,TIXU1,;;%1MG2ML,PJ2R[?%'"'69W8Q[!;[<],JTNC7:^A\ M84B-54.O(7DQ9X57/;47D>_*+$5)9<0WC'W)+H[R'?/0]F0,3(H42MGB:B<, M1),I:?19"'X:M+9OK9OR6HUW$]W8@4?=R?:WAV@@H2. MM@22S5O(/EQ/>FGZ4RA[^(>RN!L84M99DAX_:"VP3GZ&#LK(1@1-P;/_XE_U M'3RK%;R.:&"SO2CW%P'4)S_^51CE?P\O#^N606AI2HN5^NWE+Z\#)Q",'4-, M$+F$RWJV]S;T.XT]3F-KSWVYZ_%JZ"$,^W#*==EJV*NXZ-7UG>":FNEL7J*Z ME_\.5SJ_'2+E33 ('P:HQSG#FXA*DE>.Z7L_1U2WFT"AOS&!>C4YNNZ2!S3$ MS0SQ[K(,M,.-[/"1] ,- Z$A()H>S1 03;$P1( F$AHB!H8(T$1#0\3"$!!-L3 $G-!]K2$NWZ5S MHRTYS'OI0\>;R&]NLCG8679,)?AE0[?55#WX^6R5XFU%55+_^9?\-4E\T6YT M^%S6V+'+$\<$/_R_)^SID]UGKYV>^J>&#PM0)=+6)YV%QO_9^#\J\7R=!T2: MEQSQV\[\31.Q-OBQ_ BT]A=9F[IIZO999?"7<*0+F7Q MMT4.T,4V%587N46-@S_E97/B.;+J_L]_H13R;QQ-'_Z"(:#:Y7V$3,S/+\NA M"Z=_7B7VN6/3OU3BNEM#O]N[7WN!?)TH&'K"S:*FJ%[Y0_0+#?T(AJ;NVM!- M;_:5HL=UX]T(O^#W_3KW'$\R?WJ9/QG!1ES*K:.N5=M7X?$17U]*_:;=ONK! M\[!4W)M2N 2M33,XJ@:8*E8?G>VY7OO3LL_;(Z.,12]%CZS2,0 M=&&PB"4MVTV9^."E\<_?Q#,UP!J[*B,(>6F!4/-9S&T5>R)'0\ "IR$ M@*0)ZOJ'PT?]GD(^_6FF<*SYE +F0[%_?YE"%K7=H+_",/_6WU-U2JQ7V3TZ M%9K:ODPVA5U)&T4=7)^KY.6?EI1PMY7ZU>II\;D6J^Y^.P9GUC3\"6<1]NW.J)4U)!9QH:D>X MG@%FI5:Q9C6^M>!U;%F=["LXNQVT12+42$EPK@=R=8T4(@7KI1^SA MJYX_8L51F\_5U0[:\;HB@0#V4$_/#),F\>L+HXZ>"?O2QPO#QKC5OBB10.0DT3:$P$12"!H+F;D$3A;KY/G'*$V37(UN4P^N$-K+\ MOR!V9QPBS.I#DMC-%C(6*^_W%J;++(9KVMEQ%U+8TE M7T': R$\TI%\>B;I-(9<,!F_@PS-KFJ:P1W2J:EJ!\&&F0J,EI(42[?U($@( M*\FFU.U"M5

Q.F4L'5F+N)_&^H:AX94CP0A+,5[@T_^ ,^SD"V6U@SM:%* MY06UZ WK@WH^CU?!8;CXTS-*IVD$9G4F#D6W'P/(K'MA5A0"Z:?AM1J6:HN< M5NOQ55%3_>VZX0RM=@ OZNF92),X!C.R$I?5+>:V^D@!@M56 2_(%$'8@QB+&$9J/>*L9SC+IS@*FH#Q$TA MH8Z\42N4K3DTSB/Z:B8,MB;5DZH+<0%5YL&O$&Q MIV)J%"U7CD8T6F MQ4-$Q1%1T4(6;7[8/+U:Z'\ MGS#)')("SKON41N_+(#HH$5U(?1Z4V.'*,WJJH*H\J(-F$ ^/6-$FL:)1&2E MAZ<#IO37VGYT!^H-$O;>GT,^:D+-^Z/R M. 5K8RHCW+V"^=$G])="!::69@6D7Q/XS+K89IWACA JX%O*/CWCU](H((82 M]4V-?7YP3*ES._'RTWC83)&FJ[>8)4\5>3J#N\7A4@-X #HFFF:HJS$"IOK> M,Q+N+P4!Q?-M5H2'C58Q\C[^J=@S%I M"NB/9:.7LREUVP^>O?E]LT V1-"A70\ B-]ZKA2XD6Y+[B[L?D!V,(:N$^[3 M* >CZ:JK<]61I-F<$1K30HZO6I)[@>Z3+8A;=LG?L;MT.0 @2FIDK!X$0@[%BPS4P>#Z' M.?*NPG6"B/CSRT4&8[7L9ZTFT^;=D>M5S54[Y@""--@8'V\.Y$H(ST,_?Z1^1U:(+G)[P\2 >"7MP"SU!]4F#F=\_Z*BVIB1N^J:,E1AF1V7ZJ4A M62&GG(BBAY)J2!HG+CB$]@ZR ."B*UQTA8NNT%L3W\='\5:XYIJ(3L(4@>1T M\C'<%:8()*23#^"N]Q0,W.>:-F! 5 M[6LK[$*'CY,70(>_%]DXL<5-7G]BFUKY^P>66ZU4[YRH7>\R?KM"[H>&WL 6 MDPS#51J#MHCBH$ )QEYP1@AS MRWJEL!%1(BR'S)Z>;P&S5B"9()D22Z8H-,(/$)5OKG/[>JF,"IAG%@NDK_;, M18@H4+(8O3*B'B7W(_*W,_KD$,BH^V!4M%6*/Z"575E(^;*=XPQU(LADME/) M35T.T H<*8B2D%:05M)]#9D'F0>9]_#,BT+7_S/X.>5INY*8 ?]?3,TM>7_1\2??>0)!:CBF>1#PQD7]S7"_Z,@H5:MSXHDUT& M\6>U8HWIE3D?:0,*LD_/!#RE$$+PUFL.,1R8Y$/P9LL0?T8KW?;[K0;/#(5, MH5KOS;ERL9'G *W"LPROODH!:16?EQ).5Y-)JR]>WO@SX"SY>I-NC&JZD*D- M=7ZF#':-61@>A5L"TBAQP3SQ#C8%P)IRL*;<'X$P0JA!]X7N"]T7IO(]9A6O MV]1(A/X+_?>>BR;&T'\?)>DQX9V\Z_@AG)G^RY-D4[V^.5XU#'YYZ6,&DVN@ M'NBV+QUGUR<_D5YFZY.VD2DN^CU+J';'@^469TM6A@,R0_ H_Y)>M?3G=)=; MVV)'P)02E6NR&N$UIT%+\N>6K$5+V6U.<(S!9+6O-%:BS0BLYKQBT:Q MOAX8U&[(HK M14*ZS5Z]:*Z5AH9R(G%Z=X[GIZ6,7>5Y26ZHU:*'6WN?$\G3EDAANA_8/I$7 M*'W7\RF)6&ZKG$B=N69)SC:%\KXOZ/UY<]1=[':[15ND3UOBQ+[LX/U- 2G. MN]B*J/*=6H4+6I[T/<<5+)$1!J*P;!*\19=+V_($M#SI>\Y9Y]$>3=I\<=?L M=,7VPL>IZ3D/\<8"+;MVE4)4>BT-I[;:\Z3V.0]!@G2K[M@67-*H9OL%HMKN]6>[]CD/ M\;?MD6\-W9&1*3-F9B^RR&D$K0WVN9<]ZR,S)+UN3 MSG9E9'*3R;@V*1L2V3[G(1-E/2C_?_;>O+EMH]D7_O]\"E2N?6]2!V*X+_8Y M;Y4LRXH2VU(L.4Z>?U)#<$@B!@$:BV3FT[^]S P&7+38E+@(]];)(Y/@8&:Z MI_O7Z_SQZ^__5OWLHB5?-?S6J[]^7\8A?QV]/?[/[^?IE^.#5OA;]>]?O2"! M,9=PR.37* J/__JK\7'VUV1RV?C/N%__=2F''#7"4Q%>_.(?SR:=P=__RM'O MIZW1,@[YY_=!ZP^_'S>.9]7AQ>^U3[]VIT+X+3D)V8\.EK M/_&"*,EB>0FO?15$WF?E@NS_W?CW].M[\5%,/LK.^RB5?X^[T_/1#XY,/#&% M-Z1Q)A] F9*;N)N[BON%\:\E:B%0CL& ==- >A'OTX$7!5'\0GN[Y[\-_%"^ MR,*!C/&OA:_I)2\H5 5O?7]V>>S4VKH_DW/Q\?S\[?&[X_>7AV^=-Z?O#]\? MG<)?%Y>'E_2I<_K^S=F'=X>7IV?O_^?G/JN0M6O@?[(D]8%'C9KK(%M1 MLOFO G13:D=1SQ,MA%?HE089%'?Q]U#_N1]\_K MCT<'P\._FB>=]]/HP7C4#P_&S'_5RETA1_7ND(/@D!Y!17. IP,Q3>0+_8<] M*2#\2S6AB?AZ0!0)];0. CE,7X@LC?0'!.#X$X45^1D+/*IG\!-E)?7(X/T! MXPAZ:NJ5-5[VW6(+G4:E?:-/;^!?+1D_@C&'P*QZW_2_*4CTHA]+\?G@&G;J MY31*2,R]B&4 K'@EY\9443%ZL7Y4].&X9ZG45D.U^OPQK(-O@Z.P%O/?[[(; MZI76C19@28A'(D2MTKS1E502XI$(T:LT;G07E(1X--%4O3&V51+BT413JSP1 MVT"(7J59TF%]=+AG0LRMH'4O',FW <('6.3__3^U=O7EXG\+JP&+!Y?XOS_4 M?_A6,5:M/&RN1+=HGWM@?D>W> MX\BND_B]AXT"?2_UE9?E1NJ7$FL[)-;W+')=@JR8X%N;?G7(7?D8^;W?R^KH M!=P5L=;=G+;J+?3JV7$J?YOXVG2UPVGH11/II.*K$\LA3".!__6D?T4.6G20 M3V,Y%4 4WSRYEIOU6+!M>OF;2-AH;D%)WCKN:&!?T@96LN7%%X?)WV=#.R3T M]Z]!_9^K[+?A\>SSZ?3WHR^'[;1S__(N,?KZ@H_KI?CZ@0_K83@XY_-IOI'+ M:BS^>O?KJUHP??OY^,NP\\O;3GC^-?WC^N\&-2'INKUZ^P'KNEB-;9KE-W'4 M6YLY( ]PU)OE25]YTLU!EZ_]O[[^$G4G'S\=_N=3XC4[W6'PN ?]_? +;&1C MO_OS8>(T'O4T'O=[NK+V6:A.&V =Q[< F2FR&D@ TN0+\%L6S MIV=P/4P\;B\6>5NLZRF)J+6#$9W(+/*6&-%3.M'K!AWW/="?>]>' MY_^^39O'LU\O_WC]ZL_/LOX:#S1V]G)[W3LTR=]-CXF"88[$:O>D](7LO"]D MB8>S=(CL$@91)_*8#Z3*I5TBLGZY_.M?[VCZ[J1Z<.$G)R='Q__Y)<9$>L @ M;;?5NH-I5/I =M('LL8C7CI"'A^3W/6 G\MV%O;_S2X_MYO>^>NK7[(_QBG6 M4K7Q@%<;#X9)'I69J6*@]'3<"V)L+M"X#9N@@,F&-V$W9-B#H10ZMESA\\Y/ M/!D$(I11EJP69^_>5ENOKT;#?ZOU7\XOPW?_N1PTKK'@$_!*RVVW2I_)>L#) M4Q<.S RNIQ<@V@ I--T>YWZ M7GI?-!M@&2B,?QFE(G"B)86@I4]F_3Z9C??-GEMOW4$V%/HV_5QH M"+$K718>ORO'H>?%FG;2PBW;9D:/LR+'?Q:5E1XY=)T39D6-+"%%VY-@20I0=.;:$$&5'CBTA M1-F18ZUTV('4@B=1WUYVY"@[ M-3MK'_[G*OKP][OA[]QEH]%S>]4[I&65*0D[66%2=MG8M82">Y_NR\&O1R>? M7Y]\.CX)O_;?R\/C7U_YOW-KC6;/K>U)>8G&'UXTP1@^A=:?GMGT,%&UO5AD MV5?C$5(@U2D\GDR#:";E*QG*H7^3=/KSZNVOO7;K/Y^/#WKU]_4OLS>O:ROATR#WG^[+#QM,ZVP^5P7COH_WFT_OVZ6_BY+2:_7L8?9GV@M_D MV36WVJC7W'KU#LW[=M,7\E:*1#I!GHE7^D%VW ^RL>+7TJQZ?*\)'5\KCW:U MB.N$K5?5X]-AKYK]V3P:=7Z[:+WY=\2M.>INN_GPI:Y/[V!LA^-D4P6OI3QX M=#?+W<7!>>WH,OWKM_'O'R?MRS^SU^U_7PEQS8T\ZF[G+MV*=\#34C;R*!MY ME(T\=@;8%"O0%HJ$5DNSX7'KXNC#^=\7QV=B^JHFK_Z<_5%3?3QJ(,ZJS=(U M4S;R*!MY["[(^6;1,.XV__SXVYO(K]9/)N]K?_XR&7<]U<>CZ[9;=Y ,.^C9 M6=K'0\R5CI:NGK*'1]G#8V=1TGVDX*L_1/>W-\%1\[-,WL[2SJ=QVKI4K3PZ M7;?1:Y3NG[*51]G*8\_0TGU$Q*^OZU>CD^ZKM]6+7T^BWF7]PR]A2W7TZ-;< M3KUVSXX>#]T;8PG9OJV,;*[SR/R_!>W0WYV&;-;K=?FWZ(G!W\V:K/W=;8KF MW\/VH-NLM[IRT.C ='X6C]<5I)LS[TUYVZ>7Q^\XI;U><=X=OC\\.7YW_/X2 MMZ+6>7GAO#Z]./IX<7%Z]MXY?/\:_N_P[5\7IQ?.V1OGS>G[P_='IX=OG:.S M]Z]/+_4S'XXO/KZ]I$?.SH\_'.(7%R8W_!$H/[?^RT+?DX&?>%F2X/E,L@G\ M",9,N#>*'XK0\P$,ZXI'[)IR&(]$J.IS3D.O0DU2_#2!7_<3?^## /![D>"S M\PU57'H8QXYED@5IHMJP^+$3327W34GPQ-(SZ3B6?.ECZ(?2F<"*QPX\YD># MQ)'A -#YTHXM\$>#WY2,HRP8.'U\G\ [(U&>_).%+(ZN?1CO1_\G7@N^,0M% M-O!32C>#\0'WTU]DLPK\.-^2)(4/)B =$IYAE/*NQ3*-\'+*(,/YR2"1U_@A MOCL=^XGS>R;B5,;!S/D@IU&<.C"1-R"B>!*UZL'O--Z/OCVON\T!3)9H B=U MAF3E"9F)P.NC+'8.PS"#'ZYX]6^T]6]\%'>\G>E8I,XU$'/H!S *[1A.Z.+X M"']].(W]0/U<4^!'_!Z/2[WZLO Z^JSV\J?*&ME^)8_?<,;IJ( .B)C?L*U, M%+_0.G;^VP!8[P5H:2 9_+7P-;WD!1$'WGHD,OP4VP5=:-K ZD>@Y9 FL-G7 M\*?S-HH^X[_-,\F&I<%Y[%_!5)P+Z64QJ3[G+?S/B-8("T =ZAQZ*1[76J_7 MPFJ0*W^ YUR3.A%#Z8Q%#"!&$9J8R0-H)(#YAKST@T M/6?=BO,)?W@%!UP, MI,W3^LBB!F=I=1/L]1PZ0USTTO!3<(R\43_IB\#7UY) M5S^@/D9O@9?.?RI"@(?^%$:=_V8:D"PM?.9CYZ+!PL@PZMF'7N%#H!FW,$U\X#T1HP,$WI"09!:TYRG+7I1S(".1NVXD[V/Q-8:P M0,2MGHJ[3*,A0UG**%=#+JVV+U '1"P]=5=7IK+25C@ <<.0VHL!PX?XVF&6 M9O#[ 3!)$$US(0!-W$00WCQ"Q%$LW"469-)J^J-;]+V(O^PN(<+6\-? N;P?L0GG/\&((&__&ENT^9V/[>"S=Y/TY7#/QC+ MWZI@BR* CCL*B"P!.!4$>,[3<92H WZ-@%=KBXIS" \ J./?6M(%I5%!"J&N M5<(AAO>%F61QH^09_$0+N06IAAK$$TG*@\BO?D+/6X PON2^4R,1]0" M@)"?T=-@,E%1+:A2;RS"D:9,-@7:7($E%0&7#&%KHUAC>5@ S#I+B1H!Z.B4 M5+'+5M6*B0)2\V*_SW; ?GS\ M(>KCPZ>X#0Q6.P:7K''5M.K+(&' MDL1Y36PZY1*OC1I$1VQ(.SZRHX].$:"Z8-LASMA],/3C"0MM=!9D!.)RF9F. M <:,QN09N1Y'03 [B*Y#X$+;3>(Z)^<7KG-X?N0ZEQ^.Z,A=O#M""<&_AJ_I M0WKB6FJ["Z8RS$ UQ"0S@)%D"&N1L'24#O 0(%5B/;IK& ^CRB)0NN ;V'LE0;0 ,'7^6*:D4 M 8H.YFPFZP$%0'#&B9O+-/AK(*=H6,!;>3 ]']PV?)9/GP,6-GMG7?U<@#): M@K+A.2?9= IP/%8*D.]C0!T:$_)'LB7LR;!E/(\5XS"Q;7]*YV/EHN(ZIX@G M4) K!];'RF\5FSSP4[23< (HT'@X6!2L%824V:Z8I"@WMY4C?$].;. %N/J M9[[:\R[%@,Q/=FH! 05_YKP1)K-?0^>XI!Y E+-%]$&?P/8!%8 MX4CY&S4)U,XK*][&(4/1CX&(S.$#,,6N)&PYN25A82((A/9=)JF4!*A OQ*) MDPSU-LS(GQ)7S^")"2^)K%X4QE?POS)(,=)<^F#"2R9!:J>2.S%7Y@:+:$OGPL0.R!];/LD!=6C4NQB6@? MW/Q4N$2)P!EA?[S0'/VA! E>_-@<7HN*BGKO_,'!81H0?EU"P V)\T^2&&:" M&ETS-M[30J< ")#@;&VLBBO_F?@6*)^R* "8J'T=R"?L9T5HLT2.:%",O _$ M&OI\4,&LO89GV=^ 6(B/[PR$V\B,-(>J&.8K0*Y93 (K_@+B!4A".@%7Q_XS M_!6%IX#VPX0#"35B6P,11D0&\"S*":S0;F(OW M&13I ">TOV!(%?\[KX3W.8A&CX:#%L-DAW=LB.]J:R=%.&("6@.! M$#JWI #!^:Q:Z3J@*0*26$:8JN;\B)%20<3(XRL(T@;EA6!"6)-)@)W.MSB&QE'+#F#'S 4!D(/)GGVB6&(ZG!0WP M") Q0X!1J/G#$V1#!*@T<&B]1_"ML>#!\HG@X/W+([/-P6>7S*($U!@=:#V/ M3P.=*_ MHJL;T!CV/3(:$?Q*C)*Q!2B+,!(LO+$,M>!1 2UA[.C%87Y43O*W[R_/=0"+ M%IDE&3$GJ!2@24!NA'R=*FA'*W#($\4DQ,]Q*%B4S]Q= 9)@_LA8(B=H_ <; MF"CU:8:AP9=N!VH A5PM6.#\DPW47\;?PW#)4[YHSX^];((GS9.;<]& @D9? M")DFJ;5/!78@\ :[>! -#^#+ Q$#["&?#<(3D1P,2259%@$Z\!/T3"%21@,A M4+!>:S<\;MAQD@+["7[O@;KT0!L>V':,_Q78XEK!2=Y ,M(1#_J)+2!X5'0" M*4U= 1AH, =Q#>GIO@06'/BQ<@1.I$!K# RZ'$7:-I@<@@I,";!=^R&Y_PK' MR @A!AP:E+&=-#N@W!5,NQ8Q2" 9('A'_Y$($AH0CHH B\AUQK-!','*#YA; M< M&,S,Z_$@ =4#0JB] '\? :=8#^7FV(;^>'4:@8R4,!PC1$PP,(7AOE(<#%;8KE:JSS4YY\^$=>ABF/$UH:VY-570Y;4RU6!5 MCH&[4EQ+$:.%#V Q2[37+P)XG6I)LW(FK!F;]4KG.?VPT86_7.W/@MU"T4K" MP!;[YL4Z8V*52C2*4(=:P>Z!SQ-T(LP(QP625&, % [);;XP0\7\4[3.<(J: MFVE-R"\YFT9]BOFBA7D=Q9_QIXED)V9!=RL? :M+GUW=4SZF1-/%\[V<\4<1 M1=S8__9H.A"3A5+T$.4R)B4GN7+E$VNG(C:>OGPK;>-)N8D#9IRBTR.W><&L M%3/V>D:>ERE4O=SC7#0/\$,?N(0=F'$"?]TH-]TE7$IN I: RST3N2GAR[LX M3A"080P*?NH3RV#Z@-X,OX_!^65:8'?CGO5J&?%\)2;-Y=TZ/M@UPK(!ATI ?D037P/!6>"N8&I<4?!3P3ZWE&S7AO? M!.E SF%A;$!A*0Z**8E$JGH"I@#F1 UCO5?DC_#U6WREY4 MD X]^?*K]#*"06RC*>-0$YD]IDH;P>RX#M625P@1;=\W( M)I83A$9X)LBU'.D,!ISH .T!/*:"[ <5_R28B5N741Q7'AA?*+PR3%0DB^/= M3(QY,4-> 'H2\0TA50Y+LV.$[1!TY>$_[EI8 OXVS21RXY9K%V1$AF@T<7.%I;7+!K=69I MT'?-/,V]QB@HNDLT>9:O$@Q*I]>JXC&[$1*3 X 7\V]J/""5[^TOSL?I+Y466_ CR[V@7UQG)!K7!ON?OV",-#SOOH2D[T#BM'!O!\WT?SU9MY@;;0$LXOTM89^6=I3Z\CY\)'2RW1 M+[LXN6P?= &S_I)O(FM,- U]S\?P($6@^\@"*'FR&-^H0A\XY!C./SD]2>LE MJ$YU3#E2UI!P$CA<=#W\X 6%0!NP2OE MB%%+3K9>SQH%U9A3M*AFDP4]RZ1"ATQBUJR=3[8[PNA8^]#=OEWY ?Q(1UK[ M9#D;0Z7;>>C1$)@?9:56<"*]W$O< MFFK1%LI273:_0J:IU#T)&F_T[,ED&#-[3SJ#QAXKS92E2NWG-& M!OQP[K@BR9 !3A#LI[(2(6KMZBJD0W4Z=?UM86'&*Y?8SL7BN3;(06']U:>Z M93)Q%A5W\>SGYM^VB8"W$0:G18BX],1YPW2?;59'_YJ%TL;.J-J('J"Y! ;P MC"+FB+?%=T86SZ=G#-'OV".> 162ZP?]/& G_-%*,>'(H/,3O32 ""K#PA\ M8&MS*X)SDFM/M86LP=7F*CVH6,YUE$>.,K3\A+*_8*Y]%;9EJ:63M@[/C^ZF M@K9>W5R,11A&83_V!R!CSFEW-V_/88)5D<7"%;"/R')R[/PAXS"Z$H9W%I*< M"JEPG+J,/H+P@/$/VB$3(ZYLACE"Q__,.1L.!7KEE7_39;-G+#B:ZXFIP% 2 M([I0P+^8CDVF8:@^** MO3%)F.T\*,<7KYPW@?QZ FKW7(K/2 **.VY6+BM]7V=Z%\[,/))9GEN8!]Y- MM2#\8 S0)@>%D'%T #@*O64HORW)[0QA?\B_9054[1 MY0DAJ"?4R/R# MAP:8[35F>X9Y^$"+\97;GC/^)5@2A3B3C@?C)^=1%/0E;\ 'V(D$'8%F0#Y) M.GP<2Y.@J!PE^M?G$A@V QPH*A6!HK*0-&3"A3=K&=_\X,XBE(E3R]2=0/0 MEO@G:YPKCG%UE0" TLG,68,EU,781D$K5Y;+=C2A[GQU&HT[^"(1@8H8Y.OG M(6!%G6T(TA75BO-*!D.PA5WG?80Y97&8XU/2M7DZ<>XD-TT>3%*:C8O^\B*:'%L#GCC[X_3U0:WG8'@SIEK-E"0Y?WTM,-''^?@Y%HBTR.'S M-477DXZBS&6?92'@7$V317DX'5I8VDLXHGZPA/) M&(!==#UO$CP2#RQ)5(;#93(Z:TUG )NLTOHL=SI!GU PJ>PBO(('W<$M!HO= M9"K983$\!>9[8BTLPC3;:N ),$ZM>0#34+#*G7\EYSL7DD3-] AK(HIO*"Q# M:$E^R0BTN8M.?^Z;(9Q!+*[S"!7&$O),9^$\ZU7JSH03KAT?X-15Q( 2L)=R MFGEPM/V4*C2C\$!!/U@!U2=B[4@_(CF2)!F[1M*\4LZD4?9%^%EY4M3K430! MMTQ5)A17'DCF*^"Y*7F"%0\6SF3.6DY?>@*#@$CJ''!SC9ZN*UC<&)9GFJ-I M?]"F@8/D\'#*;@=*8A&TG=A7:!TTQ-C/8&%5=G,=[+U#^8!L8=/.+N^!M+%C M\LDD[)FD=8Y%S6,&W\:Q6K[0UN[DYRS^S/B:5@Y.A MS'D+VV,*YH'=[>FF9D_<3 HKG-"77QA29RS"$+$=H*T0&Z&GQB[2C%4-< M)B@Y= U&%#=%09X&(KFX&>A)X@Q8/"2)>\LVLD>]R+0X+Y$ N9DF&=H+ZL4D M67#NZM@DO!(=G)M/\T/7/DP.*U )_R4JAFG+'3<.4;M=:9K3 M0N@1)%[,W 0GK%-IF6^C<*$N)\]NOCVGV>J;ACNI/98#>$VC6>GDDPCQHVK- M>K,?FCSD8L(R,S<(R9BR3ZSGL:JA#:1,FI,W+9&\2'UXE!C"8'# GI\4> M"*D$IKJ31O&,E_W?=)87F>UE 839. M<>9?P2>C8A(\IP4I%UO1[Y8'UU[#WOFI5)&.?->*FE?!8AH1=B5 =B6:H?)^M.9L,G8'Z9<>\12<@A[ M@S/R\ PJ0#")J,C>8T\PM59(<+:JV8O*Z5%JYS^;[ ZQ:K9CT5=>'/]APG,.U4PF8S'54(5R>:F"BK@# MG96 LJ;8_2SA13.W)ORDK[LQP: \HU"JY(JE]/?&@B5F*%.L1E,I2\B5]NIQ M><.,?*;H&@5[$G]#.ZQ#;@"H?6LCTAA#AXB8PF3,%(,]R["\EI6.Q;CH-QCH MP\$ +\^"SF==44X-YG4*&:KR[H&"B^KG+%?0-SOFKAZVFQ&VUP]\YK!8VN+. MJL:XYZTF5WT4" ME7E03,E9#D+%$L,6YYDB,@]%UD@KRUT.[-7+P%X9V'M:@;V;3)#W*LIU LJ6 MS) -MWQ#*T HQ<"P+N_C9?P)".^I?+_8H:307\$*-A53ZI>W*8#!?0"65#1. M@8().K7M8!L_EK<.P-9;#O;>*J!,@/OU:JWJKHC3)=I%K72EZ*,;O-EZSM7) MZL5Z$]B)Q%5T PSB6F-1:=5K7/+B##3--]'TY7%E$P+I .@43$R*4G7^:)Q"LB MG4PH>T-42)>A))M'0(-6Q3E3'98(3HPIS*"BN@WR^(W!RQ;*(S0*TMW7\6>V-!%Z^%?HOD.')L8&1 I(L!\L::HJR]7)$KC?_2Q.]#TLA/J!QE(,L*T,24:8<:@=6W9#94D>!R21:2OB<4.N&DNL47'C]@U$95*]AL8^QW([[,"\ ^89.C M;8"8J,$6M>H-@,LHQ 4MSU5:TW&41E=1 .3R5""7^CD9OX.."B?*V,:N5=&( M>E&[W/RTD&OKRY5*N%9_[CJU!KS=)8$+FVJ4)O /O8Z)[$%$B-E%R&I M7&KUX/&I)QF4Z"Y1.D&ZB,K#@:FUI?(WMP#)U'MY0@NE!ODU)^_+4A4K$\G8ZDB$V64TII2C M+/?V43NE)%4WS* !9?('3&6'U?!+Y?&S::5X%BV>@=;&RIUJ#A-=5*,Z7')V M%)].V$=5I<=7UK#1V'2--5=LXE:O=)V1/Q+7L-N);I55/(A:JIB^?$Q.56"E MLU<).O 6V>>:!2GC8-#6R7P7N4[M.?W<+ICP\%X'0EMSHL2JN=U&G?<^(S?5 MQI7=V96TJNT32=(B#W@6O23Y%26AFCZ&3LG+C&X")4P':%0'>,L"-H9;?) Z MUEG%3E;'=^//+E0+IV,_!O8A$,-3LF*BP$':7_Y'-$J!!_'*TL3A-)"F:Y?S MG,@(MD%HA'GK+$@M_)IQ"),'M#O1%%7>10:GEZ()-GZF>>=S5#W*$]?<1$.:M#I\]YO&?[_-0=YUSC$+1;0ZO\'\<74^ MNO##(79>@6,]H71L3)N0H(G&'O4S]*D6CBX[0RMR#/^-55=R91G3WP.LQH[9 MQ040)=?"]@5UZ(%%BTV]2EVR8R=JYL0UN1T^^1+)N*%Y4$KOU"264%Q8H22* M Q;>KENAX\T 9-#ECF'*&56%!?"CJ9BA=TA?*)C-G$.Z1%>$^BX^U91]2A:E M1("&@N :L$A2S#:U@WD5Y]B4>%C&L#(?/_O4:9+JV.%@1 'WE R$]UEE]^=U MRQ,I4SM8:5RTVN4D%V\$I%YI4MUCER=5Y_N#;Z/$#M4-BS9&)VM8 Q= 9 YD M=SC^URCC?V7\[TG%_XHMA'5/6V5KV]+0QM\5YPVG84R,] "%07)CB$Y"RQMG M,H8ID;>06+;!4("JP&_PW%G[%2>G/+K8J 0F$6>!E1)]'%[Y<426)6"G\SA* MI;(6N2]$(6'N/$^8,TTG;6D\P#0GY;:+T>Y$CZ64X3A"B#2B3$?:1(IXD9A= M$9JAX:,A9S$EM![3LQDA/KF25#QSB9)F58S*B%M.]W&+FO5*X6AJN3? __^R M0+(+.8H @Y_^OY=+FTSI_GUS31UI/\\/=<42.EP#M=U*L7,ZV:J(:=YY=$DQ MO>J[#(*CQ\J*MI>SJM@!ZT@5_:#[8WIPOCF;'9Z&7]4YGHHW1CI!X^V#JJ^Y+G(\$Z#J1JN05[[!TU%54P#6\0(;\?#OF M0IRKXKR+8FG252UP>4"& +7WFY*UJ&XKEN1M)X T-5?]*L&C3@TW_=<4.H@9 M0E-;=9J1SN8%$V(P8M(#:*)D5,P1W*" T:V7&BM1MK!0="Q\;;T-9!_C- 0C M3>HF7@-@O%6$V52)DPX#V!TBHQ#0LN6 ^F>^MCX8)30/[HZ.DT0/F M41&ZM53=,250OOD:^6'^K]\H*8>F)%9O\;U[1-6]0=('(0LJ"QR?>,*4/Z-I[.-(#% 0G>-9? MYUZ!4Z[9I';+A99;>,$5VVH@:[C;'0ZZY(HR8IMK^&MV@!=AJ9"9K1=)#L-[ M_I7YM07VW7CDIK32E2<\5Y)+B;[*C:N_*7!;2!-EWS%Z3@N_PZ_[FM+("H42 MI-6=;0>XFQA=H/W$8[,IDK_FM%9J%BHF4T%M$)4GB>N3<4OP:Y+*%,Q<+:ES M-_'85]2AW[.T0(_ %1Q. 9,>$NOS+0L*KVB78JCO:L\K[M_!5GJ1ZQR)4 Q4 M?YZCL<_]W3"%55O\CO G=D)T/P:]2.ZBP >YP(%3O"F%CZ6/=RN0CB_$F($@ MNKLI1VLU/#62 "B*]=D(O%A\D?=='W"S NJQP_I/^^#YL[G C&X>D.11;*LO MKBG;WTK_-*H$+CFB8W]I\KDW&I@EQR%FP^D(7WZ9\GQ,$Q.]4_2_4)H@M?[D M&IO4S[M^(L'U-8,%H 3OP("ASKV/0>K!/_F&IMF2F-FQB7O@;C&$HSZX,?5_ M"//*)GS+TN@(%G>D<38:!2KY_+.44P2)Q(2F=&%LV56.[EJ^$/M 9*#N 9^J MLV!O#H)E1!U(&A,JG'%Z/M5$JHB:4O(85M. &7F%UYY13@BC0;4"7H&]F/J127'/RV9E&:4"?,%] P M,U*>W&6:6U+8"JG"00D)6Y]G%L49 M)H/KS,--4S8DF;Y.]12:YDR-Q8P(1[ M,8RB%#2FZF/F?\:H61KE,6J2R/.55"H@S<5HI"HU,]/\<,.R-*+;8I%;3.T( MM3JC"\G@P]2K_(3B%S%X'K0$WL,,SMCT#:5K&=2\[?(DO0B^BY2=DI/Y)$8< MP\)@?*4.WZ[$W>(IW,\U4!SNY_L@5'B(I(1ES1A)H"[KX2.O1'JQ\Z\)JAXL MAX.8&,VL1K:*/\>2H'$S:/K4P.9.$AW. _G!N#1"7UJJ^G0 SX#U M;E\/!L8W)J2S>6.U9+;,?@_/*[7+56U:+%JRYB.Z^_PV/ M'F+N"=Y'S%,A[P'=&\'%4*K=H/II@=#F[F;=EB?"/O..<5;XB2JIE?/WB\)+ MLKB/^>$HSY0VI*#B_/UM[&M4G3!X^[+I"/$=G_8^;<_8Q[*^J\TIL M,7U % M#*;&U[KE#4^6NK#4:J)KE0ERUY)5%S'>DO"M0^.X8\MNAA[)"+9L.H8_<\T" MPX*0T$X)Y6.CILL:R>C+XC =.BE6.2[D1?=G>3<&DW(RQ5XN=EJ[2KMB-)^S M(?(J:J(OI0]/'S0S()U%W^= .]BX3[R M^0IS2??-,=0J2C)M+0^6OO)9O9N_0]EM5JZ7G0K,O[FF(D$?L^'RQB Z^[%@ MVT1QP2 I6%*67M.OX,NEJ1TTC8*!(O*MD?VHE2DK8F.6F&H7W=K! 40VP0JD M@I_6LFIM-SFI;M4P0EVBK8UCJT1>F;0F0\VTEL1Q2L:T[R[/I";P;<0 5P M55N'F6Y.F<#ZA.)7Z[2HL>>JC[G'%]H -YL M/BAT.ZB^)/WF!LL%4";*[*Q[J$GJ6^ MFO6\PS_ X(0JZ:(P2:)N(D5&,S>KJ=@G9BJ$E+QJS]*N7LD;F\X5?U+RK7[4 MI.1A*\HDT<104UQ83B[9E,\"*1)@JU65DJOK^]#G5>PP9SI:*0,:V)P"GC*_ M,IINT29NL\U6XXA0/]3B%D/7Y) (J*UH;L;FB4,@^KW8[^,K^M'5QJY6O;04 M(4Q(3)#!YEK"H&DR@D43%]!Q0*9R]:*] "-D,Q,)P(42NBOVREGPUOF&*3"^ M2/3/S,6\8[[);#)5S:RIU:%K;GHG_R*V,^-F6&#AH7NAF(9"%49XA2@P L70 M^&MTYEQAQ*K0O8S+:BJJM)7$GAW1R\,R*$M2\9G-45_5[,HI'[XHXJS^)(^- M,YAB9Y9I=F5RV#W5V$LG[N@TX0.5)CS$$H-Y%]!MI=&%VX5-<_!0IVP!"YJ[ MWI#U3*HOXDZ\^P)W&]NWFD:.<\X71:;Y^Y'MR+4B<I Z)2TUS!J45O(_Z@ $ZH4YX8;W!OQDT"#A+S +Q'$2%< M/_$R]E[ZZAHF?8MAH8ND9A+J>HCU%GE>%R4W:% ]B";HR?442RJ9"!W6FTH:*!8[E/SD+L31,*>3 M:@O^@31N+8X+FP0:(JJ@QQS>Y%EH0\ZM@UI(& M,:JI:YKD273("\A]JIUWA76<[CG%VH?S8:;8;@O.*O'5*/,'U$^&B@!51I7U M/74.3GW.9*8K/X\8O6-\5JV2FK:P>F?;-I9C99'9.=BZ,PVE>"Y<*TIWCEJ- M?Y;,1265JF@[_ L,V)U/,F#0^E< M_9_=C5W%Q4R3>R-5V(? *27J.]-5EN5'?ND?7[%."?YPGOF*VXG$#.2AZ,1@&W9L]#Z9DNE.,[B(,O@?08&SD:]O\]1-S'0\/>9^H=1_ M#H.X0=YQQA+X2DF#Q495\E;?4*M-J66>\.G$7K96#)_=.? %$@T]Y<;?8,,5 M&' 4BXG)ZU:U@;Q\@^U-UZIB6]]":@@8H7Z4Y@UZ5>,H]=U<=PR^Z@.KCZ\I M%TW=FI('#C3@4M4A14B>J+A#LLOAPU89/BS#AT\J?)CGR8RCB)H2HR!%6Y6N M^:!V;GCV35?PQ2L\YM,-S\A2R&U*1 Q9\B)YT)N'FB68V0TY!-7Q+/;C5DFOF.5E*T#M M'5..\:5^"G6ON*ED+>!51GN@>PG5LW9$C*Z*0_S4\K>P)C,JL\!'=H5(?AU, MWD]/FYFJ:3:S@DI46ZCM-YGJU,_ 2MS57F)LILC!$9HL.0:U$S4J3FS>!UK8 MUD);)&/%Y,R7:U/M>BYP(_>\Y58/JIX7V]9]EH"*?$RU4T$F5;H(1RL)-.LG MB>ZYJN[AY.YATT]".8=D VZS21+_0?]F(1*"GXAZ@"!2H<%+]-QW< ML-]LLKP$]9G*@P1#O"_""/=*+7.S1% &50%N&GH\*3K4*HV2#EM AVZEV2P) ML06$* 73=M"A%$S;08=2,&T)(4K!M!UT* 73=M !!%.K),06$ ($4RF9MH$0 MY8G8$D+4*IWR1*R1$#^G,;K\UN+>VY; [$-BP0?."EA%9]NY?\]M\*( /_S? M'VK5'[YQ3YK-2K6MDP5TRD1M^M6AH("CXPH/N&O=.VS:S2VP,+RU+ #!#OM& MS>4_3/3A8<74X[/1?;BF% K;*!1NXF]FWL7_+K"SD0;U;Q4&O4JGM=.R &-P M:SKF#\T7W[O4DBWNQ1:-DBT>@"UV&SD\-7!J8_.K>7SHST&Z M#:S;.K.4JK6,K&LC;LFJ):N6K%JRZB.R:NM)L.H^\>K3(!HC\DT3;2]]MZ;> ML4WCGQ>NU#$EP#O@@-D&$7I+LLP#K/'9VC#*!@6&TRC4W!;H9L]Z&DN*#L,S M3KU6=ZN]]H[%$TK^?"K\6:O7W$:U6O+GD^#/&Q.1MI(_>U6WLV;Q^=C\N680 MO6,$[#0KO76>O,?P>1?(]WQG?=9SF/ET117[NL'SSMH_N^V)6:>8V3I?X+=( MGB8@FT9GS5>UF]RFKB]:F/=F+^D\I91 MN5-9HUU7NMX?RXRXQ%Z[T622A;YN#CG7KJSTQG^##MI<6MO#HZT-KVW=T,MM M=5JEP[1D\?UE\:9;K==*%B]9?#L2K^^0R7$GMOZQV6S_5,82]HNFM5JEMD:B M;B#"\%1RZ(TA4:O3"SZHYOJE^VK=[JM-G^M']MUN>KGK=G^U.FZUVBV=N^7I M*$_'8L92N^%V6NLVP,O3L2WL\LA.\TTO=]WY4@VWWBIC)T^=#5KM]6==;9H) M]C*X\O*6NN*CLXM+Y^R-\Q#UQ;M!O1W*TETSEMNKVJB2XTJ.*SFNY+CMR69_ M$([;\8# 7I&C=.7O23GNSEH>95[J7B5=USH-M]Y=KW=E\V0NN;OD;N+N:L?M M=->=]K-I,I?<76:;(W>W6VZK6B\=X_M.YFIEC8'STO&];\7)NT&X)^H/VKWV M*8VVVVFMN\:XY-&21]?)HPVWVUMC-+CDT6WGT=WK$E-WNZWU)CR6COC'I!], MNDS!WSV__>/7\NZL+57F6999R 6%U6Z6KM+R;)1G8RF8:ZZ[HVAY-K:%6<#N-=?'?Z[W,K2-;T'IV"J=MMQ1MM:)G26[]AL6DJ[VM(XI2" M$4XJONHBB=*;57JS]M!AVW5[[75;#26+ERR^12S>=FOU\AJ+DL7WV&===[N- M];)X&9/8)OHVVY4U>C_*F,3&8A+OCR]5)**,03Q\D_,&G/M!E/4#N1FE]>SQ MFO]O8*EK3]ETJ[4R[;P\&>7)F#L9+;?97F/?E?)@;!>W/,3!N,O-"+M_,.IU MM[7FC-HG>32>#,,T:_7*&OEE.V(PS^>LI9]3 21:\ZNZ:K.[^8;?9.=\,-=? M*"MG[>SP3Y:D_G!F,T1Q?D=12#:_2.7 7,?A#*/82<<2_B^6TIG \./$D>$ MGCGSTJ@O8Z=1]1J5>OX\O*_5KO2>N\XPCB9T2?GBK/!GM7:CTM6_PQ=$,3YS M]PDW*LXE/!A=8;NOP/$GTQC^GL D87[YNZY%X@PR&# RTTX*#_1E>BUEZ'S) M!,P@YCV+LMB91M=4IT,WKL_,%8_46>T(:=Z0R[,G9>Y@'G\92 /V(R%V[N* M!@YYUJOF_.LB M>SVK@[BM&98N<#+[^VX^?UXTF8H8OKGVT_'<8:D#G/O6D1O(@OB\XO!@5N19 M ?]SY:<^G0N]5OV.=_[@6B:I252&&3FG,?1/])##L?G+N-LTL_@ M'!Z',A[-G"/D]YB_:U9;SKM/E&KEBV2)/)\DE&T]SB?DTS&82)AG<1, M%RE=_ I'F:;-"[L8BS",PG[L#T92/3B_KN.+5\Z;0'X]@:F>2_$9'PF$E@SI M.()EJ4$39RRN),[2"S(@)"^^R-Q^8GA5LW-1.D]AL*_^!!8#F]"M5UK/\8?+ MY; FLMK"58R)2P'&K]UA)"^*82K3*$00 .ORHY@9=":!YNH]%=;@ _]*_Q?^ MHP6'%\"3"$7&ZLP;.(;G70&1:O7Y@X NC[A6"YMZT[KPBJ5-O3T_]_^R)Y]C MHP,O"J+XA0:.UJK&+%/K!)9&\J /S/GY0 SAQ2]$<"UFB5IEIU=IUK1O_X4! MG[@/3JU:J?>>.];?N!\+FSD17P^L+5/@[""0P_2%^IG^C/"F^3!*?&3W%[$, MJ'<&OSE3W.;-K?[.5@V>X\?K1C^P5C^3@H6#C)\#Z(TAAG%^KC[1@3A MWMH;$$ MC)%A+)B],I A6W<@X'^3+$A7@[<%"WOA#%R\.U(2\EFCTE[.C@?$7(JD*U@, M\*:!PL3=U9RYZ235:L!/RF['D<4$@$SA=D\'M&<(0P^R6)_6.]GIF^*PFUPV M^N;2+7#=?-(VAVWGW'R4O]&H#."LY'C<:&W@S'APLQ6@!%-A5M['/_TWTM[[^XP[X;VB.7"YEFMESL4-R8[+N>7"*M ZQ L-E:TMBI=?E;S@P"XHH;< MM'1[5M&3=AID>?(PD@'ND.W-5%CTIRS0TEJH)>>]#-X?IIJ8 MY&LAHP HH?VK]!R@]1'^:.)_Q7E/C9<(M'0$G\NOTLM2?= ]&:<"9L%FSY5Q MA3A>$"4RR@"E.X=@).$/T*WC+NB>NS"96UPA3CZ4(\$R 3W'PDL97L);T0<8 M \Z(<:2(-^@W/XBC*,WM#GU(!ID'3S$7)3C W-$"&[*3\_(-3)4L$GE!Z*]P M:[JWHVUM"Z6+",HO(J@%!S;+Z%JWT@!L0!"!96N;P$)1N-[-G[0IF;K#N\_( M#/ZGJW:_5VE^V^XW-F;UW@3&S.TM)];M+8?%VUN.S>TM&P-JB]"EULR#90JY MU+[=9EP-6_!S6R6W@/[T(<;:[J@?BF-N)1]P:[Q3U1KO/;;&VQBQ%]KTN?>+ MIH*2>=;.#;9<9PQ!"G LD(KN%FTJI4P&LD$6Q&%FI-CE:O>7](NV!US^]Z[(0L"5;HCAT.6 MI?9T0%>1?0 HI_$< 1\ZH*EP!K G7PH/*<))U5 MX[K0GC Z M!FQY>F_63_R!C\%/^-'A^1$\Y@DKE>MCY;?-ZV5 R@HU;Q PWR/BF>770;UKNVQL8,K7JE6L6Q@)V"#(=(QH!P<^5F M.\H8H:%_7 %=^YS<^-Y6[JCFUU8KS66OW3"3$"4'Z-+,6 M/TP["*)K9,_$&\M!%FC.00,*V=BPKP[VZ86&9J%WL_J='P?P+A$KVR#*$O@F M^>D%+9YS1C5\X4QU#Q^?)O*%_L->*RI[!6%0,WKP#0CI(K18U&V+V"V-]5O5 M:#7FM36TLK%TKC4VRH4A;+E&#/K?E-?^@E'8-6S K>#'?"_ZP*MP%E\B#GHH M=+H:!%D/PI?W@D3JOP_9PN&!B:",@@)D,O1X4G2@DJR2#ANG U=2EH38."%* MP;0=="@%TW;0H11,6T*(4C!M!QU*P;0==."*Z9(0&R?$;:W*2D*4)^)I$>*V M[FXE(>Y'B"WO5/WXW4(>98TK(]NKZ&R[]N^Y#5X4X(?_^T.M^L,W[DFS6:FV M-]IVLGN'3;LQ8N:'TED6?F!_?:/FZA:=:^E;^#@]*._#17O4O?Z)RH2;V)N9 M=_&_"^QLA$']6V5!K]+9; ?:[Q4%&();9WO2+5YJR1;W8HM&R18/P!:[#1R> M.4=8XB37QQI[PAO?8T?O,#\\7R\_/#6@N.EN@C>W]3O^X_C]Q_VZ0'5M-P]L MQ>UZ&VD>NG5W3,Z)Z9)52U8M6;5DU=UBU:V[]?)!6'6?>/5I$&T[NE[OI>_6 ME.RU:?SSY1T6=L !LPTB])9V]O.'&E+?M[*O?PTL6ZSL63RCY\ZGP9QWX MLUNOE?SY)/CSQCRDK>3/6J_G-JKKY<\=O\%SQRC8[E362+X-W- Y?XO,[CBM MYT#SZ2W=Q_;%P[(]-ZCMK)C9.F?@-^F.1M-M=[KE_8 E=^\C=U=K;K/7*;F[ MY.XM=[1^"W6!>U.KT@OVFM]&JMUZNUZ0/^R#[=32]WW;'49LWMK-WL*$_' MMK!+>3J^2]M7NVZGTRM/1WDZUN%*W_1RUYWIUZB[O7J[#*D\<3YH=2K5,N2R M R&7E[>4'!^=75PZ9V^#^[>BR3T6KOCUGOKE=U;P-XEG>>CYZW*&L,?I>=[W^J6=X-P3]0AM'NM M56JUCMMMK#?@6C)IR:1K9=)NUVTUUEU$7/+H%O/H[G60J?< GJ\WK:OTQ3\F M 1N-'6\!]$1]]X]?Y;NSYE29;%FF(EL2K^/VNF6:?GDVRK.Q[&QT&^NN*B[/ MQK8P2YF<_5T^H];:RY$W?31*'KBON5OFY^]6E$(5+1]%2>I$0R=><_'R;E"J M[)CQ1+K"M)I=MU%?=Y5ER>0EDV\1DS=:-;>U]M;!)9/O,)/O7W><6J_M=EKE MW0K[2^%6>_VVQ&X(L1T+O+R\I=;WY,/9Q85S_N'LS>GE/ETQO#U^LYV56GN1 M8-YKN(W.NE.E-DWEDKE+YB8MW''K:[[":O-4+IF[3*HG2[GMUCKK#75O 7>7 M9)ZOG6BLOY7JIHF\EU$)&/-"!@&\P75&,I2Q"!P1#APQF/BAGZ2Q2/TKZVYWS2Q>QB.VB;ZU1EDQL5'?Z[W MGK2-;T'IVBK]M@B]ZFZKLV[LM6DJE\Q=,C?Y;6MNKU46!Y7,O8_>ZF;5;=?* M6YGWGF?]/7 W3>5]#4J<4CC"2<5772=1NK-*=]8>>FQK7;?9+5VV)8_O M,X_7U@ZP2A[?:1[?/[=UV^VVUVY#E/3=&OJV>N4%&GL1E7A_?*EB$644XN&[ MGS?@W ^BK!_(S2BM9X]W*\ &EKKVOK)NM5=>,5R>C/)DS!=E5-U&LSP9Y.3,2Z.^C#&+ #1IO>EJ%=Z^0_@?:U.I?K<=89Q-*&+R1=GA;]K M5KN5KOX=OB&*\9D[3[A1<2[AN>@*6WD%CC^9QO#W!"8)\\M?=2T29Y!))XW, MM)/" _A"'" =QY)6%&6QF@[RE9/($0Z:N Z,E&\##('3Y&=$'UY=<39$^8(H MX''P[Q=^"@-X+Y>PZWD$Q';4_?$SY\+<5IE+BL=?!E+3YA#"S*%?]+,$."=)>(R3\POJ\G9X?N0:^@^<_LQI=P#M$;L^J_5ZE4;. MP< ISYJ]=J5FF-/F259"-Y\D+YI,10S?7/OIN,CU=1BX^XT#-Y #\7$\5'35 M*(XAX'^N_-0GMM8+U ._\P?7,DF=BR@0,>W$*Y&F$K;R/([^D1ZR-3YW&6>3 M?@:GX#B4\6CF'"&3Q_Q=L]IRWGV:&TK]G(;$A]Y&&6!5$0KG[?L3YXWP"+7R M$37BPCYV?9E>2QDZ4^";:,#G%#8M]>$LSF"KAHE,D4X#J=>T:M4B22+/)P%# M^XW3.P0MB93@?@.OYPN62]A[S'173JE?8Z1FM4-B@TIC%L#K#T M(/9!&>A9^V8WT6*J=5XFW[(NE]7B3:=.B:H;^.6F,V9X:24[\M;^//"O]'_A M/WJCO4"*&(';6.V1 :^X/PJV5:O/'P2B>K0"39QZT[K[BZF#_4"*<_\O>_(Y MDCSPHB"*7VB8;:UJS(JK3M!R) _Z( T^'X@AO/B%"*[%+%&K[/0JS9J.<+PP M4!WWP:E5*_7><\?Z&_=C83,GXNN!M64*RAX$>_X9SA+W^:V[2YW<]-"[/W^-&*X1^,Y1\ C"D8!HK/.;)%S':B,D3' M?C[C@E"\!SS#H2X_S(.R9XU&I5ZP)<"XZ#QG3%9K-'/+Y#Z*SL Q&*4 QFK5 M6J7UO6!,3$" I33@T)?!(-^%VV':1 IXVVB8(>:90T3N+7 HR:9HH^#&7B'> M#9RA .7#%]([UU'\>7[$BO/F?NB %6"Z#+$L RH@V^ \TP^;E>X=8(47Q?#C M:13BL_'N2*$B.$"YZ5\X/P?$7(JD*UC,77 E5"O-PN%O5NK:CY"?-/LJ40?T4PA# M#[)8"YB[^ TVQ6 W>9#T+:E;X$GZI*THVW"[W4"XOV5\5PBNT;=YOS=WI:PC M@B2R58D2?/C#+QF(43 +R/1*)/TV4?S;:G9SRY\DU[-&"Q#:[3Q]![F)HDVB MU >S;4X3SC%^T<+#R\F>;\J>>G/O0WPM<^>=*)()L'V"/K-HZ*>+ZWS6:]CG M?8FGL3@ S ,-#C "%L>J-8T=:ZN4I4Q;5(-W6&3C>Q;9ZMB(YGL76;W[(E'H MKQIZ\:1HKF9;&MA,.TWI[(%I.\)73?RO^'[CW$!FA]>G,: ;)YU-\;V' -)1 M%R)P<>.6P>/'*L;EX96.X9Q$?-#J6LY[A0?V;+<;5V _MW5"J])C9NC@ M'W<3^'-":1O9@'O:G:J>=N^QI]W&:+W07^\^8HXTT;-:IU)=U.Q#$ 0<'Z1: MN44#12&-""$@&.XI"P,=3HQ2/![&T)E32R@M\E M2S[['0"\BQZ',?Q0*E_Y#&;*G(A3AD=0FP;$8H "/)&,6=OC'_)+YE^) (U# M_:Y-,=SWT+'!=%P*T!Z4C#T[PK[,RT-D]6-Y -(Q3(8P9= EV8!@#EG*C9P/ MX&$!+_&\+(XI/#^@91DHI*8T]&.PF90QA&.\\1,/)KENM?UMHD%5EEZ*KX^K M =#:)3C,F^6\:K[5Y]A+LVD)RS!Q!0.'(X9#%N3P>T)%D$ ]:SQ%R MPI'-'S1/#'SX#$-@VF>2I"+-T@A0S5 .2/<61JL])YR?HWZ%^ '+8UX0?)"% M0W$5Q93F &Q.ZQBH5Q,OXAOLJ!9KPR> ME<&S)Q4\*T@_6U UVICU8.PUTKVW24%,@[F#&%PJ_[(0]>(R.\>FW(I"*D3_W(*Y+8_,,H$8:F*=O!V([F4@EE0*L]:S3S?B[/" M&I5>#<<";@HR'"(9 X#.=1N[LDDO*BP8@+FO<+2MU&Y\+QS?1O&]M4JKNN2] M&V82HN0 ,26Y-^94SORW8.W+%Z"99(Q_+7S-<36R8>&M;WTP)P8@7PF['HDI M!MR<#S(!*I./A6#&/!-LD%,/4VLV-.E?10C >L;XL,BFMC&VRHK2[H9:IS4? MCJCU"E9FT6^PS)NL \3,758NKVV\D) "#ARR#8 \NTG7'9Z0_$S0YF RKS]@ M09J?<"N(?F]KO6[93!7G#$AC'.9EO;%=81X3' MZAUD M6VM4F\I)XLZ1CAG>;,$*6_)9NYTC7G8^PV @:U#)S$7LV#$?^(( C$I6>];M M6=[MFZ;@+@\'X#)9ZVI-"/P#CTS'BN]69LK!I&2<"I@<)N;J,,)BEJB2KWT? MC>Y K<3\O<\3K68BAFG7>/]S9X79]+L;+)$QC8;UBDHKC=WA\SO_J*I+_"8 M!@'/UAPS>Z-% O:[-M"+ 834_@VFT9#?POI!T_(KVG/44G#EO.9VS]XGP# 2 M1 QNU>*N=%NVQELF2K+DANUP36;] GA:FN^[9(!^EG+@UG(T+8G:;"Q>__H> M605*VNM4U#EF(AS*?J(Y,7:MG'AXIL"DA3?J8WKT&G@Y2;(<3+X2X6=W"25K MG9QW*LXGB81#U5&MYMYKE]'JT'J)RS41."D<5%P)/T!>.0!A>) (*GWP](3P M2/L\>QCD8^4"V Z)G,%BPRA5H1#!WX"B1WF$X%KV4SW,C.9&!.<)-BQE!U,9 M F!0Q1<3$!'DZ59@@$Z8#_R"CT9](!]G.<&O4&9A0KKDI-JIE:']K)5[]G+; M 0@S%JH\ )X&9DQ!E4XQU99%-*CE*7KS-L9W]T'"UX;:'4OB:/TQ]$, 'T66 MHY2[(*-(PK.:38/,KAP &4L)7I1E,BO]GG+L]"8S M=E4AN,D$(V=IY'U&(B09;C@\C12GQ^S? 6%&L9@LB/9*.,O7;2?)Z*6JAUS4SRXG:*+1BLNZ>'>T*8Q8 -P&ACF4_LA[ M;"'M6X"V2)3,8Z-0X &3,TP%^ Q\03*(MF^B4HS\-&%]H)5^;F]0 MM ?D*,(M.^$*M0B=JT%DOC>P[#B+(W6>[%$)59VBF@XYPJ"?GZ+_$?B!#+W1 MJE]J1P?^K=)6-7)4JT"N90<)0',5TLFC*FKI1D.IG>?C[:O2&E28JZDA5BDE MEP'V0IW-LT;#3FY<;H2ZM,L>&/Z)/_0E841M6S'#;$R)G +'H#,7SS^PN)\J MN0Z*(%,1^!#@89(@7"&(32L,C#&.4I".E4K])%TSC+R,<#P>"?,L.2XPX]C2 MV014A,H%TG*>CJ,)&3K? + *[YU/'K=K]C!CO-ZM67$R$K_/ZLWF EE7F.\+ MX#9:;C1J/+LJDF>ITJ(*)>$.NTHU8B#$%6-2H@B%=_&%0_\K,18.*+PO6&:G M$TR J]G+E*=/$T/FT9L@NN:@KAIL8?OPZ"0JJ=\<.-[JG"GF2$OO@*.%WLU_ M.$RJD/M5A(YD])5S5%+H,%%AN)72^='T"P:.0^>=F.'%KCF2 KWL96S[X(N. M0%#[J7.HI7=1AFKY P)-(BJ0#.2/OTY]%/#S/R9ZB@GQMLN[@[K(O#+B^=1: M.)]:1WL+:"SUG++ 5H,<\&<&A467@^/!DA\UM(AG[5WB]U(BAE0JE(>^7T M@F*TUQC+!ATB&,UIDL_2=HG9G+:[$GURL:JLHP4WD4%O6>Y013$2(MH#8!ZS\6G* M>M"5)X=D**BGEZF7BO,FBW$2[KQ*(O6)QB.H"&-FCR* 0]IV$4)O&2[8U'BC!3.5&$@.4[5[M#U*>266]L+<+;*# MQR(8*I4,+T9M9IEIPND#7D4=AI4K8:IM9&<$F!&F)N7<_A^I[Y5"(GMK4\&5 M:"297JM(JHMK%DFCO=8K5XTH$'T0P%0H;C%I3L:JS%)Y-9$J]>I+]5+5%<(' MZ$]?U%X2D%GX5FMIP! )Z"ID61@?XR5X#D(1JLH#="VS=0B\*[(@):[7T"0? MSM0LPAZRX4/J'NP/F0"@E:K"<: "%HHG"4CDC$G;Q$-;0&!>)Z_>XMQ4R36Z M&EWOM($R^G4+5-'O*_ 9P2UXF4 B# /Y50ES7 @PE*#*#61T-?T8$7>L?62( M>,",1^#F:Y-!YM%US(;>(K>/'6TM"I^!/R";A&PIW!8C2-'\2 %N,A"FJ/1* M6M'XJR%\L>YCJ5NJZ):SW[PH@)3T>% VY3[XI*Q2$.B#D9+HY(]"QE+\ MJ1C0B%[E(H/CS^)3F:_&!1V#X!@QW[$)4Q#<:$!0\Z:$Z*BXE!W2MMWKHOV, M+C \PR@3BEYI] K#"OTA6,#4"LK*?TZ N7$BR1)PKK*CTQN-*YI2PJK"/H*D M^=1)U$.KA9/A8*162@?1"KL?2.51@Z^D /VFOE.)NOCU#3/*#7B"!G>4DFSF MQ+9\I4V>$YTS[?ZEEM\+OO7 M@:QH%WD*,="63-"U\2]]X%H0Q27IQ-L51U1:XJ37,KC2Y643R$?*\VJRM%L.D)= M,R3MR_P4HO>K3P_CSB)OQ(5$JS[7IE!,42NI5<@A(7\A515H"(>24#OO%^7D MCWBHT>/&.0$J]H>"-AK^A)0SGD[S:FMJ():RF'WB^,[ 9[J%&OBA=SDTG=], MQAY)WU/UH2[>8E$M\K4,3,3Q.LH"5D%]&PJ39Q2_Z:/C&4\HH6R8"[ ";T:J)F3])2V0.N8%.%S:Z MTDD'.GL#O>)Y"*;BO(_(%Z3YPM2\JJW1'+\Q#7U#7-!*U+>ZDRQ3V5F8P'(3 MBEW@@I"?K?VU0E*L5LA?KW:%5(-U6C@C9"Z*@NF-?9V:<-.4;:24HVXFL'FS MDK]^\KD0QKXF:(%"*9]OL399N^"!!Q'HXO=V=9,YK7:8G-+&ZE9SRXV#,8J$ M&Y-#6!##R*.E+DC"!7I#C#,RFVH3U79G6O%\*UIG5,< O?@1Y4=@#AA\A](C MM#B.\J +&3T@67*KL5";I,+=>2E2?8,Z'M!IA#.D##EU3)7QJ>MJ5 [[LK:)45)8+[G7K2JQ?%.$7?2VK.>!%8?3 MJ2@Z3R=?B_+0W#L,J&?!56WHF2]D$ME*1:D/FQ-Y%ACGA_61M1'XGW'6[/^1 M[ *25R+(J/: ^#\+V9. L50D,,NA D'GXM7T+NR(8.KO,O(Y;$Z"]('!$)G3 M.FF38+/& A6Z"':"T*=I=!CG;D7=?1>;I M-:S"4STT&8ZT85:"@,M\JI)S0%\0%1,K+8 ! OYXN1]&KP.XYPM1%^DI,1T( M?J)01"[J0DK:T>2+,&8CZ36*E'@\U(\44ZID"MO^Y&"KB9PB5L7-MBNX==Y* M,L:IP)1DF&2JYR2-B0:(9P!J7U>!BRG8:2IK?C7JMM5YCL!)BARKS![E5[:3 M=G-;8"Z*;W4=HR*,/'V#B).G%,S%C'>XB66C5D:IRBC5DXI2_1)=@ZJ@?@"S M@CA30MGRQ[D%**#MRRS$A-I0ZE9=2K]8GA.77 S:F,I(M\8"DR*MD#L+^'0, MQVLT7G 4D#8! ?8S#*\@5ZY;R'Q$'Y= 0Q]]L<8/P$HMRMY?=VCYZYP?5>SG^-7I MY>M#%>_Y:;/=7;A;/RH_S/&@L,@$/2 ,6P$@1=>.W?50^VOR!$5>C"FVL M5FK6@_#EO52<^N]WWNO3ZFR0"@KE%72@(Y0/M6M+HMOH\'!8,/['E;16G;W+WG M/H"%A!_^[P^M'[YU3QH/O2G=.^S)3;U[+LD$?<>6YS%9GL4KU$M&+QG]SHQ> MO "U-OWJD#OH,>X__=Z#H/PMIHA/WQ9;GH7M/PLWT97IN/C?(F7M0U#_UD-0 MJU;:S9T^!(7.6 ]J@6U\J8_,%_5=YXO&=XO"35_\_-Z47E,VL&ZPMS8IN.GU M/;[T9^M^T^M^MH:5D-]N PM9\X7M]:Y;K577J=X;FZ=OR=??Z_;9?<9NN\,Y-Z*$_BHB]3P;SVZ9,?.5]?MM;MKUALEBVXQB]X<#=A* M'FV[-;S3X/MUP*85NYWY5%H?.X[2UJLV=A^I-1N-TOXH.7L?C9!F=RWJYU&) M6$BJI0O=4KR,E=J?4[^%TB*YUYGVYL/:*\V9DK^+"FCO&7P' M;2&NB"BMH/5CQ2*[-X#=!U&&>G\C9_DA@S0;7^F:3W:CX[:JBU"SM*+*DW%? M"VOC2UWST:C5W5IW,3;[W'5W7ML]U(6W>T<@Y=%=V71 M77D6'D+8ET5WNQ"H+HONRJ*[LNAN2\-:.QBUVHN,UU;3K?;*HKN2K_ M=1O-%<'6+0;D9=7=TRQIVKVJNUK7;7;K99[JT^'1'2R[J]7<=JV]#[FF9=W= M'@&ULNYN[IBZC<[B*2V-D"?.V_MAB=3<5GWWVG^4M7=E;=*3K+VK]]9= UXR M^ XS^!X6W]5[:U%'FP8:9?5=66-45M\5CW:GZ=:;M=*2*D]&67TW7YC:<#N= M%8IORZKO-G]'LKKKST\E"%?*\B76*)EF.C;UB=X M&Z]]4VXX*MS(BS(/'5T[S+EIR^FQNL[/;QR$,>:R'0<#7#N?$K#NW1QO)\BX6%"S#.:RQ1G63<]JQ-P MRTSSF^V!!X)LP(^KVZ\'&-4=%._!5G>Q$O?"!_D=]/I"6+ZH7.WG()*\H_K* M:2 J9B>IZSOGKP;'&SL'?N+%DJZ6C8FKB(_\Q6$*1,)W"A98>$!PX/S"=+HC M_ $N@5UDJHZ@<^'SU=;R1<]LXC" QU$^J!BO3WLOMH:F?+SA=^K:WUA M;OB#90+'J+9E0VZC+@8AXI]B3(41[X"*10!F."KM.T]2Q6C:LF/K(Y,'1$"41R"$_'\V,LF ML"P8,UF0YP /\>YK4#WT#8,.E) 3\1DGGW.UZ$<9;YH'W#W#+Z]$D,G;*92+ M?Y2N,,D!2=8I B*4SP1K:($);(V'%W8? F*Q^%V0H$T1/\!9(87&S,\_GC]- M<_Q%.P^*D@F!VTSZX?>C<*$5R(&9LT&XF0#(X8GOZ)GZ;2Z(=^).(! M74GN VI"B/(XR,, UUQR%>&=68\E"A47P_]Z$0@?#FZ$3A"%HP.\[YH&(_R( MW^"IBA%BOK2QG&'TE^; V )+GP*@1X0@$EY,6SA_G;P7"'^2H$ -Y A^";L- M,TB4_)W@U?&&2DJ($X\C8Z.QI?<_?[>NCZ1IV1#&P!?@LQ!/G*"R+10A69*H M _I]9O88J&,^.+5J MI=Y[[EA_XWXL;"8V4+&VK- @1?VLV"-%?WA+*:VB##8[;FYG M+MJ* UAV_D*U%?F'Q3UY9@^QX'/" M!9^2)(;Y(Z PF&B]^7 WZ%'SZ Q;&X?9NQ.#Y(%&6P*Z>@RV'%MN$11R'\[3%2 MVZ#Y<0&:_WT$(+)F3 N/?#TA(:1[V+?&+M4Z*$2US!O@\P;8#%'8 &8"X?B# M__WA[V&[WJVVVXV_NUVO]W>S76__W6TUAW_W:ZV&'/9;C4ZWCG)6;))M?OC_ M3B^/WZEBT8KS_[=WY<^)(\GZ]_=75#CVO6?OPS(ZN.R9CL 8=]/M:P#/;.\O M1$DJ@;:%1.OP,7_]RZR20!AHL,UM;<1.&]!159GYU9>9595_W%=OVHUVM=WX MLTZJ-Q?XQ57R^:+1JEW=MNZ;]1:IGM_>M\EUM?FMWB;-1NO;!F7?$ ;L8MS& M05KJ!YP&ZE$ RAT$(D@QE7D &CPCKXE=2<[%[.#'&#FS'(S;Q==CQ :G=2"B MQ$I;&$5 =&%M@:)$/E-IX!E(C?DVN??FL 7@;3*@<,EC/%)Q=8"3J5P"4 M%@..W,7BT@0I"D[Z!!?Q,1^1:&*#WR3+Q_-&?LV8 M_QE$X+:)R[EWA2,.S8*O0 ."@2()PJPR* MP;"Q!A$\K,2/4(:@#UQ=3=#29T[6A3PCUZ(/ .+H>0X#P<,(G^CON :,>:7" MQ7J(@P,^2YX?SY"!T6-FY. X@[/[@/XQ'X,^-7I@:/[ST-<<(!H2SC5%G#CB MC4R:[3W"U? *:*Z'P4&&1F6@USR:CL68PM,=D "&I,'9!?_$1M_9IX_#:9S; M1!\&FF,WO"3]?N$%4=OA\0@?GIT*&WIZ2&T$]]C;Q9"0R\.'S%Q6N*;R2F.8 M=; +_II.AEG\?R*\,Y?@Q!-B34R':%5RZ2P8,_YTQ&0^KY+()8:IB>Y[5 3 M7IK=RW>!"0J$W]EZ0);-$=&].$U.1I0 0(43,!/<5!(BLD30:.I?E1Y M+.=:]!*A+X&\>!C'R6_:&XDYAB*K%8N6Y4[>,)%C6#*PC6*QDPM3B_N&O>UNH72"DV2"!^V?8Z1M>&ZTU3\4V.J)XC4!.@ MS0!P!*%*V!%R&^'LZH)/CE"4&X6K1 3;'M#TE ;XR2PP$F9$(IQM63!/^"*& MS'\;,=7XMQP -6\82^?]X&9D/,ESY[>6'%)T9N#QPB-K KX'0E2R2H_EPB$[ M$A_Q/KE@IK\:!3=;T')?<)=Z0GFJB/06D2NJ1@Y34WSZ@EC?CXYP&H2+)Y'F M>CB(273L;Q;/E!BZFM&M7 R$@(2DYST"27 <]-E '7#*Q3 FYX#,S/&8/]SY M8)N8_.4AR6'X%J.7OD@+(TL 43S$,&G#G)ND'^)0^DC>XZDKX&"L0[BL^Q0T$_D:SU[P-.2'L K-FB6TI%SBMZ-)R9/-J:S"VK" M= GDWJJ@G)H*6H;2RL7/YX0)O:_;_!8CBR>%$5F- S&/5A,$]NF M33D7PW0S)L]^N,"PQ%0[0J"13\&U[2V(@TLI' ?,"7N(?@5T+>"NC,^ZU#?% M2HAXM%.2C<D'M=C\>B)V6C4-;T@MF1U7*YH^FZVJ%YU>HP6K%* MQ0JS=,O8 F9S5VVVDY#EDAG,>ZD6;\[L2V8'=QX9C^)PG1VPV.$662R>;>9I+ [A#']#[SM$J!1+:&R7+V/1D^DS#<2C MM2K):AX$OER*?? X3YPTBSW<^#4P(0#EP$0K;Q@=0;V8RE)^^<(K;]+V42A8 M1:U8*G5*"M4Z6IF6.Q45_J)YJJD:!?I?-+? /MZMCE701XPODLMJK7W;7*LJ MOLZ_YEYJ$LJ98!DO7;F=35JJ6=(R2UIN,&D9XU])4PLEO< __)R1RL ].FT M4.[HILR,$KA?!<;V /\4@+_[FV;]X8N0#[@H.$/2HST8+K3&!@@;B&3\2EP.\?#>)(O)' #1U M>_&RY;Y8WNW^$$NDQ7);D209^/8#P+SS?.RRKA>*]3(A.)@!->)+>)80>T62 M)@5C88X6-@[Q/FGPG4/=)-XAH=> ;((OR7&3E +O%&]_JJ/IUPI683(^3MZP M:_B$A!"E%AWF1.S!X!1&\"#NWX%[QF,,W%,;K;&+,P*>/\ \\&@%4[)(IS&Y MM#AV:(':3^Y>)KXULKI8CE:$*^?% MS[DIFC A_\3Q\2DG8[H#\Q+&6A.W7$=_>IH>6+;?'R544EI!J%C':'#G+&9O M.NM1QQKK)1BOR7#1%G?FA!6P^-Z#44 9#0P-+87.R ' M MBB,X76IIIH7K+B7SP3NJ+BDE*2]G59U?*X>V"T*1,$%LA MB,PBMD402B:(K1"$+&F;+)"822+#IFT31$FJ%#-);(,D,I/8&D%DY2JW0A 5 MJ91)8HF2>,U!6'/#&NOKF2J\7K56$(9 M)T4J5K9Y1#(]V1R$S',J-CT*F6YL!88HLJ2N=D3>6^JM.ACXWA/?L44N,/_D MO[WP6\:H=E[E,T:5J4;&J#(]V4-&]=Z9LNWA^90W?$ M"YY(D;&HC\JBSEE*&X8;"WWF3L$ M@A%ML/YA>8(P_7) ^*;#73&(!<0O=C1/_G=II&?#HEV"0SC:XOKA!+\TQK/K M6D#NJ/WAI/\NDK/#$I\SZ^V_X)=&;798"0[%2B-^VEN[YT4!=-J)<]+\DCGIOMOANA=F+4-395G+*97BKN68-RWJ.0?8 M;"N^SCON92M5M*))%253T"W+;JY"TOS 2V7G%KQL6M9SCN?85C":=YC%5JKH M\IC=I@E[==EE1)+F0J?;JXI-[ M!H4KHJL?4&.R".:VZ?8N1C"'-76*@\46V>_*6I))75WIPD 5@-GT(JP\L*/( M+"M 4Y5*%DC8]JCF!CJY\1CHIJ;8W<6H::L8=Q^D5I+^WG?K77^L-XR"VS+ MFE9Q@OA75>%X&5>X)=ZN.$BV*\:%L."6?_ 3:(0E8&#IQ M,39>7]8S>'59,UW#F0^'1*:-SF0EY[&QP5CH.T=&1)VV>VA64GYY*:8:M#94/NJ!8M616FZ&4Y#Z];7MG*V597?FLE2U4BXH^+ M^F7U_JK=(O=WMS>D5;]IW#93!2E76P\;_U_0>+MO/)>E![F4UTW+4)2.JJAZ M1\L76*>LFJQ3@$97*KJIJ[JUU$%^[XB^K3:H)A%RW;BIDU;ULM[^3BX:K=K5 M;>N^N=:A#TEU6&1R3-,563&-BMHIZ*CNY24M+0N0 M&O_E=]>\_@"+F!_2@)C,XN4J :Y%"<\B/98/K:/1^26D_B3J79.J$1Z1W^PG MH(+N3=2'%AN$5V]\"IO,^OT &LB+37;*';F##>FTO8Z<[ZCQIVZI?_7UFOWY M[[SR\TFN?_/R?SU>_G% 1)7*WP_L)QQQSV'4M:@3L /BTCX,(3/,4VP5 MJ[Y?-3VY^!K<1U^^/FJ#<\-I?^\>?*+BZM]. MQAK^"<=E0WT!U)K?G2_/T55T^^V[G/_V\TN#-92:X>J/!Y]$@5$ZK4L2@ M 0+49R6 M?[/. K:R+,F;++.S: ';Q0L+]:%%3E*B!_R-[2O/6X N\9+<"!:G_"^LJ7R8 MSQW#3T=O[OE(JN6B5-IDK<,W2_4U.;=8=5\DVB4$BHVEVE^]W;?^U /?+Q1P M=>-)"Z;I7J7D*XMWOVD?_X26;EZ BXNK;8?..P[BFXNV:U%(59)W0,66'XM^ M!3ZNHC\T>>9QP(QC$)%/C?"4"0 X2[_H?WY&7G@V]W7BLK,#TO.1LO;"N5XX)U 4H$8.V,GX<9?'7RJH9S L\1" M*T!!&Z[A^0-/$'!.5X$Z-OQ+(=>"Q\51WXM@/?H1LL M5Y $QSI&=]SPE+B@H?*_"-*FLG1EDMRQI[>E ?E749_?FS0Q^# MA4U:68Y)%]"D\_MCTG(^F\PSF^8V72B4U5)>T?+Y:Y)J/&MC7J[)@I!;.!BI0PT>F"(UGYE@W-6NS_@7.6+R:[!@ M"$:?10R:]CVW2ZI^EP(9 &X@\0<:H [4AGY$>F";-O5MD9=,7<>I W@7OO?( M_"#';SNG[@]^&8^7T1RYD:KB0L06A_%@]:&=Z.'*AVH1\$,;_P7ZU3"3":/Y M O[*:?3#$4VB^ON$?1F?R;!O(>Q;&ZVYI@$FU!I!$%%7K&H ,#)9WP693X>Z M4;I-9^$C8T!60@//;-M)=EV_]KK!S]<)<%9AT\ M_S2)C:5Z%4=R%8X"778L K;4@A>?4N>1/@=Q+TL521N>?GPZC*_A.'!Y5?Z; MI/X>!6I3[<&41FK(QE(6\6WC68ODRSF1XU@R&"Y69*FX(L&\'Y_G*Q 7Y/S !O//HK \/2P+WLE28".J_D,=$#DE\ M->.%P[325J>\=HNHJ!E1R8C*(D1%71=1^1Q1G(D9#[G>T6?ND9*50EAE]2[R_L7?"ED MH)&!QB*@L;;@RZM XX(^V";Y(I&_:!C@1I*E0,9[@QW[#1G%##(RR%@$,M;F M!KT*,FH]ZCL,H[&.8[L!:?RY)-1XKV.RQZBARCN1X7[[^L?] H/$E.6\*H,I MJ_(FEI'A[@7/ G.UF05FQHR(6^BMV+Z4(X/(Q_1,B%:'NRF$\&25'LO:H7$D M/HXV+K7@ ;X=8H8YO8<)7R%75&V/+&T7\JF9I-:,NGJP]A M1')>EAHWK4>#>O'S&28Z=_&HFOYH>O-#U M0D(' T9]W):-%S907E1$%RYH2$%C'49T9M H@,>$ >%O"VDW('C&#D8 3%QQ MBZ?D#)_AV"X3%R;ODW8\72E+K=J73&67U9RJQ)96K4,9)3)*YL]X=. [;S"G15/<\4:*4*=$5UYNR/PMPU MZYG"K%1A[GP6P."_ )J=9S<7]RX82 M)KA#@>1)?K011OQW.8HTOE6CG)BX[8(EX%Z1\B^-Q[2#@4.?3VTNV&/=\8P? M8P_ >^*A*XO;A4W]<_YCXMO4]&UM5."Q<)H=@ [BD7-6Y+MVT(LWIP4]ZCA< MBW54>4!;&%CX32Q9H $8@!^*@R3A"3Y?V[#,PW??-ZRO.Y)7*R@EHZRQCD$K M##[IK*,K)=K1Y'*A;*H5JI97=B3OQ"3PFI/R6HW/-]7V"HY[?IF"MB ME,]^1K:?G-)H+9(7S+U8.T-Z>,9AY#P3#HYF6LGP-:"2 ;1-K)U!Y-09J*N% M*W3P03P?*2[@3_99Y,)=_($ !CW/AXZ:TCZ?"ZA5I,I,5D#R4GEL\^+6GB>W M2$\E>6;UX/WJ:&$O1/H:3OY*+5Z/DP2@@#/([P?*P=P.%(! E6=V0)9*E97W MX)<32+7YN7J3$YULW-2DMQ^-M^>BVD0'=FOX+Y@A5K 6%J[/_%807T'KSY]/ MWWP.9@S,;ST'>Z;(N=LA=,6 7T^"DY?;*7X[L?<)";9> =^N=YNT M^9S[Y$\LB#CE/;M:R921# MF4IM=YL75*DD1[>"5K=]1H/(GT"?/2]?NQ2:G35C"YNQF\=\%I9YS&EZ>#/GBV.>-PT%$.1O?,9_BG%_:=3_\/4$L#!!0 ( M .N!A5F=5@;\_!8 ,47 7 86=X+3(P,C0Q,#,Q>#$P<3 P,2YJ<&>= M6'DXE'^T?VU9RSHH,2VD"-E^RC9%$6)^*++.SU*6278I8Z;(TLA>A$*62#'9 MDV6L(R3$&$LU!MG&9,8ZF.5.][GK\]P_[KWG_9[O'^\Y[_NX(] M XA9FEF8 5S< ,#%N0#V-& *\'!S_UD/B%^_@,"(D(B(L)" MPL('#TF('3PD?DA86$Q:3%Q2"@0"B8C*R$I+R4I(@:3^O(2+A_,,+Y\@'Y^@ MU$'A@U+_9V*W ^("P 5@E8?K!, MSL4CSL7N!L <._FX_I6 ?R,N;HZ-!_@% M!(6$.0KU8@ W%P\/-R_/'ZLYTFB.'. 5YY,XKGGI@*2M!_^)8"FM1^FO!4Z: M5'> [$:HBMJ>(3&"0M(RLH>/*)U2/GU&14?W+[WS%_1-+U\Q,[]J86E__8:# MXTTG9R_O6[=]?/W\0\/"(^Y%WG\0^S@N/B'Q"3HC\]GSK.P7.;E%Q26E;\K* MWU;4U-;5-S1^;/K4V=7=@^O]W-?_;70,/TZ8F)PBS<[-_UI87%I>H:UO;&YM M[]!W]_[@X@)XN/Z=_D=U+:C@CQ#1H2D%75(2K0_T/X5V?\.6,S_"]E_ /M/7%. M" \7Y^/QB ,0@&E?93]KW@,59)R@KDXM)FU-&_%?2PS5_?[H'OB*_,W]0W#5 MN5Y:M_ M,(TZB/[+$RU]6*Q;/TA@\>T%C('D"](Y4+E]S]#SZQG)>^J470WRVWFO#94+ M46\JF(V!2@M#C2WWV0"?P.BFF_2.XS!"P^AG9B#7Q_V[I9H//T6H2KS3,_2* M&!U$],(Y6N_&9_%'71E:U4VCC1[7G(M[U8GN7AZY])T.437Q-B#\5)J8,\J@9OH0*V??UDSC5-*!.^@]K:6?]5I MBS2#;OC<='(H5?YMDUPJ=[_'&)7?]@IZ*,7@7+$#RCGI&:QS)M-ADX[5WG*< M03% $!*X)XD$4A>7QWQ!+S&T;O;L:)?AL!M7>0)C8;OR;Z-(;'*@"Y44? M5DR.5>49CM$G;'A4T*&=IV67?VI*BGBK]22]9:J2U^C*1 JA'*% 2WE%W<<= M&5WYR3=VRR7*I3EF2 K;6YD[C;U5L>:>8F9_ ;RD7G+.--9<.UN#*:YD5=[M7$Q+67[A?E<>Z/. MCY!HNGUW =5A"(@T[W;<.X29P4I,^F]+UE<.ECQ1H/^RCRG+;\)4L\"1%6P MASS_O'D$6]H^JS(BY^+4;;E+0Y,I83 +ZU+ MT'-G.1OPAQE[;" F&1Y 4\994"M4'TE%_)3/O!$^=.!^Z;G.JVS 6[%@YP&*]$,+\6R&< M?#X,;@4GGQRAY)3*?5SB40V=>*[[2YQA0K>B8:P?^X_>5/OZ/;K@.L3GX^,= MX5-FJ!DU6,&"+LE*WIY,=WS2:=E73LR5L!JX$;;VR=IH!Z(_Z*^;^(ZRK%_G MC:>T*#YO)(9FX=F +RK>_5SLW5924E["R0RJV7RTW#%" 3S_%%T[Z'"E MH=I[_E4)#KWDW[VFW/=JP693+M:G:C$BIB M^Q2VEO:P.",YBQ^BCQ#R'H4B__CK):ICC L;3,!OD/5#KI$N#OBPMRV.LWE- ME-7;BJ9JHY+!T54G.']WF3ISA#TKE^HQ:[SV@8RX;NH]?@1U%'C.E-I+ :(:]=@!K:C4ETU+6]'[5SZ$#:[\/IM/8 +=9%7E[,!=Z% X19DDZ M-VG,5CXPR-NT_UQ=SURMW/Q\$5F_X8ZC-]I$G5I;QQ= 42&+LPUYLX'B#"7Z MLM>LM?OA]PS3-_ZTE7N:$.)WUZOM;*#E/4J?E6RHB7&)+.O*=:_V.3$ 1P7( M?[%I/>QFR@W19_AS8K4!H03E9@T[&)^H;11;_GEB]!LTS>-R->.I<0D 7T/1 M3^GU0.A.J!I40N5BWN"8H8%B[MG="\?,8V58)K[DY=J2ZDB5\Q,:RAMLX-13 MOZB:8)]F,DR>=30R\/K'T?! A=[CV;DEFE9R#[1JN<_H0E.(HCH! M7J;?, B?XDOEU*=T8R"E)'87)(4RH0UW1QU;RSQ#J MV(#H\@Q%YDA<9^?[:!GE!>.N4Q_9@!!K#"; N%,K#Y[52+B+*&A3Q%Z]B90 M*4:A&<_I.7-,Z'8*QXYX>I0)36?=+3)DH"=BRJ@A.VCRB9K7JTLFK5HDFS4[ M7*LJ2UB#I*;:52#6)N<_%?Y4^I[CI_ Q&87+'KQ)(NDO.G#:J;H)W^K*,DVG M[%[;07/]6O]R0WINIPQ6):PLQ,ZV2O8XK \5D8\@JWFM&RSNJ&>$FRY92G!A M#&F.%!@UJD._=CF7T!W _94I!^_8KCYY?#,@9RHZ&0&A*71=IRHS)(M-QMM$ MZ':+700%=9?[B,M3JM9G*QXYR>.LM-Z)A:8\>H>AFYT(V'TY,Q:5'YSS_7[ 6[KF?"\[*FE%=V5%^M1I-( MT,-+Q@;#L^,(@_=.\ ?7FP3O>^@/'CY9_KUDW2"EJ*F4SDD2@_60U1$:3Q=L M2B$P?1M*N6E(U#X_V1AQS^>IXT("0QS>HY^+L.8<@P1CPO&1-R/?&%/:$C%A MK\3.RZ=,RAX-GQMV3$02],U?<C\)]B_4.4OKRK8=C;!! MUD^*9&D)'?D=$TK&=3\XUP MY3=LX#>JO=K]B2 619A;8X TM@.H/NW,DR16&6G M)942;6GUHM[([#=I(7]W3/5^C;3R@E+J-489IA=Z8DFP6 M#[3M:!960_G,;+[W$V,N'-N]GFO/ M+Y*)R:SCD3ZDJJ=3C>AZ"J1K+\@ .5+N>M:R=R0$Z;6J!9 _N*QUUU>1%G,(&IR?U:3V<@&9HKT](>>M(^U*)&6U'^' M&1V96VA$R[XP%[YC**.4Y6 T/0'H&)]'#K !:<3Q?22G Z)[D*PFPE3WIUV& M*/):Q[*",,+Z_6:@\[QI$U\C!WV8V382VZ"*D*'L/+=6?HH<7DT4KW]&QL!L M]6[O^5+,2SUC"V8;0_ 8]6<>[<#/ST3G98'M!V.""NMWO(_E_,4&Q)+;%5'A M^=B_#!WWS]!]<#S[7IWZ17XCWT4UO6 _I_]"?3)7,6K"_(!/JT9;?H5;E=O- M3H5I#D@E-;E=[>"]Q^OX:XABP09XV0 ]EIKJ.F;H03WU>X'<-=H,#24]#ABZ MTSV_:QGIO;VBNAA\WT$K\N-_1; 9AB?$"4D6CVEY"6RV1#]P,8 MQ9_DDLIZ!LL_/O[^SNS:?/QS M;!JXTLN?6(?J)A[Z,5"V4MU;1NR.:-&+,'9%1^,_P),Y+<_:D,2"FM:?L6YL;0:U'9_-*+,'F;U$Y2@2^T*FUPW#K0P+FO734G,=4>FKS@UY MU-H90X.G7CWY2K8O2*]B*_3>G=Z]'AT"[UUHI052>&B2UJ.O+72-?.Q>J9V] M\UKVZLY1/EN&BG[FDJ .,8Z3$0Q#:1BW5&MJ0D)@?7,.[*".;<$9[1_SD-,, M:V0WL@M,A?[0V/9]A+"==3H^CH@.EB;J'O#\8(\_.>1@).S8&C<0U')A,*G' M,4M9%M^T\)OPS&$X]S4ATH)"_)MW.1=;P(HU2EVWGX"O^Y/!M MX;[V/AX"B 2N$6T/3&0#0, 61:_'>2%AUHKCA(*;36-JKS,,&IJRY6HS8YK M\7#<:\)4&40URIIK66 M)=R5OM(0>]7*Z82%@%DT>WKW=?02/7G%([$W5 MYTG@^9%QC7D2,P*;BB5AD]K.(=3P+3*DG,VH\[IY$0TM37@[<\VJ2WR@2.64 M+2JV8XVNE-U3$ .3J /+1=Z;/?0PMRH=\NI('UR]3RH&(Q>ZX^3TC E?^C Q MI;N^\N+.Y3&7::O[E=FA>M)E84%$JA,;V%5S%V #'^38P-(0=XY/4WW$*>?\T!'=(:5]US6R:R$"U7.49 M=AP'U_;&&%I1"23W)R2HI/6;'ZZ^V\L^![_F'CU;7=Y^^^ P4W4(YUAJKU%L M)F%C^P,DM3M=3850@O?5V$"GYKY'I!4.*[2F%HXZ2EQ)(]?0-2(FK4R/95CL M1(\]:5AWD57#P6N9Q9!;6#2L4:^'* B#L^3!!QF2KUUDE>#[G\L^/7_596E[ M4C$$!/11,F$0Y%1V =%R\T?E-(=A3_N 7J: M:W1"'^Q@"Z2"-8:M%>TFIH!!6Q$TM76_!T5+^N(AGY#//./:GWOP'[BV>;OO MJ$+]J/(4=N8=N";EZ#0G2;7)CZT+#+A8G/K:5JBUN'3%@9G/2:TOW,]1U^+" M*_E[V8"X^@R5PK KIV['!9%Y^OM-!H[_YNJ8.G]^H65%)5[BZ7._]7$[PKO& M6^3OC?>-I!.2V4"'#':^F3['ZJEE Z5_$W)9>-AZ1H C"V=DP 8NQK1]8*:C M9EZR 4F4S]!3Q]Q?O:NZ_M*?E MTBW)W9#6DD=/ Y:ZRB'.J^\V3%F"M533'AC'B10#FG+'5'YQ8+G+A&_$8+EN MDB2WZ^?/M#((3JIQQAJ91DXNK\H,"XMKB+;RV#_??/:$VG3$S^!-C)Q\0ED\ M9G79*E=?AVGMH:P4@>1BC1>L1[D;L8'JMVQ@,P@S@J&?A3'RS)(XJ'G!>RK. MZQ!.8J):PM!@":02&:F'I:TED/#A+CMCWC&G2[ MG&Y*(@JLY!+BZY+(!L0&F-MTC[;BE_(;?YV!J'-&EDOHO=R)+SH5I%,5JO9$ MY,# YT7;#+O1T"'(3"YQW<-8G0U4Y6)8B9ATR$Q6EI8_JOX UD>0VR559.7O MUT8Y^<<@KY"/D8.PFJ'4-@#Y]:<:/2B\4M2^>KD-JTH4;P; O+\')K<7DA>MG*[T"P+S8]2+A)G0GKT. U!PB@14'+Q*=O+Y.+PEJ3'D3LF4T+_F^:RI+;[]H%#H*HLI0,CEENR5U#I*\A@BE;ERO M'PX?O,2@F-HTVQW+O[M>+/IQ<&Q;.7]K!#F$JG;L<3&(5AF8T^@>P(C1819A M43#AJ6M#O*7!==;'@4\BHEE-&RHOKG682E6$](_[3S'0,<^,IL$V" MF$4L. M<7Q,9QHL0\=>&Z[:$CLR)??VH8]=D)Q\]G="X>3/2^7.IN%P+5>7:S%7?R4W MJKX]S*LP@Z;S;"]RW!(66;:=0F^Z-2$/S*#W>4?G/?]NTS_AH;> MIU7_EWE^Q96<5O?KV;D6/^J]=J*X?> 3AE(Q.79\;U 1D@/J]"-6.[8/JE/= M7!@:U*DOAR[!I?X1_7"BM08]I;O2X:SE]R"SO\!4^Q+U:SH)KE0WLCE@K8XW MXW5(>^_//RPT6H3N:]BZQ2=E>Y4;?;KP#XO&M.CN&S&2F5*-""'NOYBUJ]'*P<3(U&I?\3Y7A>K]FYZQV*7W=Z3E;.>0:_:=H!_^MG5I[<+ MSMVPC55 M5UT?VF@%N_%)C=9^5(BB>LW@LJF!IJTQ4PO1,!?\76BNKG#6REH* M( \R%SH/6KIN>^-"?\G+DM\3&1]LKX!X_NL?,@A[\E\ 4$L#!!0 ( .N! MA5F<>N#4B0@ (TE 7 86=X+3(P,C0Q,#,Q>&5X,S%D,2YH=&WE6FUS M&CD2_BLZIVYC5P$#V$Y\ W&57TB=JY+8ZY#:VX^:&<'H/(QF)0V8^_7[M#3 MX)<$[]JQ7>S.?O[$$A67$Y%;%FO!+49G MTJ9LJ(J"Y^RST%IF&3O6,AD+QCKMUKM6I[O?:C>;AWWL=5(M4GG(.MU@/^BV MNWNL_3[?SD[85C,(?ML]"8+3 MX:F?V&NU.VRH>6ZDE2KG61 ,OFRQK=3:(@R"V6S6FNVVE!X'P\L@M9-L+\B4 M,J*5V&3KL$\C>!4\.>Q/A.4L3KDVPG[8^C;\V#P A94V$X?]8/'N:2.5S _[ MB9PR8^>9^+ UX7HL\Z951;C;+FP/*P-,WZ"Y;LYD8M.PTV[_LU?P))'YN)F) MD0WW6P<'JR$MQ^ER3'G10BTR;N54T-ZU7>-,?AV*"?"L"]BQB[5A.=O&WX$[T9H.7K;<]1&_D]@:XAGQ;5M\DR.L3GQ MVO/RAYACB__==UX/T=J),^%DBU268')PG"7]X<=-N[O7Y "Y^(Z1A1)O1-KCM=_^%'BOUZ='E\ M]&7PM7G^GT^#W]G1R9!]'9P,S\Z_L-UV=YOOL)/!Y?#LX]G)$0T^G>[_6QHK M1_/OR''68*=\*@$P+?8;MT;E#18+3:N83;D-GXNQ3NN7-YUW[=[MUS.6\JE@ M6DREF '/;"H-^[7D&A;+YNQ2%$I;H!S[J/0$,-C\E:D1.])C#MG.\KC%MFTJ M&+E1M]V[%&-I+##,NH%.;X>-E&9$44 *E3"1)SCE/+8J$AK!TF $G+WG4DSW M7L4<<^/@G4WF["I7LTP@$32\?K372J+ 6*Z00< !ESGC^9R5N=6E@"1(#RZ] M0%V<3?"D)<_8B,<8TDQ-@!56>;I;!+F(A3%$[T!:TD*DP(*(UN3#Z!J6!JSTJ.Y<33\)7'YK$$4908"6%!!S>XX MX_B)N4G9*%,SLS#O*KH8IT'/-[ALU*QD%LS]TQE MB@HYR2G5:"3QZ.0]8UP+IUEH2D:91]I0F#51BX4GJC@@.:E A=\&)4)A/7#Y@R,C*1 M7$L20'JD=B"4TTZE(?1T_FT%3)(@0P8_U(GGB8'^ 0T0;.L3&(73++S8/OHW= RZ%.HY@AJ.*XX0R MW,!C*+-B<,QULC +'$5R7U834-]U+#FILZ SCO>O-=):9G9@=ET)5)0:K0^, M18DECI5.' ,N1X]%CGR1P4'] $XJ"^#)R_&$^%Y/&$QY5KKX M(36)T0A)$UU>CB+H=O);IHD-\, _WIT/G>&Q$+%L?-:-5&GOYV"3XY;$@BJ* MT8^K)Q8M:A7GRL(K NST:.\78[KD_B#V6KFM72J&J]SF9NXTX0-"EY!:Q7&I M28DU6+QCUXDR%DNI[\1>)L9&?_B6QF^3A(FH[J1*M!8"NBX LEE#303_(I0SR<=AWLN7;JF M==&A/,AR5;GBJ_8[(HLG6&C$,K#NM7*59+$$ID(N;'CH-:B93#F!6J!&)TR% M0'?V&!$N/M35 M2%>7J;_SHWM?.@I"].K7E[RT:C'@KY3=R-K%,VET_=J91FJWR%O,V>G#EK^0 MI"MQO>"S.K_C[R-MLAB?$MXA@50FMJJH=MS'ABN[+@[V-FX=K&YF;]QQU\XA M55)_O[B,73PW9YH78818N6K.H+X?WILOYWF$1J2THD>7]S>%7USC5Z\VV4C, MW?\+*??>OWXQ ZO)H1_=>1\')FNG;1V> L%"=HIZ8$*WP/O^$M@AR!/XY1,( M<#P/'\0M^5>%A)&R5DW"3HLX=/<&[$W;_3VG0'VYMJ?['$H+.6+,!B:HBOWU M;S?Z@3Q&1'+#3>O^O)Y?7B_.*/.XO,/P=4/LI.K[E+*_14=:^4-WP"]2_ M[5&O4);[G>V)A+G0:$NHQ'85_TDJQ8@-KD5<4DYEY[XW?9T^]YC@]')8_.D> MLGWA[T#1IMQRC)T;GA&XIF513[V4V*N5>.FR4XEX?#76JLP3ZJJ4#A?E0^WG M,^L359F*KK.7R5PTJ^?V6H?E?Z*SUF*M#2U_#U2@R6SZ@I:/T$:%?*ID4AGY MX*#5W5O6.GZL[&5X,S%D,BYH=&WM6FUSVCH6_BO:=.YM,@,8 M2&BSAF8F;YW-3MODIG1W[T?9%E@;8_E*,H3]]?L1Z+A/UM^/D32U1<3D1N6:P%MQB=29NRH2H*GK//0FN9 M9>Q$RV0L&.NT6^]:G6ZOU6XVCP;8Z[1:I/*0=;I!+^BVNP>L_3X\Z(;='KOZ MS':_#4_W'/79Y>GP]ZMS?^S5MY-/%Z=LIQD$_]P_#8*SX9F?.&BU.VRH>6ZD ME2KG61"+=TT8JF1\-$CEEQLXS\6%GPO58 MYDVKBG"_7=@^5@:8OD-SVYS)Q*9AI]W^I5_P))'YN)F)D0U[K6EDLUHU4;ILC/I'9/'P[E!-AV!2;'V)QX[7OY0\RQQ?_^.Z^' M:.W$F7"R12I+,'E^F\I(@K;3Z@Z""$HK7H)%6GK'DLXJM,]4&K"823L/4YDD M(L>"7]\<=MO[_4% "Y^)Z1A1)O1=KCM=_^%[BOUZ?'UR_.7\:_/R7Y_.?V?' MIT/V]?QT>''YA>VWN[M\CYV>7P\O/EZ<'M/@\^G^WZ6QLQSQOL(H];;->F@I$C==O]:S&6 MQ@+%K!OH]/?82&E&% 6D4 D3>8)3+F.K(J$1+@U&T-E_*<5T-RKFA!L'\&PR M9S>YFF4"J:#A]:.]5A(%QG*%' (.N,P9S^>LS*TN!21!@G )!NKB;((G+7G& M1CS&D&9J K2PRM/=(\A%+(SA>DXD$WXCG J7>QJ,)6 &1V84+'0&$<12(ZN! M#'G.@),$*IZE,DZ9*>EEM7XFM*@V(0$FT@!]";)]'M3"%")V#-9L%ZLIEB4L MFM?5\&*VVW^\[00;R1S:(46OM-& X4".:5V;ESE<%V9!XL'G."O)<:'QFN@- M6$M2F!10&-F:? !UP]*8E1[-G:/A+XG+: VB*#,0P((*:G;'&<=/S$W*1IF: MF85Y5]'%. UZOL%EHV8ELV#F'K5*2KD)*=4HY'$ MHY/W@G$MG&:A*1EEPD&,@#FC3)J4R(EL@H"DH*3G1)HX4Z;$.@I5K3*OXD(K M%(08-FP7&DT$3.35=GZ+ BI'[7>,*+@N,U!T]GFST]L5>VYIIY?X)_\H*1]K0F#51BX4GJC@@.:E A=\&)4)A/7$9@R,C*17$L20'JD=B"4 MTTZE(?1T_FT%3)(@0 MP8_U(GGF8'^$0T1;.L36(73/+[8/OJW= RXUE0G!##?HQ@AEN(''4&;%X)CK M9&$6.(KDOK FH'[H6')29T%G'.]?:Z2US.S [+82J"@UFA\8BQ)+'"N=. 9< MCAZ+'/DB@X]@1A3D?$2"^L/[ 9Q4%L"3U^,)\49/.)_RK'3Q0VH2HQ&2)OJ\ M'$70_>2W3!-;X(%_?#@?.L-C(6+9^*P;J=)NYF";XY;$@BJ*T?>K)Q8M:A7G MRL(K NST:>]78[ID6(O$V.C/WQ+X[=)N5F"/L6/L[9('+ X :J@GZ.\OA%9587?H6_\SS+] M !-OMFCOB8LRUT8F"V=HK/R:HJQND)6+4X \ O7O)>(E:QS)V"IMED#K!K#E M!%V6%>)/,"12@'*:3R3X]4$BQ\3?Q12K#O_*K,8U>L[_T, MM=A(FH[J1*M!8"NBX LEE#303_(90SR<=AWLN7;JF==&A/,IR5;GB MJ_8'(HLG6&C$,K V6KE*LE@"4R$7-CST&M1,IIQ +5"C$Z9"H =[N=>%JYN+ MHV/ YTC#D1O0GW"Q!PNX9KTR5<.#F=31+RY@%\_-F>9% M&"$Z;IHS*.R[=^7+>1ZA]2BMZ-.%_5UQ%U?WU:M-MA)L?Y-3"3^"N3P.%M?UWCLZ 4B$[0\Z?T$UOSU_T.I1X!D]\!@%.YN&C MN"6/JM N4M:J2=AI$8?N;H"]:;N_EQ1H(-?V=)]#:2%'C-G !#[QW/L.8Q#( MHY4FGL;I6*?U_J_/+K$7Z&E\[O6PN!FZGHG'!SSBCC?8)M5U*AXO:H_8+F_6)"K;1EO8SF8MF]=Q>:\'\ MKWC6>K"UH>5/A@ITH4U?__(1^JR03Y5,*B,?'K:Z!\M"R8^U777K?XKD?MMT M]%]02P,$% @ ZX&%65-NQ02?!0 FA@ !< !A9W@M,C R-#$P,S%X M97@S,F0Q+FAT;=58:W/:.!3]*]ITMDUF\!-(J:',$"!39M*0!F>Z_2C;,M96 MMKRR"&%__5[)-C%TV[2[H4TRA(<>]W%TI'ODP6^&,W3CGQL]&"&I9&0XL.K/V_,G;&FD4P\Q[9_[^[W[)D&7R;:-EZEY@C LZ2U1MAM60T:P\ (ND_Z^@W^;F=?S8IY)(\8I M91OOE4]34J!+LD;7/,79JU;9 I\%$31^U=>C"_HW =.0GB1WTL",+L&XBK5? MYN]!'ZK_VZ7ONS\]EXY,_F ME[!CKA%I/'F&UG,,A3R+".A.I#*HB$3@CZLL(#TV09=DYP+B7B,1F*)LQ::9:'9 M0AA-X/!:8T%@OH A6!LX5I/5+G3M_IBG4'PV^I?3/VE!=4'G7*10?HP/*.9" M>\HA!QXADD50?^:AY $1J.VTD"I!X*= ,65U/5,3%B1<"3@_ 1.<16AZ!Z4A M@ZH&[E):%"H*>*F1$=0TE!!!(/AF8&5*]W'-6FB";RE44A-]Q++@D.65( 6- M5$%53L8))3&X M?JO$;S.*8AQ F&E=TJTY9V%FP0="G86RA?B6*%P8CDJ+'% M*K3U%E,9XHCGJOPVA]>#%(,J-PLL IR1PIC?,;)!HU OBV)0"_JQGJ;&!:30 M/>D&?<[X&M!;$N^P!----%. >4XO_^)0;S#.,5^^<$[M_M?>?FDH@J6P@W'ZSSN.5Y'5#J;UTRXY"4[CMZC/5TI!; M1TBO!B@R?:0K[2CJ."O_3GFBRZANOU4[.,2L6DB0CY7%+AAL%*W*<5W &O*O M89F#M9CQ=:U3ZM_&6N#<"T![?S;6 -B#DG+;CX."LY4D?:5K]].M%6[U+J/O M2JS]M;R0;?;NI=DSS[+S^OFG:4FA*/P(='V< V]'PTW@C/% &X0D586\6]9Q M?4H<@(D'2.!LX_U0M(I1U6D'=SW)4\\Q582PIJ H7MCZ[UJ[#*PK*G@ 86'=[C\#B40X[Y^LW!\RW3>4:,^P\!?^,8^RD8?T&6YTB4 MG:<+W_DTX7\SZAGF\G6R'2B9[[I[/4_./>;A]'1"_.D,.;X2%*XL.=Q9OB#& MR1XS+'TQJ1744]E[#5&7;&\C 0X_+P5?99&Z.7'AU?*A\2QYMZ,2IG!_[#.X M"1K5;WOG%E4^K]ZY1NTT;1^.YWA)C%+"XABN2AZ^Y32J%KG7,]W.5NN4;;86 MJ.5#=_T4?_@/4$L#!!0 ( .N!A5FX>:R#SP4 /08 7 86=X+3(P M,C0Q,#,Q>&5X,S)D,BYH=&WE66U3VS@0_BM[=-K"3/P:0E,G92:$,,T-)928 MN^M'V99C71W+)\N$W*^_E6R')*6EO2,MG6,@+RNM]D6/=A^9_B^&,%C.:28A%)1(E"Z83,#G>4XR>$>%8&D*)X)%,PK@V.:1Z;@=TS:, MXSZN-:R5>.:!XUH=R[7=0[!?>8>NYQ[!Y3O8O_:'!WKVZ63H?[@<568OKT_. MQT/8,RSK]_;0LD[]TVK@T+0=\ 7)"B89STAJ6:.+/=A+I,P]RUHL%N:B;7(Q ML_PK*Y'S]-!*.2^H&J[D!CY;'_8C=0"&7*7VS-R=BQC)#\MQKV[GLH::%PUMS;HT%BV3B.;;] MO)>3*&+9S$AI++V.V>W>B02;)2L9KT+S!$V)9#=4K;VV:IA2(KR RZ2W;> ^ MS;S1BWDFC9C,6;KT7OIL3@NXH NXXG.2O6Q5$GPOJ&#QRYZ>7;"_*2Z-X4EZ M*PV2LADNKGSM5?%[. ;-7_NHRD.P87%!=6P!3R,<'-TF+& XUS7=OA5@TO(? MX:)2W=I)O2MJG1M6H(LIDTLO85%$,U1X\:SKVNU>WU**.W(ZQ%-&Q9K7#^5R M.+KRQV?CX< ?3R[PQ%Q-KP<7/OB3W27VFWUTNG!M3LVA"=/14/OIM#MVZPEY M.)C"X'1RZ8].?U *-3 =M_KPD+=-%E_;1S Y __M"*:#JY/!Q6AJ3/XX'WV MP=!7(ZYM[_" _5D6DL7++T0QSB#D649#59"JIB$3"N]+(C#\= E7-.=" H]A M(&8D:\$X"\T6$#C%XK4@@J*^P"E$+["OE-4I=.W>D,^Q^2SU-Z=WT,+N F=< MS+']&.\AYD);RC$&'@'-(NP_DU#R@ IH.RU0+0CM%!"SM.EG2F%*PU)@_<2< MD"R"T2VVA@R[&IJ;LZ)07N"OFAEA3X.$"HK.KSM6A73GU[@%O_(B*0E,33@A MY0QU6F@G8^CC;RRD<"EHP2+57I7)8<)H#&0 L],E_"QXPO,)RG4('>)72?' !NH=/9 MCPY6:;N#SPHZ=>Z21*DM,E@P$5$A1'R-"5Y0;WFPWJR5,=/JAJJZ)**!MWMK7=]4DK> M""HFIB4;?$WE;9.M*_M%88/H> MI)NK<1(4/"TE[2G.NQU\PW[K5QE]59CM_T64G<[GPGS*@5E2* @_.EP?I_QM M\+M3K#@>\H:0SE63[U0]7M>,'2!Q!P&<+#WX)G<5I.KBAQ=!R>>>8RH7<8M9 M!,]L_?,%T.T@AC[;6%-_]IA$ST, \^MK"Q72T=L_,8??6[0&;CP<-7/FCXS]CZ"6/Y'K#; MH'=.VSQJ6'5-H8U:MA'TO9>WUF=O;HK@^MBLBU+<@^2? K*/6>6>CHO?O:[M M7PJ&V,@1')_ Y& +&9:^Y#1L[*D17LIWBJ-^KN]<2.KGH1O7,DV1*O'[CF94:.BPR3&:Y=';CB+ZDWN M=DWW<$64*IFMR6[U.%__?^#X'U!+ 0(4 Q0 ( .N!A5FNX7-+.18 $?D M 0 " 0 !A9W@M,C R-#$P,S$N>'-D4$L! A0#% M @ ZX&%63JA,9C]#P "TR,#(T M,3 S,5]C86PN>&UL4$L! A0#% @ ZX&%6>Q"5."/+@ [8" !0 M ( !EB8 &%G>"TR,#(T,3 S,5]D968N>&UL4$L! A0#% @ MZX&%63+QS(I.

"TR,#(T,3 S M,5]L86(N>&UL4$L! A0#% @ ZX&%610'_:+R2P 6ST% !0 M ( !U\@ &%G>"TR,#(T,3 S,5]P&UL4$L! A0#% @ ZX&% M6:L2P(=B;0( =M0? !0 ( !^Q0! &%G>"TR,#(T,3 S,7@Q M,'$N:'1M4$L! A0#% @ ZX&%69U6!OS\%@ Q1< !< M ( !CX(# &%G>"TR,#(T,3 S,7@Q,'$P,#$N:G!G4$L! A0#% @ ZX&% M69QZX-2)" C24 !< ( !P)D# &%G>"TR,#(T,3 S,7AE M>#,Q9#$N:'1M4$L! A0#% @ ZX&%6?-5L/2O" L"4 !< M ( !?J(# &%G>"TR,#(T,3 S,7AE>#,Q9#(N:'1M4$L! A0#% @ MZX&%65-NQ02?!0 FA@ !< ( !8JL# &%G>"TR,#(T,3 S M,7AE>#,R9#$N:'1M4$L! A0#% @ ZX&%6;AYK(//!0 ]!@ !< M ( !-K$# &%G>"TR,#(T,3 S,7AE>#,R9#(N:'1M4$L%!@ + - L X0( #JW P $! end XML 89 agx-20241031x10q_htm.xml IDEA: XBRL DOCUMENT 0000100591 us-gaap:TreasuryStockCommonMember 2024-08-01 2024-10-31 0000100591 us-gaap:TreasuryStockCommonMember 2024-02-01 2024-10-31 0000100591 us-gaap:TreasuryStockCommonMember 2023-08-01 2023-10-31 0000100591 us-gaap:TreasuryStockCommonMember 2023-02-01 2023-10-31 0000100591 us-gaap:CommonStockMember 2024-08-01 2024-10-31 0000100591 us-gaap:CommonStockMember 2024-02-01 2024-10-31 0000100591 us-gaap:CommonStockMember 2023-08-01 2023-10-31 0000100591 us-gaap:CommonStockMember 2023-02-01 2023-10-31 0000100591 us-gaap:TreasuryStockCommonMember 2024-10-31 0000100591 us-gaap:RetainedEarningsMember 2024-10-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2024-10-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-10-31 0000100591 us-gaap:TreasuryStockCommonMember 2024-07-31 0000100591 us-gaap:RetainedEarningsMember 2024-07-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2024-07-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-07-31 0000100591 2024-07-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-10-31 0000100591 us-gaap:RetainedEarningsMember 2023-10-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2023-10-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-10-31 0000100591 us-gaap:TreasuryStockCommonMember 2023-07-31 0000100591 us-gaap:RetainedEarningsMember 2023-07-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2023-07-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-07-31 0000100591 2023-07-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:CommonStockMember 2024-10-31 0000100591 us-gaap:CommonStockMember 2024-07-31 0000100591 us-gaap:CommonStockMember 2024-01-31 0000100591 us-gaap:CommonStockMember 2023-10-31 0000100591 us-gaap:CommonStockMember 2023-07-31 0000100591 us-gaap:CommonStockMember 2023-01-31 0000100591 2023-02-01 2024-01-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2024-10-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2024-01-31 0000100591 srt:MinimumMember 2024-11-01 2024-10-31 0000100591 srt:MaximumMember 2024-11-01 2024-10-31 0000100591 2024-11-01 2024-10-31 0000100591 us-gaap:IntersegmentEliminationMember 2024-08-01 2024-10-31 0000100591 country:US 2024-08-01 2024-10-31 0000100591 country:IE 2024-08-01 2024-10-31 0000100591 country:GB 2024-08-01 2024-10-31 0000100591 us-gaap:IntersegmentEliminationMember 2024-02-01 2024-10-31 0000100591 country:US 2024-02-01 2024-10-31 0000100591 country:IE 2024-02-01 2024-10-31 0000100591 country:GB 2024-02-01 2024-10-31 0000100591 country:US 2023-08-01 2023-10-31 0000100591 country:IE 2023-08-01 2023-10-31 0000100591 country:GB 2023-08-01 2023-10-31 0000100591 country:US 2023-02-01 2023-10-31 0000100591 country:IE 2023-02-01 2023-10-31 0000100591 country:GB 2023-02-01 2023-10-31 0000100591 agx:AtlanticProjectsCompanyLimitedMember 2024-05-04 2024-05-04 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-08-01 2024-10-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-02-01 2024-10-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-08-01 2023-10-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-02-01 2023-10-31 0000100591 us-gaap:RevolvingCreditFacilityMember 2024-05-31 0000100591 agx:ExpiresOnMay312027Member us-gaap:RevolvingCreditFacilityMember 2024-05-24 0000100591 agx:LettersOfCreditExpireOnMay312024Member us-gaap:RevolvingCreditFacilityMember 2017-05-15 0000100591 us-gaap:RevolvingCreditFacilityMember 2024-10-31 0000100591 us-gaap:CorporateNonSegmentMember 2024-08-01 2024-10-31 0000100591 agx:GemmaPowerSystemsMember us-gaap:FinancialGuaranteeMember 2024-10-31 0000100591 agx:RobertsCompanyIncMember 2024-10-31 0000100591 agx:GemmaPowerSystemLlcMember 2024-10-31 0000100591 agx:RobertsCompanyIncMember 2024-01-31 0000100591 agx:GemmaPowerSystemLlcMember 2024-01-31 0000100591 us-gaap:TradeNamesMember 2024-10-31 0000100591 us-gaap:CustomerRelationshipsMember 2024-10-31 0000100591 us-gaap:TradeNamesMember 2024-01-31 0000100591 us-gaap:CustomerRelationshipsMember 2024-01-31 0000100591 us-gaap:RetainedEarningsMember 2024-08-01 2024-10-31 0000100591 us-gaap:RetainedEarningsMember 2024-02-01 2024-10-31 0000100591 us-gaap:RetainedEarningsMember 2023-08-01 2023-10-31 0000100591 us-gaap:RetainedEarningsMember 2023-02-01 2023-10-31 0000100591 us-gaap:CorporateNonSegmentMember 2024-02-01 2024-10-31 0000100591 us-gaap:CorporateNonSegmentMember 2023-08-01 2023-10-31 0000100591 us-gaap:CorporateNonSegmentMember 2023-02-01 2023-10-31 0000100591 2021-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2024-08-01 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2024-08-01 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2024-02-01 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2024-02-01 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2023-08-01 2023-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2023-08-01 2023-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2023-02-01 2023-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2023-02-01 2023-10-31 0000100591 agx:MajorCustomerTwoMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2024-10-31 2024-10-31 0000100591 agx:MajorCustomerThreeMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-10-31 2024-10-31 0000100591 agx:MajorCustomerFourMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2024-10-31 2024-10-31 0000100591 agx:MajorCustomerFourMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-10-31 2024-10-31 0000100591 agx:MajorCustomerTwoMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-08-01 2024-10-31 0000100591 agx:MajorCustomerThreeMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-08-01 2024-10-31 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-08-01 2024-10-31 0000100591 agx:MajorCustomerFourMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-08-01 2024-10-31 0000100591 agx:TelecommunicationInfrastructureServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2024-08-01 2024-10-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2024-08-01 2024-10-31 0000100591 agx:IndustrialConstructionServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2024-08-01 2024-10-31 0000100591 agx:MajorCustomerTwoMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:TelecommunicationInfrastructureServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:MajorCustomerTwoMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:MajorCustomerThreeMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:MajorCustomerOneMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:MajorCustomerOneMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:IndustrialConstructionServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:MajorCustomerTwoMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-08-01 2023-10-31 0000100591 agx:MajorCustomerThreeMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-08-01 2023-10-31 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-08-01 2023-10-31 0000100591 agx:TelecommunicationInfrastructureServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-08-01 2023-10-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-08-01 2023-10-31 0000100591 agx:IndustrialConstructionServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-08-01 2023-10-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:MajorCustomerTwoMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-10-31 0000100591 agx:MajorCustomerThreeMember agx:IndustrialConstructionServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-10-31 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-10-31 0000100591 agx:TelecommunicationInfrastructureServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-02-01 2023-10-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-02-01 2023-10-31 0000100591 agx:IndustrialConstructionServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-02-01 2023-10-31 0000100591 2024-05-01 2024-07-31 0000100591 agx:O2025Q3DividendsMember 2024-08-01 2024-10-31 0000100591 agx:O2025Q2DividendsMember 2024-05-01 2024-07-31 0000100591 agx:O2025Q1DividendsMember 2024-02-01 2024-04-30 0000100591 agx:O2024Q4DividendsMember 2023-11-01 2024-01-31 0000100591 agx:O2024Q3DividendsMember 2023-08-01 2023-10-31 0000100591 agx:O2024Q2DividendsMember 2023-05-01 2023-07-31 0000100591 agx:O2024Q1DividendsMember 2023-02-01 2023-04-30 0000100591 2023-01-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MoneyMarketFundsMember 2024-10-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MoneyMarketFundsMember 2024-01-31 0000100591 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USTreasurySecuritiesMember 2024-10-31 0000100591 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:DomesticCorporateDebtSecuritiesMember 2024-10-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-10-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2024-10-31 0000100591 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2024-01-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2024-01-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialConstructionServicesMember 2024-10-31 0000100591 us-gaap:CorporateNonSegmentMember 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:TelecommunicationsInfrastructureServicesMember 2023-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:PowerIndustryServicesMember 2023-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialConstructionServicesMember 2023-10-31 0000100591 us-gaap:CorporateNonSegmentMember 2023-10-31 0000100591 2023-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialConstructionServicesMember 2024-08-01 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialConstructionServicesMember 2024-02-01 2024-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialConstructionServicesMember 2023-08-01 2023-10-31 0000100591 us-gaap:OperatingSegmentsMember agx:IndustrialConstructionServicesMember 2023-02-01 2023-10-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2024-08-01 2024-10-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2024-02-01 2024-10-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2023-08-01 2023-10-31 0000100591 2023-08-01 2023-10-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2023-02-01 2023-10-31 0000100591 2024-08-01 2024-10-31 0000100591 2024-11-29 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2024-10-31 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2024-01-31 0000100591 srt:MinimumMember 2024-02-01 2024-10-31 0000100591 srt:MaximumMember 2024-02-01 2024-10-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2024-02-01 2024-10-31 0000100591 2024-09-17 0000100591 agx:TimeBasedRestrictedStockUnitsMember 2024-10-31 0000100591 agx:RenewablePerformanceBasedRestrictedStockUnitsMember 2024-10-31 0000100591 agx:PerformanceBasedRestrictedStockUnitsMember 2024-10-31 0000100591 agx:EarningsPerSharePerformanceBasedRestrictedStockUnitsMember 2024-10-31 0000100591 us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2024-10-31 2024-10-31 0000100591 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-10-31 2024-10-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-08-01 2024-10-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-02-01 2024-10-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-08-01 2023-10-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 2023-02-01 2023-10-31 0000100591 agx:ExpiresOnMay312027Member us-gaap:RevolvingCreditFacilityMember 2024-05-24 2024-05-24 0000100591 agx:LettersOfCreditExpireOnMay312024Member us-gaap:RevolvingCreditFacilityMember 2017-05-15 2017-05-15 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2024-02-01 2024-10-31 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2023-02-01 2024-01-31 0000100591 agx:KilrootProjectMember agx:AtlanticProjectsCompanyLimitedMember 2024-02-01 2024-10-31 0000100591 agx:KilrootProjectMember agx:AtlanticProjectsCompanyLimitedMember 2023-02-01 2024-10-31 0000100591 2023-02-01 2023-10-31 0000100591 us-gaap:DomesticCorporateDebtSecuritiesMember 2024-10-31 0000100591 us-gaap:DomesticCorporateDebtSecuritiesMember 2024-01-31 0000100591 us-gaap:USTreasuryNotesSecuritiesMember 2024-10-31 0000100591 us-gaap:USTreasuryNotesSecuritiesMember 2024-01-31 0000100591 agx:OverseasProjectMember 2024-10-31 2024-10-31 0000100591 2024-02-01 2024-10-31 0000100591 2024-10-31 0000100591 2024-01-31 iso4217:USD agx:customer shares pure iso4217:USD shares agx:segment 0000100591 --01-31 2025 Q3 false ARGAN INC http://fasb.org/us-gaap/2024#Investments http://fasb.org/us-gaap/2024#Investments P14D P1Y 18500000 9500000 http://fasb.org/us-gaap/2024#SecuredOvernightFinancingRateSofrMember P9M P24M 10-Q true 2024-10-31 false 001-31756 DE 13-1947195 One Church Street, Suite 201 Rockville MD 20850 301 315-0027 Yes Yes Accelerated Filer false false false Common Stock, $0.15 par value AGX NYSE 13575116 257008000 163755000 641705000 408779000 212681000 144520000 548329000 351578000 44327000 19235000 93376000 57201000 13995000 11375000 37848000 32467000 30332000 7860000 55528000 24734000 6646000 3733000 17044000 7222000 36978000 11593000 72572000 31956000 8968000 6129000 18482000 11616000 28010000 5464000 54090000 20340000 -957000 -882000 -1933000 -627000 -659000 -427000 -169000 -1147000 26394000 4155000 51988000 18566000 2.07 0.41 4.04 1.52 2.00 0.40 3.91 1.50 13530000 13328000 13398000 13381000 14034000 13559000 13830000 13549000 0.375 0.300 0.975 0.800 175349000 197032000 330933000 215373000 131660000 47326000 44620000 48189000 34579000 39259000 717141000 547179000 14147000 11021000 28033000 28033000 1924000 2217000 1254000 2259000 6365000 7520000 768864000 598229000 87085000 39485000 78393000 81721000 270686000 181054000 436164000 302260000 3996000 5030000 440160000 307290000 0.10 0.10 500000 500000 0 0 0 0 0.15 0.15 30000000 30000000 15828289 15828289 13569104 13242520 2374000 2374000 168441000 164183000 266334000 225507000 2259185 2585769 102746000 97528000 -5699000 -3597000 328704000 290939000 768864000 598229000 13497550 2374000 165902000 243519000 -99644000 -4083000 308068000 28010000 28010000 -957000 -957000 -659000 -659000 1175000 1175000 77254 1364000 -2643000 -1279000 5700 459000 459000 5195000 5195000 13569104 2374000 168441000 266334000 -102746000 -5699000 328704000 13353653 2374000 162323000 216009000 -92329000 -3341000 285036000 5464000 5464000 -882000 -882000 -427000 -427000 1198000 1198000 21747 -367000 527000 160000 42653 1729000 1729000 3987000 3987000 13332747 2374000 163154000 217486000 -93531000 -4650000 284833000 13242520 2374000 164183000 225507000 -97528000 -3597000 290939000 54090000 54090000 -1933000 -1933000 -169000 -169000 3390000 3390000 337884 868000 -4572000 -3704000 11300 646000 646000 13263000 13263000 13569104 2374000 168441000 266334000 -102746000 -5699000 328704000 13441590 2374000 162208000 207832000 -88641000 -2876000 280897000 20340000 20340000 -627000 -627000 -1147000 -1147000 3416000 3416000 103598 -2470000 3577000 1107000 212441 8467000 8467000 10686000 10686000 13332747 2374000 163154000 217486000 -93531000 -4650000 284833000 54090000 20340000 -2992000 1876000 3390000 3416000 2415000 1335000 1376000 1524000 1060000 497000 293000 294000 -1006000 -287000 85084000 -168000 -3569000 613000 -4514000 2977000 43707000 9960000 89632000 59908000 122960000 92263000 135000000 115000000 117500000 159750000 110045000 104492000 9230000 5218000 2143000 3312000 -126845000 -61885000 646000 8467000 13263000 10686000 -3704000 1107000 -17613000 -18046000 -185000 -710000 -21683000 11622000 197032000 173947000 175349000 185569000 1995000 706000 15133000 7022000 2404000 1340000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;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;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;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 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 on-site 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;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">The condensed consolidated financial statements include the accounts of Argan and its wholly-owned subsidiaries. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 15, 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;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s fiscal year ends on January 31 each year. The condensed consolidated balance sheet as of October 31, 2024, the condensed consolidated statements of earnings and stockholders’ equity for the three and nine months ended October 31, 2024 and 2023, and the condensed consolidated statements of cash flows for the nine months ended October 31, 2024 and 2023 are unaudited. The condensed consolidated balance sheet as of January 31, 2024 has been derived from audited consolidated financial statements. These condensed consolidated financial statements have been prepared pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (the “SEC”). Certain information and note disclosures normally included in annual financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations, although the Company believes that the disclosures made are adequate to make the information not misleading. The accompanying condensed consolidated financial statements and notes should be read in conjunction with the consolidated financial statements, the notes thereto, and the independent registered public accounting firm’s report thereon, that are included in the Company’s Annual Report on Form 10-K for the fiscal year ended January 31, 2024 (“Fiscal 2024”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the opinion of management, the accompanying condensed consolidated financial statements contain all adjustments, which are of a normal and recurring nature, considered necessary for a fair statement of the financial position of the Company as of October 31, 2024, and its earnings and cash flows for the interim periods presented. The results of operations for any interim period are not necessarily indicative of the results of operations for any other interim period or for a full fiscal year.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">In November 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-07, <i style="font-style:italic;">Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures,</i> by 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 plans to adopt the provisions of ASU 2023-07 as of January 31, 2025. The Company does not expect the adoption of this ASU to have an impact on its financial position, results of operations or cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">In November 2024, the FASB issued ASU 2024-03, <i style="font-style:italic;">Income Statement—Reporting Comprehensive Income—Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses</i>, which requires public business entities to disclose specific information about certain costs and expenses. The amendments in this update are effective for fiscal years beginning after December 15, 2026, and interim periods within fiscal years beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating the effects, if any, that the adoption of ASU 2024-03 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;text-align:justify;margin:0pt 0pt 8pt 0pt;">There are no other recently issued accounting pronouncements that have not yet been adopted that the Company considers material to its condensed consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;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;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 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 on-site 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;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">The condensed consolidated financial statements include the accounts of Argan and its wholly-owned subsidiaries. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 15, 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;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s fiscal year ends on January 31 each year. The condensed consolidated balance sheet as of October 31, 2024, the condensed consolidated statements of earnings and stockholders’ equity for the three and nine months ended October 31, 2024 and 2023, and the condensed consolidated statements of cash flows for the nine months ended October 31, 2024 and 2023 are unaudited. The condensed consolidated balance sheet as of January 31, 2024 has been derived from audited consolidated financial statements. These condensed consolidated financial statements have been prepared pursuant to the rules and regulations of the U.S. Securities and Exchange Commission (the “SEC”). Certain information and note disclosures normally included in annual financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations, although the Company believes that the disclosures made are adequate to make the information not misleading. The accompanying condensed consolidated financial statements and notes should be read in conjunction with the consolidated financial statements, the notes thereto, and the independent registered public accounting firm’s report thereon, that are included in the Company’s Annual Report on Form 10-K for the fiscal year ended January 31, 2024 (“Fiscal 2024”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the opinion of management, the accompanying condensed consolidated financial statements contain all adjustments, which are of a normal and recurring nature, considered necessary for a fair statement of the financial position of the Company as of October 31, 2024, and its earnings and cash flows for the interim periods presented. The results of operations for any interim period are not necessarily indicative of the results of operations for any other interim period or for a full fiscal year.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">In November 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-07, <i style="font-style:italic;">Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures,</i> by 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 plans to adopt the provisions of ASU 2023-07 as of January 31, 2025. The Company does not expect the adoption of this ASU to have an impact on its financial position, results of operations or cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">In November 2024, the FASB issued ASU 2024-03, <i style="font-style:italic;">Income Statement—Reporting Comprehensive Income—Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses</i>, which requires public business entities to disclose specific information about certain costs and expenses. The amendments in this update are effective for fiscal years beginning after December 15, 2026, and interim periods within fiscal years beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating the effects, if any, that the adoption of ASU 2024-03 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;text-align:justify;margin:0pt 0pt 8pt 0pt;">There are no other recently issued accounting pronouncements that have not yet been adopted that the Company considers material to its condensed consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 2 – REVENUES FROM CONTRACTS WITH CUSTOMERS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following table presents consolidated revenues for the three and nine months ended October 31, 2024 and 2023, 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;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:85.55%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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:12.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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:12.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 239,489</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 92,066</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 559,069</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 239,866</p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Republic of Ireland</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,039</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 139,014</p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United Kingdom</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 538</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,330</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,597</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 29,899</p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Consolidated Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 257,008</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 163,755</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 641,705</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 408,779</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 15 to the condensed consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Contract Termination </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 8pt 0pt;">For APC’s project to construct a gas-fired power facility in Northern Ireland (the “Kilroot Project”), an estimated loss of approximately $12.6 million has been recognized, of which $2.6 million was recorded during the nine-month period ended October 31, 2024 and the remainder was recorded in the prior fiscal year. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 0pt 0pt;">APC provided 14 days’ notice to terminate as a result of project owner breaches of the contract. Those breaches were not resolved during that <span style="-sec-ix-hidden:Hidden_Lx2DgqIESUqmwdvn7nUsnw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">14-day</span></span> period, as a result of which the contract terminated on May 3, 2024. Subsequently, the project owner made a draw for the full amount of a $9.2 million irrevocable letter of credit, or on-demand performance bond, </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">issued by the Company’s bank. This amount is now part of the open and disputed claims related to this project because APC and the Company believe the project owner initiated the draw without cause and, therefore, the amount should be refunded. This amount is included in accounts receivable as of October 31, 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 8pt 0pt;">APC has significant billable receivables, unresolved contract variations and claims for extensions of time, among other issues, related to the Kilroot Project. The project owner has asserted counterclaims that APC disputes. APC will continue to pursue all of its rights under the contract, and will do so through legal means if necessary. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;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 can result in large contract liability or contract asset balances early in contract lives that decline over the terms of the corresponding contracts. During the nine months ended October 31, 2024 and 2023, there were no unusual or one-time adjustments to these balances. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company recognized the following revenues that were included in the contract liabilities balances at the beginning of the respective period:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:39.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:39.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:39.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:39.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues recognized from contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 132,068</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 53,783</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 175,630</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 94,198</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 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 October 31, 2024 and January 31, 2024 were $19.6 million and $21.2 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">Variable consideration includes unapproved change orders where the Company has project-owner directive for additional work or other scope changes, but has not yet obtained approval for the associated price or the corresponding additional effort. These amounts are included in the transaction price when it is considered probable that the applicable costs, including those for additional effort, 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 claims based on management’s judgment regarding all reasonably available information. At October 31, 2024 and January 31, 2024, the aggregate amounts of such contract variations, that primarily related to an overseas project, and that were included in the corresponding transaction prices pending customer approvals, were $9.9 million and $8.4 million, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 (“RUPO”)</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">At October 31, 2024, the Company had RUPO of $0.8 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 <span style="-sec-ix-hidden:Hidden_g7wtmPrWFkOgMNgL53Qvgw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">one</span></span> to three years. However, the length of certain significant construction projects may exceed three years. The Company estimates that approximately 26% of the RUPO amount at October 31, 2024 will be included in the amount of consolidated revenues that will be recognized during the remainder of the fiscal year ending January 31, 2025 (“Fiscal 2025”). Most of the remaining amount of the RUPO amount at October 31, 2024 is expected to be recognized in revenues during the fiscal years ending January 31, 2026 (“Fiscal 2026”) and January 31, 2027 (“Fiscal 2027”). </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 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. 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;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:85.55%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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:12.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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:12.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 239,489</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 92,066</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 559,069</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 239,866</p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Republic of Ireland</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,039</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 139,014</p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United Kingdom</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 538</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,330</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,597</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 29,899</p></td></tr><tr><td style="vertical-align:bottom;width:38.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Consolidated Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 257,008</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.71%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.88%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 163,755</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 641,705</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 408,779</p></td></tr></table> 239489000 92066000 559069000 239866000 16981000 68359000 74039000 139014000 538000 3330000 8597000 29899000 257008000 163755000 641705000 408779000 12600000 2600000 P14D 9200000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:39.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:39.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:39.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:39.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues recognized from contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 132,068</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 53,783</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 175,630</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 94,198</p></td></tr></table> 132068000 53783000 175630000 94198000 19600000 21200000 9900000 8400000 800000000 P3Y P3Y 0.26 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 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;text-align:justify;margin:0pt 0pt 6pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Cash Equivalents</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 6pt 0pt;">At October 31, 2024 and January 31, 2024, 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 October 31, 2024 and January 31, 2024 were $0.4 million and $0.7 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 6pt 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;text-align:justify;margin:0pt 0pt 6pt 0pt;">The Company’s investments consisted of the following as of October 31, 2024 and 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;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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Short-term investments</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 124,490</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 109,489</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Available-for-sale securities</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 206,443</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 105,884</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Total investments</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 330,933</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 215,373</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;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 6pt 0pt;">Short-term investments as of October 31, 2024 and January 31, 2024 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. The balances of accrued interest on the CDs at October 31, 2024 and January 31, 2024 were $2.0 million and $4.5 million, respectively. Interest income is recorded when earned and is included in other income, net, in the condensed consolidated statements of earnings. At October 31, 2024 and January 31, 2024, the weighted average annual interest rates of the outstanding CDs were 4.8% and 5.4%, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 6pt 0pt;"><i style="font-style:italic;">Available-For-Sale Securities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s available-for-sale (“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 October 31, 2024 and 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;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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:61.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gains</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">U.S. Treasury notes:</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due within one 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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,323</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 161</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 32</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,452</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in one to three years</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 72,751</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 488</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 73,143</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in three to five years</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 73,274</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 425</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 784</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 72,915</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">U.S. corporate debt security:</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in one to three years</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,046</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 113</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,933</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Totals</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 206,394</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,074</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 206,443</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:61.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gains</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">U.S. Treasury notes:</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in one to three years</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,217</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 230</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,555</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">U.S. corporate debt security:</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in one to three years</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,406</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,329</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Totals</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,623</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 307</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 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;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">As of October 31, 2024 and January 31, 2024, interest receivable in the amounts of $1.3 million were included in the balances of AFS securities. For the three and nine months ended October 31, 2024 and 2023, 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.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 8pt 0pt;">The Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of October 31, 2024 and 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 investments before recovery of their corresponding amortized cost bases.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;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 Investments </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">Earnings on investments for the three and nine months ended October 31, 2024 were $4.8 million and $14.0 million, respectively, and they were $4.0 million and $9.7 million for the three and nine months ended October 31, 2023, respectively. Earnings on investments are included in other income, net, in the condensed consolidated statements of earnings.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;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 October 31, 2024 and January 31, 2024, approximately 2% and 12%, respectively, of the Company’s cash and cash equivalents were held by 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.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p> 400000 700000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Short-term investments</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 124,490</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 109,489</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Available-for-sale securities</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 206,443</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 105,884</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Total investments</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 330,933</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 215,373</span></p></td></tr></table> 124490000 109489000 206443000 105884000 330933000 215373000 P1Y P1Y 2000000.0 4500000 0.048 0.054 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:61.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gains</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">U.S. Treasury notes:</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due within one 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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,323</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 161</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 32</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,452</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in one to three years</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 72,751</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 488</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 73,143</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in three to five years</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 73,274</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 425</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 784</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 72,915</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">U.S. corporate debt security:</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in one to three years</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,046</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 113</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,933</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Totals</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 206,394</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,074</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 206,443</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:61.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gains</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">U.S. Treasury notes:</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in one to three years</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,217</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 230</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,555</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">U.S. corporate debt security:</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Due in one to three years</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;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,406</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,329</p></td></tr><tr><td style="vertical-align:bottom;width:35.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Totals</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;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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,623</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 307</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,884</p></td></tr></table> 50323000 161000 32000 50452000 72751000 488000 96000 73143000 73274000 425000 784000 72915000 10046000 113000 9933000 206394000 1074000 1025000 206443000 96217000 568000 230000 96555000 9406000 77000 9329000 105623000 568000 307000 105884000 1300000 1300000 0 0 0 0 0 0 0 0 4800000 14000000.0 4000000.0 9700000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 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;margin:8pt 0pt 8pt 0pt;">The following table presents the Company’s financial instruments as of October 31, 2024 and January 31, 2024 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;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:87.88%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:32.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:32.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cash equivalents:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Money market fund</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</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;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,995</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 126,646</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Available-for-sale securities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">U.S. Treasury notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 196,510</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,555</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">U.S. corporate debt security</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,933</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,995</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 206,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 126,646</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,884</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:87.88%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:32.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:32.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cash equivalents:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Money market fund</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</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;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,995</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 126,646</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Available-for-sale securities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">U.S. Treasury notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 196,510</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,555</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">U.S. corporate debt security</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,933</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:30.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,995</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 206,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 126,646</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,884</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 91995000 126646000 196510000 96555000 9933000 9329000 91995000 206443000 126646000 105884000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 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;text-align:justify;margin:0pt 0pt 8pt 0pt;">Accounts receivable include amounts that have been billed and amounts that are billable to customers. As of October 31, 2024, there were billable amounts related to an overseas project in the total amount of $24.1 million, including the expected refund of the letter of credit draw identified in Note 2.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company may extend credit to a customer without requiring tangible collateral based on an evaluation of the customer’s financial condition and other factors. Customer payments on other construction, fabrication and field service contracts are generally due within 30 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts and notes receivable is expected to 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 the three and nine months ended October 31, 2024 were $0.2 million and $0.7 million, respectively. The amounts of the provision for credit losses for the three and nine months ended October 31, </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">2023 were insignificant. The allowance for credit losses at October 31, 2024 and January 31, 2024 was $2.5 million and $1.8 million, respectively. </p> 24100000 200000 700000 2500000 1800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 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;text-align:justify;margin:0pt 0pt 8pt 0pt;">At both October 31, 2024 and January 31, 2024, the goodwill balances related primarily to the GPS and TRC reporting units, and were $18.5 <span style="-sec-ix-hidden:Hidden_1S-674hXEkauhh8Ys2eQIA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">million</span></span> and $9.5 <span style="-sec-ix-hidden:Hidden_aHxD8DoKmU21ucPnY857qw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">million</span></span>, respectively. Management does not believe that any events or circumstances occurred or arose since January 31, 2024, that required an updated assessment of the goodwill balances of either the GPS or TRC reporting units. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 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 October 31, 2024 and 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;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:90%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:27.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:27.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:8.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:29.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:29.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Useful Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Trade name</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">15 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,674</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,825</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,450</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,049</p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Customer relationships</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 817</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 99</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 748</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 168</p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Totals</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,491</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,198</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,217</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 8pt 0pt;">The following is a schedule of future amounts of amortization related to purchased intangibles:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;width:12.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Years Ending January 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Expense</b></p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2025 (remainder)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:12.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 98</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:middle;width:12.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 376</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:middle;width:12.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:middle;width:12.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:12.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:middle;width:12.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 550</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:12.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,924</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 18500000 9500000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:90%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:27.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:27.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:8.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:29.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:29.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Useful Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Trade name</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">15 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,674</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,825</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,450</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,049</p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Customer relationships</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 817</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 99</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 748</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 168</p></td></tr><tr><td style="vertical-align:bottom;width:27.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Totals</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,491</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,198</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,217</p></td></tr></table> P15Y 4499000 2674000 1825000 4499000 2450000 2049000 P10Y 916000 817000 99000 916000 748000 168000 5415000 3491000 1924000 5415000 3198000 2217000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;width:12.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Years Ending January 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Expense</b></p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2025 (remainder)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:12.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 98</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:middle;width:12.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 376</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:middle;width:12.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:middle;width:12.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">2029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:12.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:middle;width:12.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 550</p></td></tr><tr><td style="vertical-align:bottom;width:83.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:12.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,924</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 98000 376000 300000 300000 300000 550000 1924000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 7 – FINANCING ARRANGEMENTS </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">On May 24, 2024, the Company and the Bank executed the Second Amended and Restated Replacement Credit Agreement with an expiration date of May 31, 2027 (the “New Credit Agreement”). The New Credit Agreement supersedes the now expired credit agreement, as amended, that was executed on May 15, 2017 with an expiration date of May 31, 2024 (the “Expired Credit Agreement”), reduces the base lending commitment amount from $50.0 million to $35.0 million, increases the letter of credit fees to be consistent with current market conditions, and establishes the interest rate for revolving loans at the Secured Overnight Financing Rate (“SOFR”) <span style="-sec-ix-hidden:Hidden__1cZawe6HUquF5XlLDQ12Q;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">plus</span></span> 1.85%. In addition to the base commitment, the new facility includes an accordion feature that allows for an additional commitment amount of $30.0 million, subject to certain conditions, that represents an increase from the $10.0 million accordion provided by the Expired Credit Agreement. The Company may 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 New Credit Agreement. Further, on May 31, 2024, the Company completed the negotiation of a companion facility, in the amount of $25.0 million, pursuant to which APC, the Company’s Irish subsidiary, may cause the Bank’s European entity to issue letters of credit on its behalf that will be secured by a blanket parent company guarantee issued by Argan to the Bank.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">At October 31, 2024 and January 31, 2024, the Company did not have any borrowings outstanding under the New Credit Agreement or the Expired Credit Agreement, respectively. At October 31, 2024, there were no outstanding letters of credit issued under the credit facilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 New Credit Agreement requires that the Company comply with certain financial covenants at its fiscal year-end and at each fiscal quarter-end. The New Credit Agreement includes other terms, covenants and events of default that are </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">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 October 31, 2024, the Company was in compliance with the covenants and other requirements of the New Credit Agreement.</p> 50000000.0 35000000.0 0.0185 30000000.0 10000000.0 25000000.0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 8 – COMMITMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;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 become available and monetary damages or other costs or losses are determined to be probable, the Company would record such losses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">As of October 31, 2024, the estimated amounts of the Company’s unsatisfied bonded performance obligations, covering all of its subsidiaries, was approximately $0.3 billion. As of October 31, 2024, the outstanding amount of bonds covering other risks, including warranty obligations and contract payment retentions related to completed activities, was $22.9 million. Not all of our projects require bonding. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company also provided a financial guarantee, subject to certain terms and conditions, up to the amount of $3.6 million in support of business development efforts. An estimated loss related to this guarantee was recorded during the year ended January 31, 2022 (“Fiscal 2022”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;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_FHd-QHCrZkO3NR7XhYErxw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">nine</span></span> to <span style="-sec-ix-hidden:Hidden_NmVmFwIPTEieO5g0fBCYjg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">twenty-four months</span></span> after the completion of construction on a particular project. Because of the requirements 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 assurance-type warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the condensed consolidated balances sheets. The liability amounts may be periodically adjusted to reflect changes in the estimated size and number of expected warranty claims.</p> 300000000 22900000 3600000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 9 – LEGAL CONTINGENCIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the normal course of business, the Company may have pending claims and legal proceedings. The Company maintains accrued expense balances for the estimated amounts of legal costs expected to be billed related to any significant matter. In the opinion of management, based on information available at this time, there were no current claims and proceedings that were expected to have a material adverse effect on the condensed consolidated financial statements as of October 31, 2024. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 10 – STOCK-BASED COMPENSATION </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">Expense amounts related to stock awards for the three and nine months ended October 31, 2024 were $1.2 million and $3.4 million, respectively, and they were $1.2 million and $3.4 million for the three and nine months ended October 31, 2023, respectively. At October 31, 2024, there was $5.9 million in unrecognized compensation costs related to outstanding stock awards that the Company expects to recognize over the next three years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;">Stock Options</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">A summary of stock option activity for the nine months ended October 31, 2024 is 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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Per Share</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Per Share</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding, February 1, 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.95</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.67</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.43</p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 61.22</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Exercised</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (800)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.59</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (13)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 46.72</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding, October 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45.61</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.70</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.26</p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Exercisable, October 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 46.22</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.51</p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">Vested or expected to vest, October 31, 2024</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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45.61</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.70</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.26</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;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 8pt 0pt;">The changes in the number of non-vested options to purchase shares of common stock for the nine months ended October 31, 2024 is 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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Per Share</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Non-vested, February 1, 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 92</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.85</p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13.89</p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (33)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8.44</p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (7)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.67</p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Non-vested, October 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 58</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8.15</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 8pt 0pt;">The total intrinsic value amounts related to the stock options exercised during the nine months ended October 31, 2024 and 2023 were $24.1 million and $1.5 million, respectively. As of October 31, 2024, the aggregate intrinsic values of the underlying common stock outstanding and exercisable stock options that were “in-the-money” were $48.2 million and $42.9 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s stock awards include total stock return performance-based restricted stock units (“PRSUs”), earnings per share performance-based restricted stock units (“EPRSUs”), renewable energy performance-based restricted stock units (“RRSUs”), and time-based restricted stock units (“TRSUs”). <span style="background:#ffffff;">During the nine months ended October 31, 2024, the Company awarded PRSUs covering a target of </span><span style="background:#ffffff;">5,000</span><span style="background:#ffffff;"> shares of common stock, EPRSUs covering a target of </span><span style="background:#ffffff;">10,000</span><span style="background:#ffffff;"> shares of common stock, RRSUs covering a target of </span><span style="background:#ffffff;">5,000</span><span style="background:#ffffff;"> shares of common stock and TRSUs covering </span><span style="background:#ffffff;">42,050</span><span style="background:#ffffff;"> shares of common stock. The Company issued </span><span style="background:#ffffff;">3,988</span><span style="background:#ffffff;"> shares of common stock based on the amount of cash dividends deemed paid on shares that were earned pursuant to the awards that were settled during the period. The number of shares of common stock to be issued under certain awards may exceed the number of target shares if certain performance goals are exceeded.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 the nine months ended October 31, 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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Per Share</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding, February 1, 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 348</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.21</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43.82</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Issued</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (70)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42.58</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (64)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 27.04</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding, October 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 295</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31.69</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;">Shares Withheld and Treasury Stock </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For the nine months ended October 31, 2024, the Company accepted 532,860 shares of common stock at the average price per share of $73.92 for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements. For the nine months ended October 31, 2023, the Company accepted 29,058 shares of common stock at the average price per share of $47.16 for the exercise price and/or tax withholding in connection with stock option exercises and other share-based award settlements. For the nine months ended October 31, 2024 and 2023, the Company used 337,884 shares and 132,656 shares of treasury stock, respectively, to settle stock option exercises and other share-based awards.</p> 1200000 3400000 1200000 3400000 5900000 P3Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">A summary of stock option activity for the nine months ended October 31, 2024 is 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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Per Share</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Per Share</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding, February 1, 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.95</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.67</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.43</p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 61.22</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Exercised</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (800)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.59</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (13)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 46.72</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding, October 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45.61</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.70</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.26</p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Exercisable, October 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 46.22</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.51</p></td></tr><tr><td style="vertical-align:bottom;width:47.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">Vested or expected to vest, October 31, 2024</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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45.61</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.70</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10.26</span></p></td></tr></table> 1365000 44.95 P4Y8M1D 10.43 6000 61.22 800000 44.59 13000 46.72 558000 45.61 P4Y8M12D 10.26 500000 46.22 P4Y3M18D 10.51 558000 45.61 P4Y8M12D 10.26 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 8pt 0pt;">The changes in the number of non-vested options to purchase shares of common stock for the nine months ended October 31, 2024 is 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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Per Share</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Non-vested, February 1, 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 92</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.85</p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13.89</p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (33)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8.44</p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (7)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.67</p></td></tr><tr><td style="vertical-align:bottom;width:73.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Non-vested, October 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 58</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8.15</p></td></tr></table> 92000 7.85 6000 13.89 33000 8.44 7000 7.67 58000 8.15 24100000 1500000 48200000 42900000 5000 10000 5000 42050 3988 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 the nine months ended October 31, 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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted-</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant-Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Per Share</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding, February 1, 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 348</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.21</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43.82</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Issued</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (70)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42.58</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (64)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 27.04</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding, October 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;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 295</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31.69</p></td></tr></table> 348000 30.21 81000 43.82 70000 42.58 64000 27.04 295000 31.69 532860 73.92 29058 47.16 337884 132656 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 11 – INCOME TAXES </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s income tax amounts for the nine months ended October 31, 2024 and 2023 differed from corresponding amounts computed by applying the federal corporate income tax rate of 21% to the income before income taxes for the periods 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;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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></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;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></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;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Computed expected 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,240</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,711</span></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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Difference resulting from:</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">State income taxes, net of federal tax effect</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,297</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,023</span></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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Unrecognized tax loss benefit</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 921</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,255</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Executive compensation limitation</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 917</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 672</span></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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Meals and entertainment expense</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 616</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 385</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Foreign tax rate differential</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (556)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,699)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Other permanent differences and adjustments, 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (953)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 269</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,482</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,616</span></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;margin:0pt;"><span style="visibility:hidden;">​</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;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;">Net Operating Loss (“NOL”) Carryback</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">As a result of the tax changes enacted by the Coronavirus, Aid, Relief and Economic Security Act signed into law in March 2020 (the “CARES Act”), the Company made a filing during the year ended January 31, 2021 with the Internal Revenue Service (the “IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 (“Fiscal 2016”) and 2015 (“Fiscal 2015”) in the total amount of approximately $12.7 million. At the instruction of the IRS, the Company filed amended income tax returns for Fiscal 2016 and Fiscal 2015 during Fiscal 2024; the IRS has not completed the examination and approval process for the Company’s amended tax returns and refund request.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 Credits</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">During the year ended January 31, 2023 (“Fiscal 2023”), the Company filed amended federal income tax returns for Fiscal 2022 and for the year ended January 31, 2021 (“Fiscal 2021”) that included 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. In May 2023, the Company received notification that these amended federal income tax returns were selected for </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">examination. At October 31, 2024, the examination was progressing through the stages of documentation requests and review.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;text-align:justify;margin:0pt 0pt 6pt 0pt;">As of October 31, 2024 and January 31, 2024, the balances of other current assets in the condensed consolidated balance sheet included income tax refunds receivable, related accrued interest, and prepaid income taxes in the total amounts of approximately $18.9 million and $18.3 million, respectively. The income tax refunds included the amounts expected to be received from the IRS upon its examination 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;text-align:justify;margin:0pt 0pt 6pt 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;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 significant judgments to apply. 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;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;text-align:justify;margin:0pt 0pt 8pt 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. During the nine months ended October 31, 2024, the Company made investments of approximately $3.3 million in STC investments that were committed as of January 31, 2024. As of October 31, 2024, the Company had no remaining cash investment commitments related to its STC investments. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">At October 31, 2024 and January 31, 2024, the investment accounts balances were $1.2 million and $2.1 million, respectively, which are included in right-of-use and other assets in the condensed consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 condensed consolidated statement of earnings. For the nine months ended October 31, 2024, the Company recorded $0.7 million of investment amortization related to the STC investment that qualifies for PAM. For the three months ended October 31, 2024, the recorded amount of amortization related to this investment was not material. The amounts of non-income tax-related activity and other returns related to this investment were not material for the three and nine months ended October 31, 2024. During the nine months ended October 31, 2023, the Company did not have any STC investments that qualified for PAM.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">For the Company’s STC investments that do not qualify for PAM, the Company accounts for the investments using the equity method of accounting and includes income and losses related to the investment in other income in the Company’s condensed consolidated statements of earnings. For the three and nine months ended October 31, 2024 and 2023, the Company’s shares of activity from these STC investments were not material.</p> 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;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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></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;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></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;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Computed expected 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,240</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,711</span></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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Difference resulting from:</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">State income taxes, net of federal tax effect</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,297</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,023</span></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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Unrecognized tax loss benefit</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 921</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,255</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Executive compensation limitation</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 917</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 672</span></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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Meals and entertainment expense</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 616</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 385</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Foreign tax rate differential</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (556)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,699)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Other permanent differences and adjustments, 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (953)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 269</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:68.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,482</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,616</span></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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 15240000 6711000 2297000 2023000 -921000 -3255000 917000 672000 616000 385000 -556000 -1699000 -953000 269000 18482000 11616000 12700000 5800000 2400000 18900000 18300000 3300000 0 1200000 2100000 700000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 12 – EARNINGS PER SHARE</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">Potentially dilutive securities include stock options and restricted stock units. Diluted earnings per share includes only securities that are actually dilutive. Basic and diluted earnings per share are computed as follows (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;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:90%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,010</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,464</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 54,090</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 20,340</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted average shares outstanding – basic</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,530</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,328</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,398</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13,381</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;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</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 504</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 231</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 432</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 168</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted average shares outstanding – diluted</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,034</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,559</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,830</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13,549</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></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:90%;"><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income per share</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Basic</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.07</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.41</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.04</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1.52</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Diluted</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.00</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.40</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3.91</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1.50</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="margin-left:0pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Anti-dilutive securities not included</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 690</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 140</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 881</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> Basic and diluted earnings per share are computed as follows (shares in thousands)<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:90%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,010</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,464</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 54,090</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 20,340</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted average shares outstanding – basic</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,530</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,328</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,398</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13,381</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;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</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 504</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 231</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 432</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 168</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted average shares outstanding – diluted</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,034</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,559</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,830</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13,549</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></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:90%;"><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income per share</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Basic</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.07</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.41</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4.04</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1.52</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Diluted</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2.00</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.40</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3.91</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1.50</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="margin-left:0pt;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Anti-dilutive securities not included</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 690</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 140</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 881</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 28010000 5464000 54090000 20340000 13530000 13328000 13398000 13381000 504000 231000 432000 168000 14034000 13559000 13830000 13549000 2.07 0.41 4.04 1.52 2.00 0.40 3.91 1.50 690000 140000 881000 0.25 0.30 0.375 During Fiscal 2025 and Fiscal 2024, the Company paid dividends to stockholders as follows:<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:18.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:20.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amount Per</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Record Date</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Payment Date</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:20.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Share</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">October 23, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">October 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:18.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.375</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">July 23, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">July 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:18.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.300</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">April 22, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">April 30, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:18.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.300</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">January 23, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">January 31, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:18.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.300</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">October 23, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">October 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:18.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.300</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">July 21, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">July 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:18.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.250</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">April 20, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">April 28, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:18.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.250</p></td></tr></table> 2024-10-23 2024-10-31 0.375 2024-07-23 2024-07-31 0.300 2024-04-22 2024-04-30 0.300 2024-01-23 2024-01-31 0.300 2023-10-23 2023-10-31 0.300 2023-07-21 2023-07-31 0.250 2023-04-20 2023-04-28 0.250 11300 212441 600000 57.11 8400000 39.67 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 14 – CUSTOMER CONCENTRATIONS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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. The following schedule presents the percentage of consolidated revenues for each reportable business segment for the three and nine months ended October 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;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:95%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;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.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Power industry services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 82.5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74.1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 77.3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 72.6</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:38.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Industrial construction services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16.1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23.5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 24.8</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Telecommunications infrastructure services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1.4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2.4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2.6</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 8pt 0pt;">The Company’s most significant customer relationships for the three months ended October 31, 2024 included four power industry services customers, which accounted for 29%, 15%, 13% and 11% of consolidated revenues. The Company’s most significant customer relationships for the three months ended October 31, 2023 included three power industry services customers, which accounted for 23%, 20% and 17% of consolidated revenues. The Company’s most significant customer relationships for the nine months ended October 31, 2024 included two power industry services customers, which accounted for 28% and 12% of consolidated revenues. The Company’s most significant customer relationships for the nine months ended October 31, 2023 included three power industry services customers, which accounted for 19%, 17% and 14% of consolidated revenues.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">The accounts receivable balances from four major customers represented 18%, 18%, 17% and 12% of the corresponding consolidated balance as of October 31, 2024. Accounts receivable balances from three major customers represented 16%, 14% and 14% of the corresponding consolidated balance as of January 31, 2024. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 8pt 0pt;">The contract asset balances associated with four major customers represented 17%, 17%, 14% and 14% of the corresponding consolidated balance as of October 31, 2024. The contract asset balances associated with two major customers represented 39% and 32% of the corresponding consolidated balance 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;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:95%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;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;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.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Power industry services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 82.5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74.1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 77.3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 72.6</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:38.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Industrial construction services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16.1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23.5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 24.8</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Telecommunications infrastructure services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1.4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2.4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2.6</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 0.825 0.741 0.773 0.726 0.161 0.235 0.210 0.248 0.014 0.024 0.017 0.026 4 0.29 0.15 0.13 0.11 3 0.23 0.20 0.17 2 0.28 0.12 3 0.19 0.17 0.14 4 0.18 0.18 0.17 0.12 3 0.16 0.14 0.14 4 0.17 0.17 0.14 0.14 2 0.39 0.32 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 15 – SEGMENT REPORTING </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 CODM, 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;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 the three and nine months ended October 31, 2024, intersegment revenues were $3.5 million and $4.8 million, respectively. For the three and nine months ended October 31, 2023, intersegment revenues were not material.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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 the three and nine months ended October 31, 2024 and 2023. 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;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.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 212,096</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41,337</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,575</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 257,008</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 173,283</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 36,757</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,641</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 212,681</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 38,813</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,580</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 934</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,327</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,466</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,848</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 705</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,976</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,995</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 30,347</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,732</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 229</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (2,976)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 30,332</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other income (loss), net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,618</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1)</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,028</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,646</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 35,965</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,733</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 228</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,948)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 36,978</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,968</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,010</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 98</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 98</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 158</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 166</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 109</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 433</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,304</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 236</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,547</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 542,558</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 50,294</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,236</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 120,053</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 717,141</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 411,735</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 20,663</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,131</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,635</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 436,164</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,467</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 572,828</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 67,172</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,673</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 122,191</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 768,864</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:8pt;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.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td 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;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 121,300</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 38,434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,021</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 163,755</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 107,781</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 33,899</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,840</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 144,520</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,519</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,181</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 19,235</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,390</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,626</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 608</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,751</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,375</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,129</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,909</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 573</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (2,751)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,860</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,391</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </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;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 342</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,733</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,520</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,909</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 573</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (2,409)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,593</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,129</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,464</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 98</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 98</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 137</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 249</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 102</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 489</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 583</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 497</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 31</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,112</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 399,489</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 39,843</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,701</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 71,038</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 514,071</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 244,662</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 25,839</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,801</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,592</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 273,894</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;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.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;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.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total assets </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 426,466</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 57,112</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,519</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 73,555</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 563,652</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 496,122</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 134,678</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,905</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 641,705</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 422,508</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 117,836</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,985</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 548,329</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 73,614</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,842</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,920</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 93,376</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21,786</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,686</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,984</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,392</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 37,848</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 51,828</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,156</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 936</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (8,392)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 55,528</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,386</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,654</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 17,044</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 66,214</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,158</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 938</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (5,738)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 72,572</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,482</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 54,090</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 293</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 293</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 443</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 621</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 310</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,376</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,523</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 509</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 184</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,218</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 296,821</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 101,497</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,461</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 408,779</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 255,210</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 88,537</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,831</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 351,578</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41,611</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,960</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,630</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 57,201</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 17,700</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,532</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,038</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,197</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 32,467</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 23,911</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,428</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 592</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (8,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 24,734</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other income (loss), net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,088</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (3)</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,863)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,222</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 32,999</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,428</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 589</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (10,060)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 31,956</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,616</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 20,340</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 294</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 294</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 393</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 813</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 315</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,524</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,120</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 973</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,143</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 1 3500000 4800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 212,096</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41,337</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,575</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 257,008</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 173,283</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 36,757</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,641</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 212,681</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 38,813</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,580</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 934</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,327</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,466</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,848</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 705</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,976</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,995</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 30,347</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,732</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 229</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (2,976)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 30,332</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other income (loss), net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,618</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1)</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,028</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,646</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 35,965</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,733</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 228</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,948)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 36,978</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,968</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,010</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 98</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 98</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 158</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 166</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 109</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 433</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,304</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 236</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,547</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 542,558</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 50,294</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,236</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 120,053</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 717,141</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 411,735</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 20,663</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,131</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,635</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 436,164</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,467</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 572,828</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 67,172</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,673</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 122,191</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 768,864</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:8pt;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.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td 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;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </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:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 121,300</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 38,434</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,021</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 163,755</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 107,781</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 33,899</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,840</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 144,520</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,519</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,535</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,181</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 19,235</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,390</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,626</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 608</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,751</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,375</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,129</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,909</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 573</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (2,751)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,860</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,391</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </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;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 342</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,733</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,520</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,909</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 573</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (2,409)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,593</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,129</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,464</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 98</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 98</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 137</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 249</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 102</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 489</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 583</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 497</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 31</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,112</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 399,489</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 39,843</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,701</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 71,038</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 514,071</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 244,662</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 25,839</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,801</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,592</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 273,894</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;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.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;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.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total assets </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 426,466</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 57,112</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,519</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 73,555</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 563,652</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 496,122</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 134,678</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,905</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 641,705</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 422,508</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 117,836</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,985</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 548,329</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 73,614</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,842</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,920</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 93,376</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21,786</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,686</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,984</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,392</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 37,848</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 51,828</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,156</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 936</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (8,392)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 55,528</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,386</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,654</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 17,044</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 66,214</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,158</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 938</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (5,738)</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 72,572</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,482</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 54,090</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 293</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 293</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 443</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 621</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 310</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,376</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,523</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 509</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 184</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,218</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></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;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 296,821</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 101,497</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,461</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 408,779</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 255,210</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 88,537</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,831</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 351,578</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 41,611</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,960</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,630</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 57,201</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 17,700</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,532</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,038</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,197</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 32,467</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 23,911</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,428</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 592</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (8,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 24,734</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other income (loss), net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,088</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (3)</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;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,863)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,222</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income (loss) before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 32,999</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,428</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 589</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (10,060)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 31,956</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,616</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 20,340</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amortization of intangibles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 294</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 294</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 393</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 813</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 315</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,524</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment additions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,120</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 973</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,143</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 212096000 41337000 3575000 257008000 173283000 36757000 2641000 212681000 38813000 4580000 934000 44327000 8466000 1848000 705000 2976000 13995000 30347000 2732000 229000 -2976000 30332000 5618000 1000 -1000 1028000 6646000 35965000 2733000 228000 -1948000 36978000 8968000 28010000 98000 98000 158000 166000 109000 433000 2304000 236000 5000 2000 2547000 542558000 50294000 4236000 120053000 717141000 411735000 20663000 2131000 1635000 436164000 18476000 9467000 90000 28033000 572828000 67172000 6673000 122191000 768864000 121300000 38434000 4021000 163755000 107781000 33899000 2840000 144520000 13519000 4535000 1181000 19235000 6390000 1626000 608000 2751000 11375000 7129000 2909000 573000 -2751000 7860000 3391000 342000 3733000 10520000 2909000 573000 -2409000 11593000 6129000 5464000 98000 98000 137000 249000 102000 1000 489000 583000 497000 31000 1000 1112000 399489000 39843000 3701000 71038000 514071000 244662000 25839000 1801000 1592000 273894000 18476000 9467000 90000 28033000 426466000 57112000 6519000 73555000 563652000 496122000 134678000 10905000 641705000 422508000 117836000 7985000 548329000 73614000 16842000 2920000 93376000 21786000 5686000 1984000 8392000 37848000 51828000 11156000 936000 -8392000 55528000 14386000 2000 2000 2654000 17044000 66214000 11158000 938000 -5738000 72572000 18482000 54090000 293000 293000 443000 621000 310000 2000 1376000 4523000 509000 184000 2000 5218000 296821000 101497000 10461000 408779000 255210000 88537000 7831000 351578000 41611000 12960000 2630000 57201000 17700000 4532000 2038000 8197000 32467000 23911000 8428000 592000 -8197000 24734000 9088000 -3000 -1863000 7222000 32999000 8428000 589000 -10060000 31956000 11616000 20340000 294000 294000 393000 813000 315000 3000 1524000 1120000 973000 49000 1000 2143000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 16 — SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 6pt 0pt;">Other current assets consisted of the following at October 31, 2024 and 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;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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax refunds receivable and prepaid income taxes</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,926</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,267</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Raw materials inventory</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,438</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,985</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Prepaid expenses</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,557</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,035</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,658</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,972</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Total other current 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 34,579</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 39,259</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;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:8pt 0pt 6pt 0pt;">Accrued expenses consisted of the following at October 31, 2024 and 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;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:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued project costs</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 39,902</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,135</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued compensation</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 23,139</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21,206</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,648</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,726</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,704</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,654</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Total accrued expenses</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 78,393</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 81,721</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income tax refunds receivable and prepaid income taxes</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,926</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,267</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Raw materials inventory</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,438</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,985</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Prepaid expenses</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,557</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,035</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,658</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,972</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Total other current 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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 34,579</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 39,259</span></p></td></tr></table> 18926000 18267000 3438000 9985000 6557000 6035000 5658000 4972000 34579000 39259000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued project costs</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 39,902</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,135</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued compensation</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 23,139</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21,206</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,648</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,726</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,704</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 8,654</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Total accrued expenses</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;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.49%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 78,393</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 81,721</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 39902000 49135000 23139000 21206000 2648000 2726000 12704000 8654000 78393000 81721000 false false false false