0001558370-23-010910.txt : 20230608 0001558370-23-010910.hdr.sgml : 20230608 20230608162526 ACCESSION NUMBER: 0001558370-23-010910 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 79 CONFORMED PERIOD OF REPORT: 20230430 FILED AS OF DATE: 20230608 DATE AS OF CHANGE: 20230608 FILER: COMPANY DATA: COMPANY CONFORMED NAME: ARGAN INC CENTRAL INDEX KEY: 0000100591 STANDARD INDUSTRIAL CLASSIFICATION: CONSTRUCTION SPECIAL TRADE CONTRACTORS [1700] 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: 231002244 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-20230430x10q.htm 10-Q
0000100591--01-312024Q1falseARGAN INC0015828289P2Yhttp://fasb.org/us-gaap/2022#AvailableForSaleSecuritiesDebtSecuritiesCurrenthttp://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrenthttp://fasb.org/us-gaap/2022#LiabilitiesNoncurrentP9MP24M0.3333P3YP3Y0.250.250000100591agx:FraudulentlyInducedPaymentMember2023-02-012023-04-300000100591us-gaap:TreasuryStockMember2022-02-012022-04-300000100591us-gaap:TreasuryStockMember2023-02-012023-04-300000100591us-gaap:CommonStockMember2023-02-012023-04-300000100591us-gaap:CommonStockMember2022-02-012022-04-300000100591us-gaap:TreasuryStockMember2023-04-300000100591us-gaap:RetainedEarningsMember2023-04-300000100591us-gaap:AdditionalPaidInCapitalMember2023-04-300000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-300000100591us-gaap:TreasuryStockMember2023-01-310000100591us-gaap:RetainedEarningsMember2023-01-310000100591us-gaap:AdditionalPaidInCapitalMember2023-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-310000100591us-gaap:TreasuryStockMember2022-04-300000100591us-gaap:RetainedEarningsMember2022-04-300000100591us-gaap:NoncontrollingInterestMember2022-04-300000100591us-gaap:AdditionalPaidInCapitalMember2022-04-300000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-04-300000100591us-gaap:TreasuryStockMember2022-01-310000100591us-gaap:RetainedEarningsMember2022-01-310000100591us-gaap:NoncontrollingInterestMember2022-01-310000100591us-gaap:AdditionalPaidInCapitalMember2022-01-310000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-310000100591us-gaap:CommonStockMember2023-04-300000100591us-gaap:CommonStockMember2023-01-310000100591us-gaap:CommonStockMember2022-04-300000100591us-gaap:CommonStockMember2022-01-310000100591agx:IncentiveStockOptionsMemberagx:StockPlanMember2023-02-012023-04-300000100591us-gaap:RestrictedStockUnitsRSUMember2023-04-300000100591us-gaap:RestrictedStockUnitsRSUMember2023-01-310000100591us-gaap:RestrictedStockUnitsRSUMember2022-04-300000100591us-gaap:EmployeeStockOptionMember2023-02-012023-04-3000001005912023-05-012023-04-300000100591country:US2023-02-012023-04-300000100591country:IE2023-02-012023-04-300000100591country:GB2023-02-012023-04-300000100591country:US2022-02-012022-04-300000100591country:IE2022-02-012022-04-300000100591country:GB2022-02-012022-04-300000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-02-012023-04-300000100591us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-02-012022-04-300000100591agx:LettersOfCreditExpireOnMay312024Memberus-gaap:RevolvingCreditFacilityMember2023-03-060000100591us-gaap:LetterOfCreditMember2023-04-300000100591us-gaap:LetterOfCreditMember2023-01-310000100591us-gaap:OtherNonoperatingIncomeExpenseMember2023-02-012023-04-300000100591us-gaap:OtherNonoperatingIncomeExpenseMember2022-02-012022-04-300000100591agx:GemmaPowerSystemsMemberus-gaap:FinancialGuaranteeMember2023-04-300000100591agx:RobertsCompanyIncMember2023-04-300000100591agx:GemmaPowerSystemLlcMember2023-04-300000100591agx:RobertsCompanyIncMember2023-01-310000100591agx:GemmaPowerSystemLlcMember2023-01-310000100591us-gaap:TradeNamesMember2023-02-012023-04-300000100591us-gaap:CustomerRelationshipsMember2023-02-012023-04-300000100591us-gaap:TradeNamesMember2023-04-300000100591us-gaap:CustomerRelationshipsMember2023-04-300000100591us-gaap:TradeNamesMember2023-01-310000100591us-gaap:CustomerRelationshipsMember2023-01-310000100591us-gaap:RetainedEarningsMember2023-02-012023-04-300000100591us-gaap:RetainedEarningsMember2022-02-012022-04-300000100591us-gaap:CorporateNonSegmentMember2023-02-012023-04-300000100591us-gaap:CorporateNonSegmentMember2022-02-012022-04-3000001005912021-01-310000100591srt:MinimumMemberus-gaap:USTreasuryNotesSecuritiesMember2023-04-300000100591srt:MaximumMemberus-gaap:USTreasuryNotesSecuritiesMember2023-04-300000100591us-gaap:RevolvingCreditFacilityMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2023-03-062023-03-060000100591agx:TelecommunicationsInfrastructureServicesMember2023-02-012023-04-300000100591agx:PowerIndustryServicesMember2023-02-012023-04-300000100591agx:TelecommunicationsInfrastructureServicesMember2022-02-012022-04-300000100591agx:PowerIndustryServicesMember2022-02-012022-04-3000001005912022-02-012023-01-3100001005912021-02-012022-01-310000100591agx:MajorCustomerTwoMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerThreeMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerFourMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerTwoMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerTwoMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerThreeMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerOneMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerOneMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591agx:IndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2023-02-012023-04-300000100591agx:MajorCustomerTwoMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerThreeMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerOneMemberus-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerOneMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:MajorCustomerOneMemberagx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-02-012022-04-300000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2022-02-012022-04-300000100591agx:IndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:ProductConcentrationRiskMember2022-02-012022-04-3000001005912023-04-102023-04-1000001005912023-04-282023-04-2800001005912022-04-292022-04-290000100591us-gaap:EmployeeStockOptionMember2023-04-300000100591agx:Plan2020Member2020-06-2300001005912022-01-310000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:MoneyMarketFundsMember2023-04-300000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:MoneyMarketFundsMember2023-01-310000100591us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2023-04-300000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2023-04-300000100591us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2023-01-310000100591us-gaap:CorporateNonSegmentMember2023-04-300000100591agx:TelecommunicationsInfrastructureServicesMember2023-04-300000100591agx:PowerIndustryServicesMember2023-04-300000100591agx:IndustrialFabricationAndFieldServicesMember2023-04-300000100591us-gaap:CorporateNonSegmentMember2022-04-300000100591agx:TelecommunicationsInfrastructureServicesMember2022-04-300000100591agx:PowerIndustryServicesMember2022-04-300000100591agx:IndustrialFabricationAndFieldServicesMember2022-04-300000100591agx:IndustrialFabricationAndFieldServicesMember2023-02-012023-04-300000100591agx:IndustrialFabricationAndFieldServicesMember2022-02-012022-04-300000100591us-gaap:AdditionalPaidInCapitalMember2023-02-012023-04-300000100591us-gaap:AdditionalPaidInCapitalMember2022-02-012022-04-3000001005912023-06-050000100591us-gaap:HeldtomaturitySecuritiesMember2023-04-300000100591us-gaap:HeldtomaturitySecuritiesMember2023-01-310000100591agx:FraudulentlyInducedPaymentMember2023-03-072023-03-070000100591srt:MinimumMember2023-02-012023-04-300000100591srt:MaximumMember2023-02-012023-04-3000001005912022-04-300000100591us-gaap:RestrictedStockUnitsRSUMember2023-02-012023-04-300000100591srt:ExecutiveOfficerMemberagx:PerformanceBasedRestrictedStockUnitsMemberagx:StockPlanMember2023-02-012023-04-300000100591agx:TimeBasedRestrictedStockUnitsMember2023-04-300000100591agx:RenewablePerformanceBasedRestrictedStockUnitsMember2023-04-300000100591agx:PerformanceBasedRestrictedStockUnitsMember2023-04-300000100591agx:EarningsPerSharePerformanceBasedRestrictedStockUnitsMember2023-04-300000100591agx:TimeBasedRestrictedStockUnitsMember2022-04-300000100591agx:RenewablePerformanceBasedRestrictedStockUnitsMember2022-04-300000100591agx:PerformanceBasedRestrictedStockUnitsMember2022-04-300000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591us-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-02-012023-04-300000100591us-gaap:AssetsTotalMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-02-012023-01-310000100591agx:PowerIndustryServicesMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-02-012022-04-300000100591us-gaap:RevolvingCreditFacilityMember2023-03-062023-03-060000100591us-gaap:HeldtomaturitySecuritiesMember2023-02-012023-04-300000100591us-gaap:HeldtomaturitySecuritiesMember2022-02-012023-01-3100001005912022-02-012022-04-3000001005912020-01-310000100591us-gaap:USTreasuryNotesSecuritiesMember2023-04-3000001005912023-02-012023-04-3000001005912023-04-3000001005912023-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

April 30, 2023

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,410,645 shares as of June 5, 2023.

ARGAN, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF EARNINGS

(In thousands, except per share data)

(Unaudited)

Three Months Ended

April 30, 

    

2023

    

2022

REVENUES

$

103,675

$

100,277

Cost of revenues

 

89,451

 

80,539

GROSS PROFIT

 

14,224

 

19,738

Selling, general and administrative expenses

 

10,591

 

10,575

INCOME FROM OPERATIONS

 

3,633

 

9,163

Other (loss) income, net

 

(629)

 

595

INCOME BEFORE INCOME TAXES

 

3,004

 

9,758

Income tax expense

 

895

 

2,273

NET INCOME

 

2,109

 

7,485

Foreign currency translation adjustments

440

(1,264)

Net unrealized losses on available-for-sale securities

(37)

COMPREHENSIVE INCOME

$

2,512

$

6,221

NET INCOME PER SHARE

Basic

$

0.16

$

0.50

Diluted

$

0.16

$

0.50

WEIGHTED AVERAGE NUMBER OF SHARES OUTSTANDING

Basic

 

13,413

 

14,910

Diluted

 

13,546

 

14,992

CASH DIVIDENDS PER SHARE

$

0.25

$

0.25

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)

    

April 30, 

    

January 31, 

    

2023

    

2023

(Unaudited)

(Note 1)

ASSETS

CURRENT ASSETS

Cash and cash equivalents

$

195,947

$

173,947

Short-term investments

90,614

151,511

Available-for-sale securities

30,376

Accounts receivable, net

 

60,774

 

50,132

Contract assets

 

4,914

 

24,778

Other current assets

 

42,376

 

38,334

TOTAL CURRENT ASSETS

 

425,001

 

438,702

Property, plant and equipment, net

 

10,665

 

10,430

Goodwill

 

28,033

 

28,033

Intangible assets, net

2,511

2,609

Deferred taxes, net

3,606

3,689

Right-of-use and other assets

5,878

6,024

TOTAL ASSETS

$

475,694

$

489,487

LIABILITIES AND STOCKHOLDERS' EQUITY

CURRENT LIABILITIES

Accounts payable

$

36,334

$

56,375

Accrued expenses

 

44,755

 

49,867

Contract liabilities

 

111,308

 

96,261

TOTAL CURRENT LIABILITIES

 

192,397

 

202,503

Noncurrent liabilities

5,348

6,087

TOTAL LIABILITIES

 

197,745

 

208,590

COMMITMENTS AND CONTINGENCIES (see Notes 7 and 8)

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,414,404 and 13,441,590 shares outstanding at April 30, 2023 and January 31, 2023, respectively

 

2,374

 

2,374

Additional paid-in capital

 

161,347

 

162,208

Retained earnings

 

206,584

 

207,832

Less treasury stock, at cost – 2,413,885 and 2,386,699 shares at April 30, 2023 and January 31, 2023, respectively

(89,883)

(88,641)

Accumulated other comprehensive loss

(2,473)

(2,876)

TOTAL STOCKHOLDERS’ EQUITY

 

277,949

 

280,897

TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY

$

475,694

$

489,487

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 MONTHS ENDED APRIL 30, 2023 AND 2022

(Dollars in thousands)

(Unaudited)

Common Stock

Additional

Accumulated

    

Outstanding

    

Par

    

Paid-in

    

Retained

    

Treasury

    

Other Comprehensive

    

Non-controlling

    

Total

Shares

Value

Capital

Earnings

Stock

Loss

Interest

Equity

Balances, February 1, 2023

 

13,441,590

$

2,374

$

162,208

$

207,832

$

(88,641)

$

(2,876)

$

$

280,897

Net income

 

2,109

2,109

Foreign currency translation gain

440

440

Net unrealized losses on available-for-sale securities

(37)

(37)

Stock compensation expense

1,034

1,034

Stock option exercises and other share-based award settlements

 

65,470

(1,895)

2,439

544

Common stock repurchases

(92,656)

(3,681)

(3,681)

Cash dividends

 

(3,357)

(3,357)

Balances, April 30, 2023

 

13,414,404

$

2,374

$

161,347

$

206,584

$

(89,883)

$

(2,473)

$

$

277,949

Balances, February 1, 2022

15,257,688

$

2,368

$

158,190

$

188,690

$

(20,405)

$

(2,451)

$

(797)

$

325,595

Net income

7,485

7,485

Foreign currency translation loss

(1,264)

(1,264)

Stock compensation expense

920

920

Stock option exercises and other share-based award settlements

39,099

6

60

66

Common stock repurchases

 

(710,879)

(27,077)

(27,077)

Cash dividends

(3,712)

(3,712)

Balances, April 30, 2022

14,585,908

$

2,374

$

159,170

$

192,463

$

(47,482)

$

(3,715)

$

(797)

$

302,013

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)

    

Three Months Ended April 30, 

    

2023

    

2022

CASH FLOWS FROM OPERATING ACTIVITIES

Net income

$

2,109

$

7,485

Adjustments to reconcile net income to net cash used in operating activities

Changes in accrued interest on investments

1,081

(203)

Stock compensation expense

1,034

920

Depreciation

547

809

Lease expense

 

439

 

750

Deferred income tax expense

147

450

Amortization of intangible assets

 

98

 

166

Equity in loss (income) of solar energy investments

32

(610)

Other

 

25

 

(9)

Changes in operating assets and liabilities

Accounts receivable

 

(10,642)

 

(9,069)

Contract assets

19,864

(1,976)

Other assets

 

(4,089)

 

(2,291)

Accounts payable and accrued expenses

 

(26,940)

 

(15,229)

Contract liabilities

15,047

(20,923)

Net cash used in operating activities

 

(1,248)

 

(39,730)

CASH FLOWS FROM INVESTING ACTIVITIES

Purchases of short-term investments

(90,000)

(175,000)

Maturities of short-term investments

149,750

90,000

Purchases of available-for-sale securities

(30,355)

Purchases of property, plant and equipment

 

(645)

 

(238)

Net cash provided by (used in) investing activities

 

28,750

 

(85,238)

CASH FLOWS FROM FINANCING ACTIVITIES

Common stock repurchases

(3,681)

(27,077)

Payments of cash dividends

 

(3,357)

 

(3,712)

Proceeds from the exercise of stock options

 

544

 

66

Net cash used in financing activities

 

(6,494)

 

(30,723)

EFFECTS OF EXCHANGE RATE CHANGES ON CASH

992

(2,526)

NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS

 

22,000

 

(158,217)

CASH AND CASH EQUIVALENTS, BEGINNING OF PERIOD

173,947

350,472

CASH AND CASH EQUIVALENTS, END OF PERIOD

$

195,947

$

192,255

SUPPLEMENTAL CASH FLOW INFORMATION (see Notes 7 and 10)

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

 

5

ARGAN, INC. AND SUBSIDIARIES

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

April 30, 2023

(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, including the renewable energy sector. The wide range of customers includes primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial fabrication and field 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, its wholly-owned subsidiaries and a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 14, 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 April 30, 2023, the condensed consolidated statements of earnings and stockholders’ equity for the three months ended April 30, 2023 and 2022, and the condensed consolidated statements of cash flows for the three months ended April 30, 2023 and 2022 are unaudited. The condensed consolidated balance sheet as of January 31, 2023 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, 2023 (“Fiscal 2023”).

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 April 30, 2023, 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

Accounting Policies

In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method (“ASU 2023-02”), which provide an election to account for tax equity investments using the proportional amortization method, if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-020 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.

Available-For-Sale Securities

At each balance sheet date, available-for-sale securities are recorded at fair value, with unrealized gains and, to the extent deemed temporary, unrealized losses reported as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, realized gains and realized losses are included in other income or expense, as applicable, in the Company’s condensed consolidated statement of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of available-for-sale securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the available-for-sale securities is reevaluated at each balance sheet date.

The Company considers its available-for-sale securities impaired when a decline in fair value below its cost basis is determined to be other than temporary. The Company evaluates whether the decline in fair value is other than temporary based on the amount and duration of the period that the fair value of the available-for-sale security is less than its cost basis, overall market conditions and trends, the Company’s intent to sell the available-for-sale security and whether it is more likely than not that the Company would be required to sell the security before its anticipated recovery. If a decline in fair value is determined to be other than temporary, the Company records an impairment loss and establishes a new cost basis.

Fair Values

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

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

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

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

At April 30, 2023 and January 31, 2023, certain amounts of cash equivalents were invested in money market funds with net assets invested in high-quality money market instruments. Money market funds were classified as Level 1 due to the short-term nature of these instruments and as their fair value is based on quoted prices in active markets for identical assets. As of April 30, 2023, all of the Company’s available-for-sale securities were U.S. Treasury notes and were classified as Level 2, as their fair value is measured based on quoted prices in active markets for similar assets.  As of April 30, 2023 and January 31, 2023, the Company did not have any financial assets measured on a recurring basis using Level 3 inputs. The carrying value amounts presented in the condensed consolidated balance sheets for the Company’s other current assets,

7

which primarily include cash, short term investments, accounts receivable and contract assets, and its current liabilities are reasonable estimates of their fair values due to the short-term nature of these items.

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

April 30, 2023

January 31, 2023

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Money market funds

$

112,546

$

$

$

68,647

$

$

Available-for-sale securities

30,376

Totals

$

112,546

$

30,376

$

$

68,647

$

$

Treasury Stock

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

Variable Interest Entity

In January 2018, the Company was deemed to be the primary beneficiary of a VIE that was performing the project development activities related to the planned construction of a new natural gas-fired power plant. In the fourth quarter of Fiscal 2023, the Company was deemed to no longer be the primary beneficiary of the VIE, and the VIE was deconsolidated. Prior to deconsolidation, the account balances of the VIE had been included in the Company’s consolidated financial statements.

NOTE 2 – REVENUES FROM CONTRACTS WITH CUSTOMERS

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

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

The Company focuses on the transfer of the contractor’s control of the goods and/or services to the customer. When a performance obligation is satisfied over time, the related revenues are recognized over time. The Company’s revenues are recognized primarily under various types of long-term construction contracts, including those for which revenues are based on either a fixed-price or a time-and-materials basis, and primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer.

Revenues from fixed-price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. If, at any time, the estimate of contract profitability indicates an anticipated loss on a contract, the Company will recognize the total loss in the reporting period in which it is identified and the loss amount becomes estimable. Revenues from time-and-materials contracts are recognized when the related services are provided to the customer.

Predominantly all of the Company’s fixed-price contracts are considered to have a single performance obligation. Although multiple promises to transfer individual goods or services may exist, they are not typically distinct within the context of such contracts because contract promises included therein are interrelated or the contracts require the Company to perform

8

critical integration so that the customer receives a completed project. Warranties provided under the Company’s contracts with customers are assurance-type primarily and are recorded as the corresponding contract work is performed.

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

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

The balances of the Company’s accounts receivable represent amounts billed to customers that have yet to be collected and represent an unconditional right to cash from its customers. Contract assets include amounts that represent the rights to receive payment for goods or services that have been transferred to the customer, with the rights conditional upon something other than the passage of time. Contract liabilities include amounts that reflect obligations to provide goods or services for which payment has been received. The amounts of revenues recognized during the three months ended April 30, 2023 and 2022 that were included in the balances of contract liabilities as of January 31, 2023 and 2022, respectively, were approximately $50.9 million and $67.3 million, respectively.

Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. Retention amounts and the length of retention periods may vary. Retainage amounts related to active contracts are considered current regardless of the term of the applicable contract; such amounts are generally collected by the completion of the applicable contract. The amounts retained by project owners and other customers under construction contracts at April 30, 2023 and January 31, 2023 were $25.0 million and $49.1 million, respectively.

Variable Consideration

Amounts for contract variations for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The effects of any revision to a transaction price can be determined at any time and they could be material. The Company includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. Once a final amount has been determined, the transaction price may be revised again to reflect the final resolution. At April 30, 2023 and January 31, 2023, the aggregate amounts of such contract variations included in the transaction prices that were still pending customer acceptance were $12.2 million and $11.6 million, respectively. Variations related to the Company’s contracts typically represent modifications to the existing contracts and performance obligations and do not represent new performance obligations. Actual costs related to any changes in the scope of the corresponding contract are expensed as they are incurred. Changes to total estimated contract costs and losses, if any, are reflected in operating results for the period in which they are determined.

The Company’s long-term contracts typically have schedule dates and other performance objectives that if not achieved could subject the Company to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by the achievement of a specified level of output or efficiency. Each applicable contract defines the conditions under which a project owner may be entitled to any liquidated damages. At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted from the

9

transaction price as the Company believes that it has included activities in its contract plan, and the associated forecasted contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. The Company considers potential liquidated damages, the costs of other related items and potential mitigating factors in determining the adequacy of its regularly updated estimates of the amounts of gross profit expected to be earned on active projects.

In other cases, the Company may have the grounds to assert liquidated damages against subcontractors, suppliers, project owners or other parties related to a project. Such circumstances may arise when the Company’s activities and progress are adversely affected by delayed or damaged materials, challenges with equipment performance or other events out of the Company’s control where the Company has rights to recourse, typically in the form of liquidated damages. In general, the Company does not adjust the corresponding contract accounting until it is probable that the favorable cost relief will be realized. Such adjustments have been and could be material.

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

Remaining Unsatisfied Performance Obligations (“RUPO”)

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

At April 30, 2023, the Company had RUPO of $0.7 billion. The largest portion of RUPO at any date usually relates to engineering, procurement and construction (“EPC”) service 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 37% of the RUPO amount at April 30, 2023 will be included in the amount of consolidated revenues that will be recognized during the remainder of the fiscal year ending January 31, 2024 (“Fiscal 2024”). Most of the remaining amount of the RUPO amount at April 30, 2023 is expected to be recognized in revenues during the fiscal years ending January 31, 2025 and January 31, 2026.

It is important to note that estimates may be changed in the future and that cancellations, deferrals, or scope adjustments may occur related to work included in the amount of RUPO at April 30, 2023. 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.

10

Disaggregation of Revenues

The following table presents consolidated revenues for the three months ended April 30, 2023 and 2022, disaggregated by the geographic area where the corresponding projects were located:

Three Months Ended April 30, 

2023

    

2022

United States

$

65,244

$

80,273

Republic of Ireland

 

24,856

 

9,653

United Kingdom

 

13,575

 

10,351

Consolidated Revenues

$

103,675

$

100,277

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

NOTE 3 – CASH, CASH EQUIVALENTS AND INVESTMENTS

Cash and Cash Equivalents

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

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

Short-Term Investments

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

Available-For-Sale Securities

During the fiscal quarter ended April 30, 2023, the Company purchased U.S. Treasury notes with original maturities of two and three years. The Company’s available-for-sale securities consisted of the following amortized cost, allowance for credit losses, gross unrealized gains and losses and estimated fair value by contractual maturity as of April 30, 2023:

April 30, 2023

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due in one to two years

$

15,014

$

$

$

37

$

14,977

Due in two to three years

15,399

15,399

Totals

$

30,413

$

$

$

37

$

30,376

As of April 30, 2023, interest receivable in the amount of $0.1 million is included in balance of available-for-sale securities on the condensed consolidated balance sheets. For the three months ended April 30, 2023, the change in net unrealized holding losses for the Company’s available-for-sale securities reported in other comprehensive income was not material. For the three months ended April 30, 2023, there were no sales of the Company’s available-for-sale securities, and therefore, there were no amounts of gains or losses reclassified out of other comprehensive income into net income. All

11

unrealized losses for the available-for-sale securities have been in a continuous loss position for less than 12 months. The Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of April 30, 2023, which includes an assessment of whether it is more likely than not the Company will be required to sell the investment before recovery of the investment’s amortized cost basis.

Concentration Risk

The Company has a substantial portion of its cash on deposit in the U.S. with Bank of America, N.A.  (the “Bank”). 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. Management does not believe that the combined amount of the CDs and the cash deposited with the Bank and cash balances maintained at financial institutions in Ireland and the U.K., in excess of government-insured levels, represent material risks.

NOTE 4 – ACCOUNTS RECEIVABLE

The Company generally extends credit to a customer based on an evaluation of the customer’s financial condition, without requiring tangible collateral. Customer payments on other construction, fabrication and field service contracts are generally due within 30 to 60 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts 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 months ended April 30, 2023 and 2022 were insignificant. The allowance for credit losses at April 30, 2023 and January 31, 2023 was $1.8 million and $1.9 million, respectively.

NOTE 5 – INTANGIBLE ASSETS

At both April 30, 2023 and January 31, 2023, 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, 2023, 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 fabrication and field services segment and consisted of the following as of April 30, 2023 and January 31, 2023:

April 30, 2023

January 31, 2023

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade names

15 years

$

4,499

$

2,225

$

2,274

$

4,499

$

2,150

$

2,349

Customer relationships

10 years

916

679

237

916

656

260

Totals

$

5,415

$

2,904

$

2,511

$

5,415

$

2,806

$

2,609

NOTE 6 – FINANCING ARRANGEMENTS

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

At April 30, 2023, the Company did not have any borrowings outstanding under the Credit Agreement. However, the Bank has issued letters of credit in the total outstanding amount of $11.5 million at April 30, 2023, in support of the activities of

12

APC under existing customer contracts. The comparable outstanding total amount of letters of credit at January 31, 2023 was $8.8 million.

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

NOTE 7 – COMMITMENTS

Leases

The Company’s leases are primarily operating leases that cover office space, expiring on various dates through December 2031, and certain equipment used by the Company in the performance of its construction services contracts. Some of these equipment leases may be embedded in broader agreements with subcontractors or construction equipment suppliers. The Company has no material finance leases. None of the operating leases includes significant amounts for incentives, rent holidays or price escalations. Under certain leases, the Company is obligated to pay property taxes, insurance, and maintenance costs. For leases that contain both lease and non-lease components, fixed and variable payments are allocated to each component relative to observable or estimated standalone prices.

Operating lease right-of-use assets and associated lease liabilities are recorded in the balance sheet at the lease commencement date based on the present value of future minimum lease payments to be made over the expected lease term. As the implicit rate is not determinable in most of the Company’s leases, management uses the Company’s incremental borrowing rate at the commencement date in determining the present value of future payments. The expected lease term includes any option to extend or to terminate the lease when it is reasonably certain the Company will exercise such option. Right-of-use assets at April 30, 2023 and January 31, 2023, were $4.6 million and $4.8 million, respectively.

Operating lease expense amounts are recorded on a straight-line basis over the expected lease terms. Operating lease expenses for the three months ended April 30, 2023 and 2022 were $0.4 million and $0.8 million, respectively. Operating lease payments for the three months ended April 30, 2023 and 2022 were $0.4 million and $0.8 million, respectively.

The following is a schedule of future minimum lease payments for the operating leases that were recognized in the condensed consolidated balance sheet as of April 30, 2023:

Years Ending January 31, 

2024 (remainder)

    

$

1,244

2025

1,350

2026

1,079

2027

235

2028

213

Thereafter

815

Total lease payments

4,936

Less imputed interest

303

Present value of lease payments

4,633

Less current portion (included in accrued expenses)

1,491

Noncurrent portion (included in noncurrent liabilities)

$

3,142

For operating leases as of April 30, 2023, the weighted average lease term and weighted average discount rate was 56 months and 3.7%, respectively. For operating leases as of January 31, 2023, the weighted average lease term and weighted average discount rate was 58 months and 3.7%, respectively. The aggregate amounts of operating lease right-of-use assets added in exchange for lease obligations during the three months ended April 30, 2023 and 2022 were $0.3 million and $0.2 million, respectively.

13

The Company also uses equipment and occupies other facilities under short-term rental agreements. The Company classifies as short-term leases any lease with an initial noncancellable term of twelve months or less that does not include an option to purchase the underlying asset that the Company is reasonably certain to exercise. Rent expense amounts incurred under short-term rentals during the three months ended April 30, 2023 and 2022 were $3.7 million and $2.4 million, respectively. Right-of-use assets and lease liabilities related to short-term leases are excluded from the consolidated balance sheets.

Performance Bonds and Guarantees

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

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

The Company had also provided a financial guarantee, subject to certain terms and conditions, in the amount of $3.6 million in support of business development efforts. A liability was established for the estimated loss related to this guarantee 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 nature of the Company’s projects, including project owner inspections of the work both during construction and prior to substantial completion, the Company has not experienced material unexpected warranty costs in the past. Warranty costs are estimated based on experience with the type of work and any known risks relative to each completed project. The accruals of liabilities, which are established to cover estimated future warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the 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 8 – LEGAL CONTINGENCIES

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

NOTE 9 – STOCK-BASED COMPENSATION

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

The features of the 2020 Plan are similar to those included in the 2011 Plan. Awards may include nonqualified stock options, incentive stock options, and restricted or unrestricted stock. The specific provisions for each award are documented in a written agreement between the Company and the awardee. All stock options awarded under the Stock Plans have exercise prices per share at least equal to the market value per share of the Company’s common stock on the

14

date of grant. Stock options have terms no longer than ten years. Typically, stock options are awarded with one-third of each stock option vesting on each of the first three anniversaries of the corresponding award date.

As of April 30, 2023, there were 1,825,083 shares of common stock reserved for issuance under the Stock Plans; this number includes 84,273 shares of common stock available for future awards under the 2020 Plan.

Stock Options

A summary of stock option activity under the Stock Plans for the three months ended April 30, 2023, along with corresponding weighted average per share amounts, is presented below (shares in thousands):

Weighted

Average

Weighted

Weighted

Remaining

Average

Average Exercise

Contractual

Grant Date

    

Shares

    

Price

    

Term (years)

    

Fair Value

Outstanding, February 1, 2023

 

1,440

$

43.84

 

5.46

$

10.11

Granted

10

$

39.47

Exercised

(30)

$

18.12

Forfeited

(1)

$

33.81

Outstanding, April 30, 2023

1,419

$

44.36

 

5.36

$

10.23

Exercisable, April 30, 2023

 

1,291

$

44.80

5.02

$

10.48

Outstanding, April 30, 2022

1,438

$

44.12

 

6.04

$

10.21

Exercisable, April 30, 2022

 

1,199

$

44.87

 

5.52

$

10.76

The changes in the number of non-vested options to purchase shares of common stock for the three months ended April 30, 2023, and the weighted average fair value per share for each number, are presented below (shares in thousands):

    

Weighted

Average

Grant Date

Shares

    

Fair Value

Non-vested, February 1, 2023

 

194

$

7.27

Granted

 

10

$

8.12

Vested

 

(75)

$

6.62

Forfeitures

(1)

$

5.68

Non-vested, April 30, 2023

 

128

$

7.72

Non-vested, April 30, 2022

 

239

$

7.45

The total intrinsic value amount related to the stock options exercised during the three months ended April 30, 2023 was $0.7 million. The total intrinsic value amount related to the stock options exercised during the three months ended April 30, 2022 was not significant. The aggregate market value amounts of the shares of common stock subject to outstanding stock options and exercisable stock options that were “in-the-money” exceeded the aggregate exercise prices of such options at April 30, 2023 by $3.3 million and $3.0 million, respectively.

Restricted Stock Units

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

During the three months ended April 30, 2023, the Company awarded total stock return performance-based restricted stock units (“PRSUs”) covering a target of 6,000 shares of common stock, earnings per share performance-based restricted stock units (“EPRSUs”) covering a target of 15,000 shares of common stock, renewable energy performance-based restricted stock units (“RPRSUs”) covering a target of 7,500 shares of common stock, time-based restricted stock units (“TRSUs”)

15

covering 45,300 shares of common stock, and 1,306 shares based on the amount of cash dividends deemed paid on shares earned pursuant to the awards. During the three months ended April 30, 2022, the Company awarded 47,000 PRSUs, 7,500 RPRSUs and 57,500 TRSUs.

The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for the three months ended April 30, 2023, and the weighted average fair value per share for each restricted stock unit, are presented below (shares in thousands):

    

    

Weighted

Average

Grant Date

Shares

Fair Value

Outstanding, February 1, 2023

 

310

$

30.80

Awarded

 

96

$

30.67

Issued

(35)

$

31.04

Forfeited

(49)

$

16.01

Outstanding, April 30, 2023

 

322

$

31.25

Outstanding, April 30, 2022

 

278

$

29.38

Fair Value

The fair value amounts of stock options and restricted stock units are recorded as stock compensation expense on a straight-line basis over the terms of the corresponding awards. Expense amounts related to stock awards were $1.0 million and $0.9 million for the three months ended April 30, 2023 and 2022, respectively. At April 30, 2023, there was $8.4 million in unrecognized compensation cost related to outstanding stock awards that the Company expects to expense over the next three years.

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

The fair value amounts for the PRSUs have been determined by using the per share market price of the common stock on the dates of award and, by assigning equal probabilities to the thirteen possible payout outcomes at the end of each three-year term, and by computing the weighted average of the outcome amounts. For each award, the estimated fair value amount was calculated to be 88.5% of the aggregate market value of the target number (which is 50% of the maximum number) of shares on the award date. For the EPRSUs and RPRSUs, the fair value of each award equals the aggregate market price for the number of shares that, as of the award date, are probable of vesting based on the performance conditions. For the TRSUs, the fair value of each award equals the aggregate market price for the number of shares covered by each award on the date of award.

16

NOTE 10 – INCOME TAXES

Income Tax Expense Reconciliations

The Company’s income tax amounts for the three months ended April 30, 2023 and 2022 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:

    

Three Months Ended April 30, 

    

2023

    

2022

Computed expected income tax expense

$

631

$

2,049

Difference resulting from:

State income taxes, net of federal tax effect

 

84

 

134

Deferred tax asset adjustments

220

66

Foreign tax rate differential

(198)

(31)

Other permanent differences and adjustments, net

158

55

Income tax expense

$

895

$

2,273

Foreign income tax expense amounts for the three months ended April 30, 2023 and 2022 were not material.      

Net Operating Loss (“NOL”) Carryback

In an effort to combat the adverse economic impacts of the COVID-19 crisis, the U.S. Congress passed the Coronavirus, Aid, Relief, and Economic Security Act (the “CARES Act”) that was signed into law on March 27, 2020. This wide-ranging legislation was an emergency economic stimulus package that included spending and tax breaks aimed at strengthening the U.S. economy and funding a nationwide effort to curtail the effects of the outbreak of COVID-19.

The tax changes of the CARES Act included a temporary suspension of the limitations on the future utilization of certain NOLs and re-established a carryback period for certain losses to five years. The NOLs eligible for carryback under the CARES Act include the Company’s domestic NOL for the year ended January 31, 2020, which was approximately $39.5 million. The Company made the appropriate filing with the Internal Revenue Service (the “IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 and 2015 in the total amount of approximately $12.7 million during the fiscal year ended January 31, 2021 (“Fiscal 2021”) and an updated filing was made during the three months ended April 30, 2023; the IRS has not completed the review and approval of the Company’s refund request.

Research and Development Tax Credits

During Fiscal 2022, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research tax credits that may have been available to reduce federal income taxes for Fiscal 2022 and Fiscal 2021. As a result, the Company filed amended federal income tax returns for those years including research and development tax credits in the total amount of $5.8 million, which was netted with a provision for uncertain tax return positions in the amount of $2.4 million.  

Income Tax Refunds

As of April 30, 2023 and January 31, 2023, the balances of other current assets in the condensed consolidated balance sheet included income tax refunds receivable and prepaid income taxes in the total amounts of approximately $16.2 million and $15.3 million, respectively. The income tax refunds included the amount expected to be received from the IRS upon its processing of the Company’s NOL carryback refund request as described above.

17

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, 2019, except for several notable exceptions including Ireland, the U.K. and several states where the open periods are one year longer. In May 2023, the Company received notification that its amended federal income tax returns for Fiscal 2021 and Fiscal 2022 were selected for examination.

Solar Energy Projects

The Company has invested in limited liability companies that make equity investments in solar energy projects that are eligible to receive energy tax credits. The passive investments have been accounted for using the equity method; the balances are included in other assets in our condensed consolidated balance sheets. Each tax credit, when recognized, is recorded as a reduction of the corresponding investment balance with an offsetting reduction in the balance of accrued taxes payable in accordance with the deferral method. As of April 30, 2023, the Company had no remaining cash investment commitments related to these projects. At April 30, 2023 and January 31, 2023, the investment account balances were $1.1 million and $1.2 million, respectively. These investments are expected to provide positive overall returns over their six-year expected lives.

During the three months ended April 30, 2023 and 2022, the investment balance was adjusted to reflect the Company’s share of the loss of the investment entities in the amount of approximately $0.1 million for the three months ended April 30, 2023 and its share of the income of the investment entities in the amount of approximately $0.6 million for the three months ended April 30, 2022. These net amounts have been included as other loss or income in the Company’s condensed consolidated statement of earnings for the corresponding periods.

Supplemental Cash Flow Information

The Company was not required to make any income tax payments during the three months ended April 30, 2023 or 2022. During the three months ended April 30, 2023 and 2022, the Company did not receive any income tax refunds that were material.

NOTE 11 – NET INCOME PER SHARE

Basic and diluted net income per share amounts are computed as follows (shares in thousands except in the note):

Three Months Ended April 30, 

    

2023

    

2022

Net income

$

2,109

$

7,485

Weighted average number of shares outstanding – basic

13,413

14,910

Effect of stock awards (1)

133

82

Weighted average number of shares outstanding – diluted

13,546

14,992

Net income per share

Basic

$

0.16

$

0.50

Diluted

$

0.16

$

0.50

(1)For the three months ended April 30, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options covering an aggregate of 851,834 and 867,334 shares of common stock, respectively.

NOTE 12 – CASH DIVIDENDS AND COMMON STOCK REPURCHASES

On April 10, 2023, Argan’s board of directors declared a regular quarterly cash dividend in the amount of $0.25 per share of common stock, which was paid on April 28, 2023 to stockholders of record at the close of business on April 20, 2023. During the three months ended April 30, 2022, the board of directors declared a regular quarterly dividend of $0.25 per share of common stock, which was paid to stockholders on April 29, 2022.

18

Pursuant to its established program and authorizations provided by Argan’s board of directors, the Company repurchased shares of its common stock during the three months ended April 30, 2023 and 2022. During these periods, the Company repurchased 92,656 shares and 710,879 shares of common stock, all on the open market, for aggregate prices of approximately $3.7 million, or $39.61 per share, and $27.1 million, or $38.09 per share, respectively.

In August 2022, the Inflation Reduction Act (the “IRA”) was signed into law, which introduced a 1% excise tax on shares repurchased after December 31, 2022. For the three months ended April 30, 2023, the excise tax was not material.

NOTE 13 – CUSTOMER CONCENTRATIONS

The majority of the Company’s consolidated revenues relate to performance by the power industry services segment which provided 68% and 74% of consolidated revenues for the three months ended April 30, 2023 and 2022, respectively. The industrial services segment represented 29% and 22% of consolidated revenues for the three months ended April 30, 2023 and 2022, respectively.

The Company’s most significant customer relationships for the three months ended April 30, 2023 included four power industry service customers, which accounted for 16%, 14%, 14% and 13% of consolidated revenues, respectively. The Company’s most significant customer relationship for the three months ended April 30, 2022 included one power industry service customer, which accounted for 48% of consolidated revenues. 

The accounts receivable balances from three major customers represented 37%, 10% and 10% of the corresponding consolidated balance as of April 30, 2023. Accounts receivable balances from three major customers represented 36%, 12% and 12% of the corresponding consolidated balance as of January 31, 2023. The contract asset balances from three major customers represented 22%, 16% and 12% of the corresponding consolidated balance as of April 30, 2023. Contract asset balances from one major customer represented 70% of the corresponding consolidated balance as of January 31, 2023.

NOTE 14 – SEGMENT REPORTING

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

Intersegment revenues and the related cost of revenues are netted against the corresponding amounts of the segment receiving the intersegment services. For the three months ended April 30, 2023 and 2022, intersegment revenues were not material.

19

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

Three Months Ended

Power

Industrial

Telecom

April 30, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

70,176

$

30,307

$

3,192

$

$

103,675

Cost of revenues

 

60,335

 

26,562

 

2,554

 

 

89,451

Gross profit

 

9,841

 

3,745

 

638

 

 

14,224

Selling, general and administrative expenses

5,714

1,460

703

2,714

10,591

Income (loss) from operations

4,127

2,285

(65)

(2,714)

3,633

Other income (loss), net

 

2,090

 

 

 

(2,719)

 

(629)

Income (loss) before income taxes

$

6,217

$

2,285

$

(65)

$

(5,433)

 

3,004

Income tax expense

 

895

Net income

$

2,109

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

128

304

114

1

547

Property, plant and equipment additions

389

256

645

Current assets

$

303,596

$

43,946

$

3,985

$

73,474

$

425,001

Current liabilities

160,564

29,226

1,172

1,435

192,397

Goodwill

18,476

9,467

90

28,033

Total assets

330,736

61,421

7,071

76,466

475,694

Three Months Ended

Power

Industrial

Telecom

April 30, 2022

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

73,949

$

22,501

$

3,827

$

$

100,277

Cost of revenues

 

59,035

 

18,680

 

2,824

 

 

80,539

Gross profit

 

14,914

 

3,821

 

1,003

 

 

19,738

Selling, general and administrative expenses

 

5,615

1,759

765

2,436

 

10,575

Income (loss) from operations

9,299

2,062

238

(2,436)

9,163

Other income, net

 

584

 

 

2

 

9

 

595

Income (loss) before income taxes

$

9,883

$

2,062

$

240

$

(2,427)

 

9,758

Income tax expense

 

2,273

Net income

$

7,485

Amortization of intangibles

$

$

166

$

$

$

166

Depreciation

142

544

122

1

809

Property, plant and equipment additions

52

151

35

238

Current assets

$

329,779

$

27,872

$

3,565

$

86,375

$

447,591

Current liabilities

170,684

12,362

1,685

1,543

186,274

Goodwill

18,476

9,467

90

28,033

Total assets

353,570

45,379

7,245

86,616

492,810

20

NOTE 15 — SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

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

    

April 30, 

January 31, 

2023

    

2023

Income tax refunds receivable and prepaid income taxes

$

16,233

$

15,327

Raw materials inventory

12,172

11,903

Prepaid expenses

 

7,862

 

4,541

Other

6,109

6,563

Total other current assets

$

42,376

$

38,334

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

    

April 30, 

January 31, 

2023

    

2023

Accrued compensation

$

11,382

$

18,286

Project costs

21,764

17,448

Lease liabilities

1,491

1,567

Other

10,118

12,566

Total accrued expenses

$

44,755

$

49,867

On March 7, 2023, the Company determined that it had been a victim of a complex criminal scheme, which resulted in fraudulently-induced outbound wire transfers to a third-party account. As a result of the event, the Company incurred a loss of approximately $3.0 million related to the amount of the unrecovered funds. Any amount of this loss expected to be reimbursed to the Company from its insurance policy is not expected to be material. The Company retained specialized legal counsel and a cybersecurity services firm to assist in an independent forensic investigation of the incident and the efforts to recover the funds. As a result, the Company incurred legal, audit and other professional fees in the aggregate amount of $0.2 million related to this event. The total amount of the fraud loss and the professional fees, approximately $3.2 million, is included in other loss in the condensed consolidated statements of earnings for the three months ended April 30, 2023.

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 April 30, 2023, and the results of their operations for the three month periods ended April 30, 2023 and 2022, 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 2023 that was filed with the SEC on April 17, 2023 (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 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

21

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, including the renewable energy sector, for a wide range of customers, including independent power project owners, public utilities, power plant heavy equipment suppliers and other commercial firms with significant power requirements. GPS and APC represent our power industry services reportable segment. Through TRC, the industrial fabrication and field 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.

Overview

Operating Results

Consolidated revenues for the three months ended April 30, 2023 were $103.7 million, which represented an increase of $3.4 million, or 3.4%, from consolidated revenues of $100.3 million reported for the three months ended April 30, 2022.

The revenues of the power industry services segment decreased by $3.8 million to $70.2 million for the three months ended April 30, 2023, from $73.9 million reported for the three months ended April 30, 2022. The revenues of this reportable segment of our business represented 67.7% and 73.7% of corresponding consolidated revenues for the three months ended April 30, 2023 and 2022, respectively. The industrial services business reported revenues of $30.3 million for the three months ended April 30, 2023. This amount represented an increase of $7.8 million, or 34.7%, from revenues of $22.5 million reported by TRC for the three months ended April 30, 2022. Revenues provided by this reportable business segment represented 29.2% and 22.4% of corresponding consolidated revenues for the three months ended April 30, 2023 and 2022, respectively.

Consolidated gross profit for the three-month period ended April 30, 2023 was $14.2 million, or approximately 13.7% of the corresponding consolidated revenues, which reflected positive contributions from all three reportable business segments. For the three-month period ended April 30, 2022, the consolidated gross profit was $19.7 million, which represented approximately 19.7% of the corresponding amount of consolidated revenues.

Selling, general and administrative expenses for the three months ended April 30, 2023 and 2022 was $10.6 million for each period.

Other loss, net, for the three months ended April 30, 2023 was $0.6 million, which reflected the wire-transfer fraud loss that occurred on March 7, 2023 and related professional fees (see Note 15 to the accompanying condensed consolidated financial statements), offset partially by income earned during the period on funds invested in a money market fund, CDs and U.S. Treasury notes.

For the three months ended April 30, 2023, income tax expense was $0.9 million which represented an estimated annual effective income tax rate of 25.3%. For the three months ended April 30, 2022, income tax expense was $2.3 million which represented an estimated annual effective income tax rate of 23.7% for the period.

22

For the three months ended April 30, 2023, our overall operating profit performance resulted in net income in the amount of $2.1 million, or $0.16 per diluted share. For the comparable period last year, we reported net income in the amount of $7.5 million, or $0.50 per dilutive share.

Project Backlog

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

Typically, we include the total value of EPC services and other major construction contracts in project backlog when we receive a corresponding notice to proceed from the project owner. However, we may include the value of an EPC services contract prior to the receipt of a notice to proceed if we believe that it is probable that the project will commence within a reasonable timeframe, among other factors. Projects that are awarded to us may remain included in our backlog for extended periods of time as customers experience project delays. However, cancellations or reductions may occur that would reduce project backlog and that could adversely affect our expected future revenues.

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

During the first quarter ended April 30, 2023, we achieved the substantial completion milestone for the Guernsey Power Station, which is located in Cambridge, Ohio, pursuant to an EPC services contract with Caithness Energy, L.L.C. This 1,875 MW, combined cycle power plant remains the largest single-phase, gas-fired, electricity-generation plant in the U.S. A small portion of our consolidated project backlog at April 30, 2023 relates to this project as GPS completes the commissioning process for this project, including all punch-list items, other commissioning tasks and demobilization efforts, as well as the closeout of open contract variations. Final completion of this project is currently expected to occur during the third quarter of Fiscal 2024.

We are also nearing completion of efforts under an EPC services contract with CPV Maple Hill Solar, LLC, an affiliate of Competitive Power Ventures, Inc., to construct the Maple Hill Solar facility, which we believe will be among the largest solar-powered energy plants in Pennsylvania. Project completion is currently scheduled to occur during the second half of Fiscal 2024. The unique Maple Hill Solar project, which is located in Cambria County, is being constructed using over 235,000 photovoltaic modules to generate approximately 100 MW of electrical power.

In October 2022, GPS added the EPC services contract value of the Trumbull Energy Center, a 950 MW natural gas-fired power plant to be built in Lordstown, Ohio. We received the full notice to proceed with the project from the owner, Clean Energy Future-Trumbull, LLC, in November 2022. We have since commenced activities for the project. 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 late in the year ending January 31, 2026.

Together, the Trumbull Energy Center, the Guernsey Power Station, the Maple Hill Solar facility represent nearly 3.0 gigawatts of potential electrical power. Additionally, the technical, project support and project management teams of GPS continue to team with APC on a new project in Ireland and assist APC with certain other current projects and business development efforts.

The business development efforts conducted by our APC operations have resulted in a significant increase in the project backlog of this business, which amounted to approximately $145 million as of April 30, 2023. A significant award occurred in October 2021 as APC entered into an engineering and construction services contract with EPUKI London, U.K., to construct a 2 x 330 MW natural gas-fired power plant in Carrickfergus that is near Belfast, Northern Ireland, in a structure that was initially designed to enclose coal-fired units. Our project, referred to as the “Kilroot” project, is being developed

23

by EPNI Energy Limited. Full project activities are underway; however, there have been a number of unanticipated challenges related to this job impacting the contract, costs and schedule. Even with these difficulties, the overall completion of this project is expected to occur in the latter half of Fiscal 2024.

In May 2022, APC entered into engineering and construction services contracts with Ireland’s Electricity Supply Board (“ESB”) to construct three 65 MW aero-derivative gas turbine flexible generation power plants in and around the city of Dublin, Ireland. Two of the power plants, the Poolbeg and Ringsend FlexGen Power Plants, will be located on the Poolbeg Peninsula, and the Corduff FlexGen Power Plant will be built 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. A full notice to proceed has been received and project activities have commenced. The completion of each power facility is expected to occur near the end of Fiscal 2024.

Additionally, APC was provided with limited notices to proceed with EPC project activities for an open-cycle gas turbine power facility in central Ireland that will have the capacity to generate approximately 264 MW of temporary emergency electrical power. GPS is teaming with APC in performance of this contract.

The project backlog of TRC has been increased by over 180% since April 30, 2022 to approximately $151 million as of April 30, 2023, reflecting a business development emphasis on the award of larger industrial field service construction projects from continuing and new customers. The recent emphasis on construction opportunities influenced the strategic decision to consolidate the pipe and vessel fabrication facilities to reduce fixed costs, streamline operations and better support a growing and scalable business model.

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

Market Outlook

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 2010, coal-fired power plants accounted for about 45% of net electricity generation in the U.S. For 2022, coal fueled approximately 20% 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 39% of the electricity generated by utility-scale power plants in the U.S. in 2022, representing an increase of 69% from the amount of electrical power generated by natural gas-fired power plants in 2010, which provided approximately 24% of net electricity generation for 2010. The average age of utility-scale natural gas-fired power plants in the U.S. is approximately 22 years old with an average life span of 30 years.

Major advances in the safe combination of horizontal drilling techniques and hydraulic fracturing led to the boom in natural gas supplies which have been available generally at consistently low and stable prices. However, reductions in production levels during the pandemic and an increase in the amount of liquid natural gas exports, among other factors including the Russian invasion of Ukraine, strained domestic natural gas supplies and forced prices upwards. As a result, the price of natural gas in the U.S. increased meaningfully during the 2022 calendar year. However, spot prices have declined during the early months of 2023 and are forecasted to continue to lessen through the remainder of 2023 before rising again in calendar year 2024. When sudden power needs emerge and natural gas prices are relatively high, power producers often choose to increase coal-fired power to satisfy the short term demands for electricity.

In the reference case of its Annual Energy Outlook 2023, the Energy Information Administration (“EIA”) projects that economic growth paired with increasing electrification in end-user sectors will result in the stable growth of electricity demand in the U.S. through 2050. Declining capital costs for solar panels, wind turbines and battery storage, as well as government subsidies like those included in the IRA will result in renewables becoming increasingly cost effective compared with the alternatives when the costs of building new power capacity are considered. Renewables are increasingly

24

meeting power demand through 2050 as they outcompete natural gas, coal and nuclear power. Uncertainty in natural gas prices leads to different unfavorable projections for combined cycle units in the short term, but in the long term, natural gas demand from the electric power sector stabilizes. As a result of the renewables growth, U.S. coal-fired generation capacity will decline sharply to about 54% of current levels by 2030, with a gradual decline thereafter.

The historic decline in the use of coal as a power source in the U.S. was caused, to a significant extent, by the plentiful supply of domestic and generally inexpensive natural gas which made it the fuel of choice for power plant developers over this period. The pace of the historic increase in the preference for natural gas as an electricity generating fuel source also was energized, in part, by environmental activism and restrictive regulations targeting coal-fired power plants. However, the environmentalist opposition against coal-fired power generation has expanded meaningfully to target all fossil fuel energy projects, including both power plants and pipelines, and has evolved into powerful support for renewable energy sources.

Protests against fossil-fuel related energy projects garner media attention and stir public skepticism about new projects which have resulted in delays due to onsite protest demonstrations, indecision by local officials and lawsuits. Various cities, counties and states have adopted clean energy and carbon-free goals or objectives with achievement expected by a certain future date, typically 10 to 30 years out. These aspirational goals may increase the risk of a new power plant becoming a stranded asset long before the end of its otherwise useful economic life, which is a risk that potential equity capital providers may be unwilling to take. The difficulty in obtaining project equity financing and the other factors identified above, may be adversely impacting the planning and initial phases for the construction of new natural gas-fired power plants. Lenders, who have become more wary of funding fossil-fuel ventures as environmental, social and governance ideals influence investment decisions, may be generally unwilling to provide capital for energy projects to increase the domestic production and transmission of oil and natural gas. In addition, an announcement by Chubb Insurance may signal new difficulties for certain oil and gas projects. In particular, the insurance underwriter will require oil and gas industry clients to implement plans to reduce methane emissions, that are among the most severe greenhouse gases, and will not provide insurance coverage for oil and gas projects in government-protected conservation areas that do not allow for sustainable use.

We believe that significant uncertainty relates to the policies of the current U.S. Presidential administration. President Biden proposes to make the electricity production in the U.S. carbon free by 2035 and to put the country on the path to achieve net zero carbon emissions by 2050. These policy stances continued during the invasion of Ukraine and the concurrent rise in oil prices as the administration made appeals to other countries to increase oil production while domestic production is challenged by supply chain and labor issues and the maintenance of restrictive regulations. Meanwhile, delays continue for the construction of pipelines needed to transport natural gas to liquid natural gas export facilities for shipment to Western Europe.

In August 2022, President Biden signed the IRA, a climate and healthcare bill that imposes new taxes on corporations with net profits for financial reporting in excess of $1.0 billion, spends billions of dollars over a decade on new workers and technology at the IRS, and funds hundreds of billions of dollars in tax subsidies intended to combat climate change among other measures. According to certain commentary, the legislation will cause investment in technologies needed for leaner production and the use of fuel types, including hydrogen, nuclear, renewables and fossil fuels. However, it appears that receipt of the majority of the tax subsidies will be conditioned on the extent that taxpayers “buy American” and/or pay prevailing wages, among other requirements. Existing supply chains may lack the capacity to meet the demand that the incentives are intended to create. Therefore, the subsidies may not provide the intended economic incentives to renewable and other energy project owners. It is not clear that the legislation, for which the rules and regulations have not yet been finalized, will provide assistance to current and future project owners of fossil-fuel power projects as intended.

In fact, in May 2023, the Biden administration proposed new rules for the Environmental Protection Agency (the “EPA”) that are intended to drastically reduce greenhouse gases from coal- and gas-fired power plants that officials admit will cost such plants billions of dollars to comply fully by 2042. The new EPA rules would give owners of energy plants, that are providing base load power, flexibility in choosing the means to achieve the emission targets. Alternatives could include the installation of carbon-capture systems that remove carbon dioxide from flue gases that are the byproduct of fossil-fuel combustion or the blending of cleaner fuels such as hydrogen. The rules are undergoing a two-month public comment period.

25

Most recently, the debt ceiling bill signed by President Biden on June 3, 2023, includes reforms for certain elements of the permitting process for energy projects. The bill imposes certain timelines for federal agencies to review and approve 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.  

Regarding emissions, it is important to note that in its 2023 reference case, EIA projects that U.S. energy-related carbon dioxide emissions will decline by a little over 30% below the 2005 emissions level by 2030. We believe that a significant portion of the reduction related to the shift from coal-fired to natural gas-fired power generation has already occurred as described above. It appears that from 2005 to 2022, the energy-related emissions declined by approximately 20%. The EIA credits the impacts of the IRA, updates to technology costs and performance across the energy system and changes in the macroeconomic outlook with maintaining the reduction percentage versus the 2005 level of emissions at approximately 30% through 2050. In addition, the EIA indicates that further emissions reductions are limited by longer-term growth in U.S. transportation and industrial activity. The EIA in its report does not include emissions from the power industry among the reasons for the lack of further emission reductions from 2030 through 2050.

The net amount of electricity generation in the U.S. provided by utility-scale wind and solar photovoltaic 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 2020, 2021 and 2022, respectively. EIA projects that new wind and photovoltaic solar capacity will continue to be added to the utility-scale power fleet in the U.S. at a brisk pace substantially attributable to declines in the amount of renewable power plant component and power storage costs, an increase in the scale of energy storage capacity (i.e., battery farms and other energy storage technologies), the availability of valuable tax credits and the overall political commitment to renewable energy.

Most of our recently completed and awarded EPC service contracts relate to the construction of natural gas-fired power plants located within the Mid-Atlantic geographic footprint of PJM Interconnection (“PJM”), which operates a capacity market to ensure long-term grid reliability by securing the appropriate amount of power supply resources needed to meet predicted future energy demands in the Mid-Atlantic region of the U.S. Capacity payments represent meaningful portions of the revenue streams of qualifying power plants.  The capacity auction for a particular delivery year was usually held during the month of May, three years prior to the actual delivery year. However, the 2023/2024 auction, rescheduled to December 2021, was delayed until January 2022 and then was postponed again until June 2022. The auction results included increased capacity powered by nuclear, solar and natural gas energy sources, and decreased capacity provided by coal and wind energy sources. However, prices for the 2023/2024 and 2024/2025 delivery years were significantly lower than each previous auction. Capacity auction prices are scheduled to be posted for 2025-2026 in June 2023. However, PJM recently informed stakeholders that it will seek to delay this auction, which would require the approval of the Federal Energy Regulatory Commission (“FERC”), so that market design rule changes proposed by stakeholders might be implemented for all future auctions.

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

In February 2023, PJM released a position paper that supported the growing concern that the reliability of power grids is being eroded by the rush to renewable power. While acknowledging the reality of the power transition in the PJM system, it warned that its research highlighted four trends that present increasing reliability risks during the transition due to a potential timing mismatch between load growth, resource retirements and the pace of new electricity generating plant additions.

The paper indicates that the growth rate of electricity demand in the PJM footprint is likely to increase from electrification (i.e., shifts to electric-powered automobiles, electric appliances, etc.) coupled with the proliferation of high-demand data centers in the region. Coal-fired and old gas-fired power generation facilities are retiring at a rapid pace due to government and private sector policies as well as economics. The risk is that these retirements may outpace the construction of new power-generating facilities as PJM’s interconnection queue includes primarily intermittent and limited-duration renewable

26

energy resources. Given the operating characteristics of these types of facilities, PJM will need multiple megawatts of renewable power and accompanying battery storage to replace a single megawatt of thermal generation.

In May 2023, the North American Reliability Corporation (“NERC”) issued its Summary Energy Market and Electric Reliability Assessment that does inform FERC that all regions have sufficient capacity power to meet summer demands under normal weather conditions, which is an improved situation as compared to last year. However, the report warns that most of the western U.S., as well as a few other areas of North America, could face capacity power shortfalls during the upcoming summer during extreme conditions like severe heatwaves. The reaction from at least one FERC Commissioner was a statement that the report bodes poorly for the ability of the grid to meet future energy needs, as intermittent renewable power sources continue to replace fossil-fuel plant retirements. The statement continued with an assertion that the U.S. is losing dispatchable electricity generation at a pace that is unsustainable and that will result in negative consequences in the future.

In summary, throughout the U.S., the risk of electricity shortages is real as traditional power plants are being retired more quickly than they can be replaced by renewable energy and battery storage. Power grids are feeling the strain as the U.S. makes the historic transition from conventional power plants fueled by coal and natural gas to cleaner forms of energy such as wind and solar power, and aging nuclear plants are slated for retirement. Electric-grid operators are warning that power-generating capacity is struggling to keep up with demand, a gap that could lead to additional rolling blackouts during heat waves or other peak power periods.

In the U.S., local electricity grids are connected to form larger networks and to improve reliability and economic efficiency and are known as Regional Transmission Operators (“RTOs”) and Independent System Operators (“ISOs”). They are members of three main interconnections, the Eastern Interconnection, the Western Interconnection and the Electric Reliability Council of Texas. These interconnectors cover wide swaths of the U.S. Although the three interconnections operate independently of each other and have very limited transfers of power between them, the operation of interconnections is conducted by balancing authorities, which ensures that power supply and demand are balanced to maintain the reliability of applicable power system. All RTOs, including PJM, and ISOs in the U.S. are balancing authorities. Consequently, reliability threats to individual RTOs and ISOs represent threats to entire interconnection organizations.

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

Accelerating the build-out of renewable energy sources and batteries has become an especially difficult proposition amid supply-chain challenges and inflation. For example, during Fiscal 2023, the highly publicized probe by the U.S. Commerce Department into whether Chinese solar manufacturers were circumventing trade tariffs on solar panels had the effect of halting imports of key components needed to build new solar farms and effectively brought most of the U.S. solar industry to a temporary standstill.

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

U.S. offshore wind projects progress inconsistently, facing challenges in the areas of environmental and fishery impacts, grid connection complexities, transmission planning and federal permitting processes. Further, U.S. projects are confronted by shipping regulations that may limit the ability of developers to replicate successful European erection models. Proponents of clean energy also face political challenges from constituencies who oppose the impacts to wildlife and the environment that may be caused by clean energy infrastructure projects.

Electricity generation from commercial nuclear power plants in the U.S. began in 1958. At the end of 2021, the U.S. had 93 operating commercial nuclear reactors at 55 nuclear power plants in 28 states. The average age of these nuclear reactors is about 40 years old with most plants authorized to operate for another 20 years. The newest reactor in the fleet entered service in 2016, which was twenty years after the previous one began operation. There are two new reactors under

27

construction in the U.S., Vogtle Units 3 and 4. The completion of these two units is many years behind schedule and the units are billions of dollars in excess of their initial estimated cost.

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

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

We believe that the benefits of natural gas as a source of power are compelling, especially as a complement to the deployment of wind and solar powered energy sources, and that the future long-term prospects for natural gas-fired power plant construction remain generally favorable as natural gas continues to be the primary source for power generation in our country. The future availability of less carbon-intense and higher efficiency 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.

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

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

The business footprint for TRC encompasses the Southeast region of the U.S. where there are many business-friendly local and state governments that welcome industrial production facilities. It is notable that significant events like the COVID-19 pandemic and the commitment to renewable energy in the U.S. are resulting in meaningful new business opportunities for TRC in its region. The national focus on infrastructure improvements, biotechnology advancements and energy storage have resulted in firms that are focused on these trends recently choosing TRC to participate in major construction projects in the region.

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

28

While both of these countries are committed to the increase in energy consumption sourced from wind and the sun on the pathway to net zero emissions, there is a recognition that these sources of electrical power are inherently variable. Other technologies will be required to support these power sources and to provide electricity when power demands exceed the amount of electricity supplied by these renewables. The existence of the necessary power reserve will require conventional generation sources, typically natural gas-fired power plants but including nuclear power in the U.K. APC was awarded the significant Kilroot project late in Fiscal 2022 to build a clean burning natural gas-fired power plant in Northern Ireland so that existing coal-fired power sources there can be replaced.

The U.K. usually holds auctions for power capacity about four years in advance of the delivery date and another auction for a smaller amount of capacity around a year before delivery. Evidence of the power production realities in the U.K. are reflected in the results for Britain’s auction to ensure enough electricity capacity for 2022/2023 that were released in 2022. Capacity cleared at a record high price unlike the results for the most recent PJM capacity auctions. A total of nearly 5 gigawatts of capacity was procured in this auction, with nearly 70% of the power associated with gas-fired plants.

The Irish government has issued a policy statement on the security of the electricity supply in Ireland which confirms the requirement for the development of new support technologies to deliver on its commitment to have 80% of the country’s electricity generated from renewables by 2030. The report emphasizes that this will require a combination of conventional generation (typically powered by natural gas), interconnection to other jurisdictions, demand flexibility and other technologies such as battery storage and generation from renewable gases. The Irish government has approved that the development of new conventional generation (including gas-fired and gasoil distillate-fired generation) is a national priority and should be permitted and supported in order to ensure the security of electricity supply while supporting the growth of renewable electricity generation. In tandem with this strategic approach by the Irish government, a significant emphasis has been placed on the development of a green hydrogen policy to expand its role in the overall energy mix required. The work underway for the security of supply review of Ireland’s electricity and natural gas systems will be done in parallel with the development of the hydrogen strategy to ensure that long-term security needs take account of future hydrogen technologies. The investment in the production of green hydrogen correlates strongly with the rapidly developing Irish offshore wind sector and significant bankability signals under the wider European energy policy.

As noted above, APC entered into engineering and construction services contracts during Fiscal 2023 with the ESB to construct three 65 MW aero-derivative gas turbine flexible generation power plants around the city of Dublin, Ireland. All three projects are expected to operate intermittently during peak periods of electricity demand and as back-up supply options when renewable electricity generation is limited. Full construction activities are underway and the plants are scheduled to be completed by the end of Fiscal 2024.

Further, the Irish government recognized that the successful development of data centers in the country is a key aspect in promoting Ireland as a digital economy hot-spot in Europe. The stewards of the electricity supply in Ireland recognize that the large increase in electricity demand presented by the growth of the data center industry represents an evolving, significant risk to the security of the supply. Accordingly, guidelines have been published with the intent to protect both electricity consumers and the security of supply while continuing to allow data centers to connect to the electricity system. Assessment criteria for applications of data centers to obtain grid connections include, among other items, the ability of data center applicants to bring onsite dispatchable power generation (and/or storage) equivalent to or greater than their demand in order to support the security of supply. It is expected that any dispatchable on-site generation developed by data center operators will use natural gas as the primary fuel source combined with renewable technologies such as batteries and solar. The creation of these “energy parks” are seen as a key attraction to the continued investment into Ireland by both the data center providers and their tenants. APC recently completed a project to install natural gas-fired power generation for a major data center in the Dublin area.

APC is actively pursuing other new business opportunities in both the renewable and support sectors of power generation with its existing and new clients. The governments of Ireland and the U.K. have already made funds available to develop and support specific energy projects. APC is also in dialogue with several data center providers in relation to the development of on-site energy parks. The engineering and construction teams of APC are engaged in continuous discussions with particular stakeholders in certain of these other projects and APC’s management believes that it will be part of their eventual execution.

29

Over the past few years, GPS has provided top management guidance and project management expertise to APC as it completed its subcontract efforts for a biomass-burning power plant and won the awards of the projects to build new gas-fired power plant units near Belfast and Dublin. APC has provided manpower to GPS on several of its EPC services contracts. These recent experiences have demonstrated that the two companies can combine resources effectively. We believe that GPS and APC working together is a competitive advantage as we pursue emerging new business opportunities in Ireland and the U.K., based on the strength of the reputation of GPS for successfully completing large gas-fired power plant projects in the U.S. and the growing recognition in the power community in Ireland and the U.K. that APC is positioned and has the capability to build complex power facilities. Most recently, APC was provided with limited notices to proceed with EPC contract activities for an open-cycle gas turbine power facility to be built in central Ireland that will have the capacity to generate approximately 264 MW of temporary emergency electrical power. GPS is teaming with APC in the performance of this contract.

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

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

Comparison of the Results of Operations for the Three Months Ended April 30, 2023 and 2022

We reported net income of $2.1 million, or $0.16 per diluted share, for the three months ended April 30, 2023. For the comparable period of the prior year, we reported net income of $7.5 million, or $0.50 per diluted share.

30

The following schedule compares our operating results for the three months ended April 30, 2023 and 2022 (dollars in thousands):

Three Months Ended April 30, 

    

2023

    

2022

    

$ Change

    

% Change

REVENUES

 

  

 

  

 

  

 

  

Power industry services

$

70,176

$

73,949

$

(3,773)

 

(5.1)

%

Industrial fabrication and field services

 

30,307

 

22,501

 

7,806

 

34.7

Telecommunications infrastructure services

 

3,192

 

3,827

 

(635)

 

(16.6)

Revenues

 

103,675

 

100,277

 

3,398

 

3.4

COST OF REVENUES

 

  

 

  

 

  

 

  

Power industry services

 

60,335

 

59,035

 

1,300

 

2.2

Industrial fabrication and field services

 

26,562

 

18,680

 

7,882

 

42.2

Telecommunications infrastructure services

 

2,554

 

2,824

 

(270)

 

(9.6)

Cost of revenues

 

89,451

 

80,539

 

8,912

 

11.1

GROSS PROFIT

 

14,224

 

19,738

 

(5,514)

 

(27.9)

Selling, general and administrative expenses

 

10,591

 

10,575

 

16

 

0.2

INCOME FROM OPERATIONS

 

3,633

 

9,163

 

(5,530)

 

(60.4)

Other (loss) income, net

 

(629)

 

595

 

(1,224)

 

NM

INCOME BEFORE INCOME TAXES

 

3,004

 

9,758

 

(6,754)

 

(69.2)

Income tax expense

 

895

 

2,273

 

(1,378)

 

(60.6)

NET INCOME

$

2,109

$

7,485

$

(5,376)

(71.8)

%

Revenues

Power Industry Services

The revenues of the power industry services segment, representing the businesses of GPS and APC, decreased by 5.1%, or $3.8 million, to $70.2 million for the three months ended April 30, 2023 compared with revenues of $73.9 million for the three months ended April 30, 2022 as the quarterly construction activities associated with the Guernsey Power Station project, Maple Hill Solar energy facility and Equinix data center project are generally near or at completion. The reduction in revenues between the quarters was partially offset by increasing revenues at several projects including the Trumbull Energy Center, the ESB FlexGen peaker plants, the Kilroot Power Station and the initial phases of another power plant project in Ireland. The revenues of this business segment represented approximately 67.7% of consolidated revenues for the quarter ended April 30, 2023 and 73.7% of consolidated revenues for the corresponding prior year quarter.

The primary driver for the revenues of this segment for the three months ended April 30, 2022 were the revenues associated with the construction of the Guernsey Power Station as the construction activities on this project were at peak levels.

Industrial Fabrication and Field Services

The revenues of our industrial fabrication and field services segment, representing the business of TRC, increased by $7.8 million, or 34.7%, to $30.3 million for the three months ended April 30, 2023 compared to revenues of $22.5 million for the three months ended April 30, 2022 as the amounts of field services and vessel fabrication work increased between periods. For the three months ended April 30, 2023 and 2022, the revenues of this segment represented 29.2% and 22.4% of consolidated revenues for the corresponding periods.

The major customers of TRC include some of North America’s largest fertilizer producers, as well as other chemical, mining, forest products, construction and energy companies with plants, facilities and other sites located primarily in the Southeast region of the U.S.

Telecommunications Infrastructure Services

The revenue results of this business segment, which represent the business of SMC, were $3.2 million for the three-month period ended April 30, 2023, a decrease of $0.6 million, or 16.6%, from the amount of revenues earned during the three months ended April 30, 2022.

31

Cost of Revenues

With the increase in consolidated revenues for the three months April 30, 2023 compared with last year’s first quarter ended April 30, 2022, the consolidated cost of revenues also increased between the quarters. These costs were $89.5 million and $80.5 million for the three-month periods ended April 30, 2023 and 2022, respectively, representing an increase of approximately 11.1%.

For the three-month period ended April 30, 2023, we reported a consolidated gross profit of approximately $14.2 million which represented a gross profit percentage of approximately 13.7% of corresponding consolidated revenues, a decrease from the three-month period ended April 30, 2022 primarily due to changes in our revenue mix, the reversal of previously recorded profit on a project by APC and a loss incurred by TRC on one of its projects. The gross profit percentages of corresponding revenues for the power industry services, industrial fabrication and field services and the telecommunications infrastructure services segments were 14.0%, 12.4% and 20.0%, respectively, for the quarter ended April 30, 2023.

Our consolidated gross profit reported for the three-month period ended April 30, 2022 was $19.7 million, which represented a gross profit percentage of approximately 19.7% of corresponding consolidated revenues. The gross profit percentages of corresponding revenues for the power industry services, industrial fabrication and field services and the telecommunications infrastructure services segments were 20.2%, 17.0% and 26.2%, respectively, for the quarter ended April 30, 2022.

Selling, General and Administrative Expenses

These costs remained stable at $10.6 million during each of the three months ended April 30, 2023 and 2022, and represented 10.2% and 10.5% of corresponding consolidated revenues, respectively.

Other (Loss) Income, Net

Other loss, net, for the three months ended April 30, 2023 was $0.6 million, which reflected the wire-transfer fraud loss that occurred on March 7, 2023 in the amount of $3.0 million and the related legal, audit and other professional fees in the amount of $0.2 million that were incurred in the investigation and reporting of this event, and the conduct of loss-recovery efforts (see Note 15 to the accompanying condensed consolidated financial statements). The total amount of $3.2 million was offset partially by income earned during the period on funds invested in money market accounts, CDs and U.S. Treasury notes in the total amount of approximately $2.4 million, as investment returns are meaningfully higher this year.

We reported other income, net, in the amount of $0.6 million for the three months ended April 30, 2022, which included primarily earnings associated with our solar fund investments.

Income Taxes

We incurred income tax expense for the three months ended April 30, 2023 in the amount of approximately $0.9 million, which reflects a currently estimated annual effective income tax rate of 25.3%. This estimated tax rate differs from the statutory federal tax rate of 21% due primarily to the unfavorable estimated effects of state income taxes and permanent differences, including certain nondeductible executive compensation and an increased amount of global intangible low taxed income (“GILTI”) for the current year. For the three months ended April 30, 2022, we reported income tax expense in the amount of approximately $2.3 million, which reflected an estimated annual effective income tax rate of 23.7% for the period.

Liquidity and Capital Resources as of April 30, 2023

At April 30 and January 31, 2023, our balances of cash and cash equivalents were $195.9 million and $173.9 million, respectively, which represented an increase of $22.0 million.

The net amount of cash used in operating activities for the three months ended April 30, 2023 was $1.2 million. Our net income for the three months ended April 30, 2023, adjusted favorably by the net amount of non-cash income and expense items, represented a source of cash in the total amount of $5.4 million. The reduction in the balance of contract assets of $19.9 million, represented a source of cash and was primarily due to project retentions being moved to contract receivables

32

as the Guernsey Power Station reached substantial completion during the period. The $10.6 million increase in contract receivables during the period represented a use of cash, primarily due to GPS and TRC project billings and, as previously mentioned, the reclassification of project retentions related to the Guernsey Power Station. The increase in contract liabilities of $15.0 million represented a source of cash, primarily due to the net effect of the early phase of construction activities on a GPS project and post peak phase of certain APC projects. However, reductions in the combined level of accounts payables and accrued expenses in the amount of $26.9 million and the increase of other assets of $4.1 million, represented uses of cash during the period.

During the three months ended April 30, 2023, our primary source of cash from investing activities was the net maturities of our short-term investments, which consist entirely of CDs issued by the Bank, in the amount of $59.8 million. We used $30.4 million of these proceeds to invest in available-for-sale securities of U.S. Treasury notes. We also used $0.6 million to make capital expenditures.

For the three months ended April 30, 2023, we used $6.5 million cash in financing activities, including $3.7 million used to repurchase shares of common stock and $3.4 million used for the payment of regular cash dividends. We received proceeds from the exercise of stock options in the amount of $0.5 million, which represented a source of cash. As of April 30, 2023, there were no restrictions with respect to intercompany payments between the holding company, GPS, TRC, APC and SMC.

During the three months ended April 30, 2022, our balance of cash and cash equivalents decreased by a net amount of $158.2 million and our working capital decreased by $22.9 million to $261.3 million as of April 30, 2022. The net amount of cash used in operating activities for the three months ended April 30, 2022 was $39.7 million. Our net income for the period, adjusted favorably by the net amount of non-cash income and expense items, represented a source of cash in the total amount of $9.8 million. However, reductions in the balance of contract liabilities and the combined level of accounts payable and accrued expenses in the amounts of $20.9 million and $15.2 million, respectively, represented uses of cash. Both of these reductions related primarily to the decline in the construction activity of the Guernsey Power Station project. Likewise, the increases in the amounts of accounts receivable, contract assets, prepaid expenses and other assets, in the total of $13.3 million, represented uses of cash during the period.

During the three months ended April 30, 2022, we also used cash to increase the level of our short-term investments, which consisted entirely of CDs issued by the Bank, by $85.0 million. We also used $30.7 million cash in financing activities during the three months ended April 30, 2022, including $27.1 million used to repurchase shares of our common stock, and $3.7 million used for the payment of regular cash dividends.

At April 30, 2023, a portion of our balance of cash and cash equivalents was invested in certificates of deposit and money market funds with most of its net assets invested in cash, U.S. Treasury obligations 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.

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 three months ended April 30, 2023, our net liquidity decreased by $3.6 million to $232.6 million as of April 30, 2023 from $236.2 million as of January 31, 2023, due primarily to common stock repurchases and the payment of cash dividends, partially offset by our net income for the period. As we have no debt service, as our fixed asset acquisitions in a reporting period are typically low, and as our net liquidity includes our short-term investments and available-for-sale U.S. Treasury notes, our levels of working capital are not subjected to the volatility that affects our levels of cash and cash equivalents.

During April 2021, we amended our Credit Agreement with the Bank which extended the expiration date of the Credit Agreement to May 31, 2024 and reduced the borrowing rate. On March 6, 2023, we entered into the Second Amendment to the Credit Agreement. The Second Amendment modified the Credit Agreement to, primarily, replace the interest pricing with a rate of SOFR plus 1.6% and add SOFR successor rate language. The Credit Agreement, as amended, includes the following features, among others: a lending commitment of $50.0 million including a revolving loan and an accordion feature which allows for an additional commitment amount of $10.0 million, subject to certain conditions. Additionally,

33

the Credit Agreement, as amended, continues to include customary terms, covenants and events of default for a credit facility of its size and nature.

We may also use the borrowing ability to cover other credit instruments issued by the Bank for our use in the ordinary course of business as defined by the Bank. At April 30, 2023, we had no outstanding borrowings. However, the Bank has issued letters of credit in the total outstanding amount of $11.5 million in support of the activities of APC under new customer contracts.

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

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

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

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

We have also provided a financial guarantee in the amount of $3.6 million to support certain project developmental efforts. A liability was established for the estimated loss related to this guarantee during Fiscal 2022.

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

The Company made prior year investments of approximately $6.3 million in limited liability companies that make equity investments in solar energy projects that are eligible to receive energy tax credits. 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 sales of debt securities and cash generated from our future operations, with or without funds available under our Credit Agreement, as amended, will be adequate to meet our general business needs in the foreseeable future. In general, we maintain significant liquid capital in our consolidated balance sheet to ensure the maintenance of our bonding capacity and to provide parent company performance guarantees for EPC and other construction projects.

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

34

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

The table following immediately below presents the determinations of EBITDA for the three months ended April 30, 2023 and 2022, respectively (amounts in thousands).

Three Months Ended

April 30, 

    

2023

    

2022

Net income, as reported

$

2,109

$

7,485

Income tax expense

 

895

 

2,273

Depreciation

 

547

 

809

Amortization of intangible assets

 

98

 

166

EBITDA

$

3,649

$

10,733

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 is included in Item 7 of Part II of our Annual Report. During the three months ended April 30, 2023, there have been no material changes in the way we apply the critical accounting policies described therein.

Recently Issued Accounting Pronouncements

Other than ASU 2023-02 that is related to the accounting for investment tax credits and that is discussed in Note 1 to the accompanying condensed consolidated financial statements, there are no recently issued accounting pronouncements that have not yet been adopted that we believe may be material to our consolidated financial statements.

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. As of April 30, 2023, we had no outstanding borrowings under our financing arrangements with the Bank (see Note 6 to the accompanying condensed consolidated financial statements), which provide a revolving loan with a maximum borrowing amount of $50.0 million that is available until May 31, 2024 with interest at SOFR plus 1.6%. During the

35

three months ended April 30, 2023 and 2022, we did not enter into any material derivative financial instruments for trading, speculation or other purposes that would expose us to market risk.

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

Increase (Decrease) in

Increase (Decrease) in

Net Increase (Decrease) in

Basis Point Change

    

Interest Income

    

Interest Expense

    

Income (Pre-Tax)

Up 300 basis points

$

7,731

$

$

7,731

Up 200 basis points

5,154

5,154

Up 100 basis points

 

2,577

 

 

2,577

Down 100 basis points

(2,577)

(2,577)

Down 200 basis points

(5,154)

(5,154)

Down 300 basis points

 

(7,731)

 

 

(7,731)

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

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.

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

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

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 April 30, 2023.

36

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 April 30, 2023, 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 April 30, 2023 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 other 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.

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

Our board of directors has authorized management to spend up to $125 million in 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 April 30, 2023 follows:

Approximate Dollar

Total Number of

Value of Shares That May Yet

Shares Purchased as Part of

Be Purchased under the

Total Number of

Average Price per

Publicly Announced

Plans or Programs

Period

    

Shares Repurchased

    

Share Paid

    

Plans or Programs

    

(Dollars in Thousands)

February 1 - 28, 2023

40,100

$

39.53

40,100

$

34,816

March 1 - 31, 2023

34,938

$

39.67

34,938

$

33,430

April 1 - 30, 2023

17,618

$

39.69

17,618

$

32,731

Total

 

92,656

 

92,656

Under the Share Repurchase Plan and as of April 30, 2023, the Company has repurchased 2,476,122 shares of its common stock since November 2021 (when it began to make such repurchases) at an average price of $37.26 per share.

37

ITEM 3.  DEFAULTS UPON SENIOR SECURITIES

None

ITEM 4. MINE SAFETY DISCLOSURES

Not Applicable

ITEM 5. OTHER INFORMATION

None

ITEM 6. EXHIBITS

Exhibit No. 

    

Title

Exhibit 31.1

 

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

Exhibit 31.2

 

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

Exhibit 32.1

 

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

Exhibit 32.2

 

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

 

 

 

Exhibit 101:

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

Exhibit 101.SCH

 

Inline XBRL Taxonomy Extension Schema.

Exhibit 101.CAL

 

Inline XBRL Taxonomy Extension Calculation Linkbase.

Exhibit 101.LAB

 

Inline XBRL Taxonomy Label Linkbase.

Exhibit 101.PRE

 

Inline XBRL Taxonomy Presentation Linkbase.

Exhibit 101.DEF

 

Inline XBRLTaxonomy Extension Definition Document.

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

 

 

June 8, 2023

By:  

/s/ David H. Watson

 

 

David H. Watson

 

 

President and Chief Executive Officer

June 8, 2023

By:  

/s/ Richard H. Deily

 

 

Richard H. Deily

 

 

Senior Vice President, Chief Financial Officer,

 

 

Treasurer and Corporate Secretary

38

EX-31.1 2 agx-20230430xex31d1.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 April 30, 2023;

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: June 8, 2023

By:

/s/ David H. Watson

 

 

David H. Watson

President and Chief Executive Officer

 

 

(Principal Executive Officer)


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

Exhibit 31.2

SARBANES-OXLEY ACT SECTION 302(a) CERTIFICATION

I, Richard H. Deily, certify that:

1.    I have reviewed this Quarterly Report on Form 10-Q of Argan, Inc. (the “Registrant”) for the period ended April 30, 2023;

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: June 8, 2023

By:

/s/ Richard H. Deily

 

 

Richard H. Deily

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

 

 

(Principal Financial Officer)


EX-32.1 4 agx-20230430xex32d1.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 April 30, 2023, 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: June 8, 2023

By:

/s/ David H. Watson

 

 

David H. Watson

President and Chief Executive Officer

 

 

(Principal Executive Officer)


EX-32.2 5 agx-20230430xex32d2.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 April 30, 2023, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Richard H. Deily, Senior Vice President and Chief Financial Officer 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: June 8, 2023

By:

/s/ Richard H. Deily

 

 

Richard H. Deily

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

 

 

(Principal Financial Officer)


GRAPHIC 6 agx-20230430x10q001.jpg GRAPHIC begin 644 agx-20230430x10q001.jpg M_]C_X 02D9)1@ ! @ 0 ! #_VP!# ," @," @,# P,$ P,$!0@%!00$ M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_ MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04 M%!04%!04%!04%!04%!04%!04%!04%!3_P 1" ! ( # 2( A$! Q$!_\0 M'P 04! 0$! 0$ $" P0%!@<("0H+_\0 M1 @$# P($ P4% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#]3:*** "B MBB@ H)HKP']L3QU-8:QXMBN[6.Y1BK10QPDRD$-O'0 MU\X> OC1::3H2> /B#X>FAGTR);-B(0Z.B<)N3@@@ 89<@\$8KL-'@\."59? M#UQW(!_4UA[*M*:C7A.#C)N,HKGA./2]O(^>^L5*\KMM>FQ M]6_#GXW10Z9*E[X\O+.^BB_=)JEZV2P]?.RK?F:Z;P;^VOHEIKT6C>-+S3[> M"9Q'#KMG,OD!B< 3IN.P?[8)7U"CFO$O!VG:]JVF72Q?"W0-601'-SJ$J08_ MV@"&->"_%[3I-%>;[;IGAG06.^%)(A9S M3<.]C+N\M<'G$;(ZC/\ "4':OLNO'K4I4*CIRZ'HTZBJ14D%%%%8F@4444 % M%%% !1110 5\<_\ !0WP1KNM1> _$GAJ<0:]HLMV+/S?]3,SJA>!^WSHCXS_ M '.W6OL:N3^*7PZL?BGX*O\ P]>SRV1G DM[Z RVDZG,"E M\P,5L?$-E;"?3]04='B9L-&W%M$O9;7PZLFN:@<@WLKF4D]SYAX_[Y&/>O&+]O'?Q M*\1S$FS2SM-.+ 85IFD>0@?[JJ/^^QZU^C]>=? /X+:3\!?AO8>%M*?[0ZLU MQ?7S+M:[N7QOD([#@ #LJJ.U>BUY&+K*O6E46QZ="G[*FHL****Y#<**** M\5\^0_&ES^UM)X6-T?['DL#IB1EOD^V*/.+8Z9/S)^ KW+Q)KD/AKP_J6JW' M,-E;O<,/7:"+ SG4KB*'6IG.3F]23?.G_ (\H MQZ&N>^*7Q\\?7'@O4O#EEI%QX;77&M=>N62-&:V#*9"58Y55C+8*98O MU&,9M58NM[#K:_D:2JQC+EZGUMFBOGG3OBMXL^)"^-]0T/58_#UCH-B]S90B MTCG:X8!ROG%P>"(^0N,;NO'/&? ?]IOQQXY^'GB_QKKZ7KD6H1:H^;G1K_38XXB A$=5T"2&"#6K,7+6US"LA4D1L &^CX_"KEC7AJ'MTVH MZ;>=O\R9U:?+S26UOQ.R\/\ P%\.>'[=X([K5;F%AM>.:Z"AAZ$HJG'XUV^A M>'=,\,V(L])L+?3K8'<8[>,("?4XZGW/-?*WQ0^/OQ+^$/[1'@/0-6OM)O\ MP_XDFMTETRUM-OV=)9C#A92=[.APV[@-_=%?77+ M]8O?#_AO4-3L;:&\ELH7N&@GD,8=44L0& /.!QQ7EOP%^/>L?&[5-;V^'[+2 M-)TETAFE-Z\L\DCJ64*GE@ #DD]^!7IOC__ )$/Q+_V#;G_ -%-7RK^QS>W M.F^!_BU>V4PM[NVEBGBD9 X#+;LPR#U'&*X)5'"JT]N6_P")G.;C42OI8^R* M*^3=8^-'Q0U#X'>*O&&F:KI.FOH4NYIC9"269<)F-5/R*!OSN(8GI@8S6M\/ M?VJ=4\0?LWZ!XMO;.VE\6ZCIZIN,@XKFA2:J2J2UO:WHC.5+FYK]3XU_9J^,.G>-OV/?$/AV?4[9 MM;\,P36$ELTP\TVY8- ^,Y*[6V ^J$5[%^Q[FPR,NTO'9QJ2,YQD#IFK=MI5IIWFO96=M:2R#YFBB M5-V.F[ R>M%2DI8EXA;6M;YW)C2<9J3>RL?,>G2>&;74O'UOHGC73?!VF:HL MFFR0ZT@=P/F#30_.@"_.X4,6]\<5T'A.U\)_L^_ &^'PXU&T\3*+D&YU-)X[ M@/:4=+N-(L9],)R;*2V1H M"@JZN%E5P:PSEKIKZ6_R M-)8=R@XW[?@?#'[;>JV4?[4OP9D>\MTCCFTYG9I5"H#?9!)SP,W)LH-0)4Q-N.QS7IUYX4T346W76C:? MHSC.#7+.DY2< MK[JPYT^>7-?H?'T5[;I^QM\5E:>)6\PC!< Y(AP/QP%8UE(9=#LX&>:)N!)*Q^XL*\L9"P&. M.6(6K7AS]I#1_$?QJN_AQ%I-_#?10SRQWK &)_)($@8#E.O!/7V)%>FZ7X=T MK1'F?3M+LM/>;_6M:VZ1%_\ >*@9_&I8=(L+?4)K^*QMXKZ=0DMTD*K+(HZ! 3F R1]378E) EX-101.SCH 7 agx-20230430.xsd EX-101.SCH 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink 00100 - Statement - CONSOLIDATED STATEMENTS OF EARNINGS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 40101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION - Financial Instruments on a Recurring Basis (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - INTANGIBLE ASSETS - Components of Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 40702 - Disclosure - COMMITMENTS - Future minimum lease payments (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - INCOME TAXES - Income Tax Expense Reconciliation (Details) link:presentationLink link:calculationLink link:definitionLink 41002 - Disclosure - COMMITMENTS - Future minimum lease payments (Details) Calc2 link:presentationLink link:calculationLink link:definitionLink 41101 - Disclosure - NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN (Details) link:presentationLink link:calculationLink link:definitionLink 41501 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details) link:presentationLink link:calculationLink link:definitionLink 41502 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 00205 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - ACCOUNTS RECEIVABLE link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - INTANGIBLE ASSETS link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - FINANCING ARRANGEMENTS link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - COMMITMENTS link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - LEGAL CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - STOCK-BASED COMPENSATION link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - INCOME TAXES link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - NET INCOME PER SHARE link:presentationLink link:calculationLink link:definitionLink 11201 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES link:presentationLink link:calculationLink link:definitionLink 11301 - Disclosure - CUSTOMER CONCENTRATIONS link:presentationLink link:calculationLink link:definitionLink 11401 - Disclosure - SEGMENT REPORTING link:presentationLink link:calculationLink link:definitionLink 20102 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies) link:presentationLink link:calculationLink link:definitionLink 30103 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Tables) link:presentationLink link:calculationLink link:definitionLink 30303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 30503 - Disclosure - INTANGIBLE ASSETS (Tables) link:presentationLink link:calculationLink link:definitionLink 30703 - Disclosure - COMMITMENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 30903 - Disclosure - STOCK-BASED COMPENSATION (Tables) link:presentationLink link:calculationLink link:definitionLink 31003 - Disclosure - INCOME TAXES (Tables) link:presentationLink link:calculationLink link:definitionLink 31103 - Disclosure - NET INCOME PER SHARE (Tables) link:presentationLink link:calculationLink link:definitionLink 31403 - Disclosure - SEGMENT REPORTING (Tables) link:presentationLink link:calculationLink link:definitionLink 40201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Details) link:presentationLink link:calculationLink link:definitionLink 40202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 40202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations Default (Details) link:presentationLink link:calculationLink link:definitionLink 40203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details) link:presentationLink link:calculationLink link:definitionLink 40301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 40302 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details) link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - ACCOUNTS RECEIVABLE (Details) link:presentationLink link:calculationLink link:definitionLink 40502 - Disclosure - INTANGIBLE ASSETS - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - FINANCING ARRANGEMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - COMMITMENTS - Leases (Details) link:presentationLink link:calculationLink link:definitionLink 40703 - Disclosure - COMMITMENTS - Warranties (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details) link:presentationLink link:calculationLink link:definitionLink 40902 - 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 40903 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details) link:presentationLink link:calculationLink link:definitionLink 40904 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 41002 - Disclosure - INCOME TAXES - Net Operating Loss Carryback (Details) link:presentationLink link:calculationLink link:definitionLink 41003 - Disclosure - INCOME TAXES - Research and Development Tax Credits (Details) link:presentationLink link:calculationLink link:definitionLink 41004 - Disclosure - INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details) link:presentationLink link:calculationLink link:definitionLink 41102 - Disclosure - NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN - Additional information (Details) link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details) link:presentationLink link:calculationLink link:definitionLink 41301 - Disclosure - CUSTOMER CONCENTRATIONS (Details) link:presentationLink link:calculationLink link:definitionLink 41401 - Disclosure - SEGMENT REPORTING (Details) link:presentationLink link:calculationLink link:definitionLink 41503 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS link:presentationLink link:calculationLink link:definitionLink 11501 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION link:presentationLink link:calculationLink link:definitionLink 30203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables) link:presentationLink link:calculationLink link:definitionLink 31503 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 8 agx-20230430_cal.xml EX-101.CAL EX-101.DEF 9 agx-20230430_def.xml EX-101.DEF EX-101.LAB 10 agx-20230430_lab.xml EX-101.LAB EX-101.PRE 11 agx-20230430_pre.xml EX-101.PRE XML 12 R1.htm IDEA: XBRL DOCUMENT v3.23.1
Document and Entity Information - shares
3 Months Ended
Apr. 30, 2023
Jun. 05, 2023
Document And Entity Information    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Apr. 30, 2023  
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,410,645
Entity Central Index Key 0000100591  
Document Fiscal Year Focus 2024  
Current Fiscal Year End Date --01-31  
Document Fiscal Period Focus Q1  
Amendment Flag false  
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.23.1
CONSOLIDATED STATEMENTS OF EARNINGS - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
CONSOLIDATED STATEMENTS OF EARNINGS    
REVENUES $ 103,675 $ 100,277
Cost of revenues 89,451 80,539
GROSS PROFIT 14,224 19,738
Selling, general and administrative expenses 10,591 10,575
INCOME FROM OPERATIONS 3,633 9,163
Other (loss) income, net (629) 595
INCOME BEFORE INCOME TAXES 3,004 9,758
Income tax expense 895 2,273
NET INCOME 2,109 7,485
Foreign currency translation adjustments 440 (1,264)
Net unrealized losses on available-for-sale securities (37)  
COMPREHENSIVE INCOME $ 2,512 $ 6,221
NET INCOME PER SHARE    
Basic (in Dollars per share) $ 0.16 $ 0.50
Diluted (in dollars per share) $ 0.16 $ 0.50
WEIGHTED AVERAGE NUMBER OF SHARES OUTSTANDING    
Basic 13,413 14,910
Diluted 13,546 14,992
CASH DIVIDENDS PER SHARE $ 0.25 $ 0.25
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.23.1
CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Apr. 30, 2023
Jan. 31, 2023
CURRENT ASSETS    
Cash and cash equivalents $ 195,947 $ 173,947
Short-term investments 90,614 151,511
Available-for-sale securities 30,376  
Accounts receivable, net 60,774 50,132
Contract assets 4,914 24,778
Other current assets 42,376 38,334
TOTAL CURRENT ASSETS 425,001 438,702
Property, plant and equipment, net 10,665 10,430
Goodwill 28,033 28,033
Intangible assets, net 2,511 2,609
Deferred taxes, net 3,606 3,689
Right-of-use and other assets 5,878 6,024
TOTAL ASSETS 475,694 489,487
CURRENT LIABILITIES    
Accounts payable 36,334 56,375
Accrued expenses 44,755 49,867
Contract liabilities 111,308 96,261
TOTAL CURRENT LIABILITIES 192,397 202,503
Noncurrent liabilities 5,348 6,087
TOTAL LIABILITIES 197,745 208,590
COMMITMENTS AND CONTINGENCIES (see Notes 7 and 8)
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,414,404 and 13,441,590 shares outstanding at April 30, 2023 and January 31, 2023, respectively 2,374 2,374
Additional paid-in capital 161,347 162,208
Retained earnings 206,584 207,832
Less treasury stock, at cost - 2,413,885 and 2,386,699 shares at April 30, 2023 and January 31, 2023, respectively (89,883) (88,641)
Accumulated other comprehensive loss (2,473) (2,876)
TOTAL STOCKHOLDERS' EQUITY 277,949 280,897
TOTAL EQUITY 277,949 280,897
TOTAL LIABILITIES AND EQUITY $ 475,694 $ 489,487
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.23.1
CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares
Apr. 30, 2023
Jan. 31, 2023
CONSOLIDATED BALANCE SHEETS    
Preferred stock, par value $ 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 $ 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,414,404 13,441,590
Treasury stock, shares 2,413,885 2,386,699
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.23.1
CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
$ in Thousands
Common Stock
Additional Paid-in Capital
Retained Earnings
Treasury Stock
Accumulated Other Comprehensive Loss
Non-controlling Interests
Total
Balances at Jan. 31, 2022 $ 2,368 $ 158,190 $ 188,690 $ (20,405) $ (2,451) $ (797) $ 325,595
Balances (in shares) at Jan. 31, 2022 15,257,688            
Net income     7,485       7,485
Foreign currency translation gain (loss)         (1,264)   (1,264)
Stock compensation expense   920         920
Stock option exercises and other share-based award settlements $ 6 60         66
Stock option exercises and other share-based award settlements (in shares) 39,099            
Common stock repurchases       (27,077)     $ (27,077)
Common stock repurchases (in shares) (710,879)           (710,879)
Cash dividends     (3,712)       $ (3,712)
Balances at Apr. 30, 2022 $ 2,374 159,170 192,463 (47,482) (3,715) $ (797) 302,013
Balances (in shares) at Apr. 30, 2022 14,585,908            
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     2,109       2,109
Foreign currency translation gain (loss)         440   440
Net unrealized losses on available-for-sale securities         (37)   (37)
Stock compensation expense   1,034         1,034
Stock option exercises and other share-based award settlements   (1,895)   2,439     $ 544
Stock option exercises and other share-based award settlements (in shares) 65,470           30,000
Common stock repurchases       (3,681)     $ (3,681)
Common stock repurchases (in shares) (92,656)           (92,656)
Cash dividends     (3,357)       $ (3,357)
Balances at Apr. 30, 2023 $ 2,374 $ 161,347 $ 206,584 $ (89,883) $ (2,473)   $ 277,949
Balances (in shares) at Apr. 30, 2023 13,414,404            
XML 17 R6.htm IDEA: XBRL DOCUMENT v3.23.1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
CASH FLOWS FROM OPERATING ACTIVITIES    
Net income $ 2,109 $ 7,485
Adjustments to reconcile net income to net cash used in operating activities    
Changes in accrued interest on investments 1,081 (203)
Stock compensation expense 1,034 920
Depreciation 547 809
Lease expense 439 750
Amortization of intangible assets 98 166
Deferred income tax expense 147 450
Equity in loss (income) of solar energy investments 32 (610)
Other 25 (9)
Changes in operating assets and liabilities    
Accounts receivable (10,642) (9,069)
Contract assets 19,864 (1,976)
Other assets (4,089) (2,291)
Accounts payable and accrued expenses (26,940) (15,229)
Contract liabilities 15,047 (20,923)
Net cash used in operating activities (1,248) (39,730)
CASH FLOWS FROM INVESTING ACTIVITIES    
Purchases of short-term investments (90,000) (175,000)
Maturities of short-term investments 149,750 90,000
Purchases of available-for-sale securities (30,355)  
Purchases of property, plant and equipment (645) (238)
Net cash provided by (used in) investing activities 28,750 (85,238)
CASH FLOWS FROM FINANCING ACTIVITIES    
Common stock repurchases (3,681) (27,077)
Payments of cash dividends (3,357) (3,712)
Proceeds from the exercise of stock options 544 66
Net cash used in financing activities (6,494) (30,723)
EFFECTS OF EXCHANGE RATE CHANGES ON CASH 992 (2,526)
NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS 22,000 (158,217)
CASH AND CASH EQUIVALENTS, BEGINNING OF PERIOD 173,947 350,472
CASH AND CASH EQUIVALENTS, END OF PERIOD $ 195,947 $ 192,255
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.23.1
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION
3 Months Ended
Apr. 30, 2023
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, including the renewable energy sector. The wide range of customers includes primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial fabrication and field 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, its wholly-owned subsidiaries and a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 14, 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 April 30, 2023, the condensed consolidated statements of earnings and stockholders’ equity for the three months ended April 30, 2023 and 2022, and the condensed consolidated statements of cash flows for the three months ended April 30, 2023 and 2022 are unaudited. The condensed consolidated balance sheet as of January 31, 2023 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, 2023 (“Fiscal 2023”).

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 April 30, 2023, 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.

Accounting Policies

In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method (“ASU 2023-02”), which provide an election to account for tax equity investments using the proportional amortization method, if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-020 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.

Available-For-Sale Securities

At each balance sheet date, available-for-sale securities are recorded at fair value, with unrealized gains and, to the extent deemed temporary, unrealized losses reported as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, realized gains and realized losses are included in other income or expense, as applicable, in the Company’s condensed consolidated statement of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of available-for-sale securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the available-for-sale securities is reevaluated at each balance sheet date.

The Company considers its available-for-sale securities impaired when a decline in fair value below its cost basis is determined to be other than temporary. The Company evaluates whether the decline in fair value is other than temporary based on the amount and duration of the period that the fair value of the available-for-sale security is less than its cost basis, overall market conditions and trends, the Company’s intent to sell the available-for-sale security and whether it is more likely than not that the Company would be required to sell the security before its anticipated recovery. If a decline in fair value is determined to be other than temporary, the Company records an impairment loss and establishes a new cost basis.

Fair Values

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

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

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

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

At April 30, 2023 and January 31, 2023, certain amounts of cash equivalents were invested in money market funds with net assets invested in high-quality money market instruments. Money market funds were classified as Level 1 due to the short-term nature of these instruments and as their fair value is based on quoted prices in active markets for identical assets. As of April 30, 2023, all of the Company’s available-for-sale securities were U.S. Treasury notes and were classified as Level 2, as their fair value is measured based on quoted prices in active markets for similar assets.  As of April 30, 2023 and January 31, 2023, the Company did not have any financial assets measured on a recurring basis using Level 3 inputs. The carrying value amounts presented in the condensed consolidated balance sheets for the Company’s other current assets,

which primarily include cash, short term investments, accounts receivable and contract assets, and its current liabilities are reasonable estimates of their fair values due to the short-term nature of these items.

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

April 30, 2023

January 31, 2023

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Money market funds

$

112,546

$

$

$

68,647

$

$

Available-for-sale securities

30,376

Totals

$

112,546

$

30,376

$

$

68,647

$

$

Treasury Stock

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

Variable Interest Entity

In January 2018, the Company was deemed to be the primary beneficiary of a VIE that was performing the project development activities related to the planned construction of a new natural gas-fired power plant. In the fourth quarter of Fiscal 2023, the Company was deemed to no longer be the primary beneficiary of the VIE, and the VIE was deconsolidated. Prior to deconsolidation, the account balances of the VIE had been included in the Company’s consolidated financial statements.

XML 19 R8.htm IDEA: XBRL DOCUMENT v3.23.1
REVENUES FROM CONTRACTS WITH CUSTOMERS
3 Months Ended
Apr. 30, 2023
REVENUES FROM CONTRACTS WITH CUSTOMERS  
REVENUES FROM CONTRACTS WITH CUSTOMERS

NOTE 2 – REVENUES FROM CONTRACTS WITH CUSTOMERS

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

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

The Company focuses on the transfer of the contractor’s control of the goods and/or services to the customer. When a performance obligation is satisfied over time, the related revenues are recognized over time. The Company’s revenues are recognized primarily under various types of long-term construction contracts, including those for which revenues are based on either a fixed-price or a time-and-materials basis, and primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer.

Revenues from fixed-price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. If, at any time, the estimate of contract profitability indicates an anticipated loss on a contract, the Company will recognize the total loss in the reporting period in which it is identified and the loss amount becomes estimable. Revenues from time-and-materials contracts are recognized when the related services are provided to the customer.

Predominantly all of the Company’s fixed-price contracts are considered to have a single performance obligation. Although multiple promises to transfer individual goods or services may exist, they are not typically distinct within the context of such contracts because contract promises included therein are interrelated or the contracts require the Company to perform

critical integration so that the customer receives a completed project. Warranties provided under the Company’s contracts with customers are assurance-type primarily and are recorded as the corresponding contract work is performed.

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

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

The balances of the Company’s accounts receivable represent amounts billed to customers that have yet to be collected and represent an unconditional right to cash from its customers. Contract assets include amounts that represent the rights to receive payment for goods or services that have been transferred to the customer, with the rights conditional upon something other than the passage of time. Contract liabilities include amounts that reflect obligations to provide goods or services for which payment has been received. The amounts of revenues recognized during the three months ended April 30, 2023 and 2022 that were included in the balances of contract liabilities as of January 31, 2023 and 2022, respectively, were approximately $50.9 million and $67.3 million, respectively.

Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. Retention amounts and the length of retention periods may vary. Retainage amounts related to active contracts are considered current regardless of the term of the applicable contract; such amounts are generally collected by the completion of the applicable contract. The amounts retained by project owners and other customers under construction contracts at April 30, 2023 and January 31, 2023 were $25.0 million and $49.1 million, respectively.

Variable Consideration

Amounts for contract variations for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The effects of any revision to a transaction price can be determined at any time and they could be material. The Company includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. Once a final amount has been determined, the transaction price may be revised again to reflect the final resolution. At April 30, 2023 and January 31, 2023, the aggregate amounts of such contract variations included in the transaction prices that were still pending customer acceptance were $12.2 million and $11.6 million, respectively. Variations related to the Company’s contracts typically represent modifications to the existing contracts and performance obligations and do not represent new performance obligations. Actual costs related to any changes in the scope of the corresponding contract are expensed as they are incurred. Changes to total estimated contract costs and losses, if any, are reflected in operating results for the period in which they are determined.

The Company’s long-term contracts typically have schedule dates and other performance objectives that if not achieved could subject the Company to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by the achievement of a specified level of output or efficiency. Each applicable contract defines the conditions under which a project owner may be entitled to any liquidated damages. At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted from the

transaction price as the Company believes that it has included activities in its contract plan, and the associated forecasted contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. The Company considers potential liquidated damages, the costs of other related items and potential mitigating factors in determining the adequacy of its regularly updated estimates of the amounts of gross profit expected to be earned on active projects.

In other cases, the Company may have the grounds to assert liquidated damages against subcontractors, suppliers, project owners or other parties related to a project. Such circumstances may arise when the Company’s activities and progress are adversely affected by delayed or damaged materials, challenges with equipment performance or other events out of the Company’s control where the Company has rights to recourse, typically in the form of liquidated damages. In general, the Company does not adjust the corresponding contract accounting until it is probable that the favorable cost relief will be realized. Such adjustments have been and could be material.

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

Remaining Unsatisfied Performance Obligations (“RUPO”)

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

At April 30, 2023, the Company had RUPO of $0.7 billion. The largest portion of RUPO at any date usually relates to engineering, procurement and construction (“EPC”) service 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 37% of the RUPO amount at April 30, 2023 will be included in the amount of consolidated revenues that will be recognized during the remainder of the fiscal year ending January 31, 2024 (“Fiscal 2024”). Most of the remaining amount of the RUPO amount at April 30, 2023 is expected to be recognized in revenues during the fiscal years ending January 31, 2025 and January 31, 2026.

It is important to note that estimates may be changed in the future and that cancellations, deferrals, or scope adjustments may occur related to work included in the amount of RUPO at April 30, 2023. 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.

Disaggregation of Revenues

The following table presents consolidated revenues for the three months ended April 30, 2023 and 2022, disaggregated by the geographic area where the corresponding projects were located:

Three Months Ended April 30, 

2023

    

2022

United States

$

65,244

$

80,273

Republic of Ireland

 

24,856

 

9,653

United Kingdom

 

13,575

 

10,351

Consolidated Revenues

$

103,675

$

100,277

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

XML 20 R9.htm IDEA: XBRL DOCUMENT v3.23.1
CASH, CASH EQUIVALENTS AND INVESTMENTS
3 Months Ended
Apr. 30, 2023
CASH, CASH EQUIVALENTS AND INVESTMENTS  
CASH, CASH EQUIVALENTS AND INVESTMENTS

NOTE 3 – CASH, CASH EQUIVALENTS AND INVESTMENTS

Cash and Cash Equivalents

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

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

Short-Term Investments

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

Available-For-Sale Securities

During the fiscal quarter ended April 30, 2023, the Company purchased U.S. Treasury notes with original maturities of two and three years. The Company’s available-for-sale securities consisted of the following amortized cost, allowance for credit losses, gross unrealized gains and losses and estimated fair value by contractual maturity as of April 30, 2023:

April 30, 2023

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due in one to two years

$

15,014

$

$

$

37

$

14,977

Due in two to three years

15,399

15,399

Totals

$

30,413

$

$

$

37

$

30,376

As of April 30, 2023, interest receivable in the amount of $0.1 million is included in balance of available-for-sale securities on the condensed consolidated balance sheets. For the three months ended April 30, 2023, the change in net unrealized holding losses for the Company’s available-for-sale securities reported in other comprehensive income was not material. For the three months ended April 30, 2023, there were no sales of the Company’s available-for-sale securities, and therefore, there were no amounts of gains or losses reclassified out of other comprehensive income into net income. All

unrealized losses for the available-for-sale securities have been in a continuous loss position for less than 12 months. The Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of April 30, 2023, which includes an assessment of whether it is more likely than not the Company will be required to sell the investment before recovery of the investment’s amortized cost basis.

Concentration Risk

The Company has a substantial portion of its cash on deposit in the U.S. with Bank of America, N.A.  (the “Bank”). 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. Management does not believe that the combined amount of the CDs and the cash deposited with the Bank and cash balances maintained at financial institutions in Ireland and the U.K., in excess of government-insured levels, represent material risks.

XML 21 R10.htm IDEA: XBRL DOCUMENT v3.23.1
ACCOUNTS RECEIVABLE
3 Months Ended
Apr. 30, 2023
ACCOUNTS RECEIVABLE  
ACCOUNTS RECEIVABLE

NOTE 4 – ACCOUNTS RECEIVABLE

The Company generally extends credit to a customer based on an evaluation of the customer’s financial condition, without requiring tangible collateral. Customer payments on other construction, fabrication and field service contracts are generally due within 30 to 60 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts 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 months ended April 30, 2023 and 2022 were insignificant. The allowance for credit losses at April 30, 2023 and January 31, 2023 was $1.8 million and $1.9 million, respectively.

XML 22 R11.htm IDEA: XBRL DOCUMENT v3.23.1
INTANGIBLE ASSETS
3 Months Ended
Apr. 30, 2023
INTANGIBLE ASSETS  
INTANGIBLE ASSETS

NOTE 5 – INTANGIBLE ASSETS

At both April 30, 2023 and January 31, 2023, 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, 2023, 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 fabrication and field services segment and consisted of the following as of April 30, 2023 and January 31, 2023:

April 30, 2023

January 31, 2023

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade names

15 years

$

4,499

$

2,225

$

2,274

$

4,499

$

2,150

$

2,349

Customer relationships

10 years

916

679

237

916

656

260

Totals

$

5,415

$

2,904

$

2,511

$

5,415

$

2,806

$

2,609

XML 23 R12.htm IDEA: XBRL DOCUMENT v3.23.1
FINANCING ARRANGEMENTS
3 Months Ended
Apr. 30, 2023
FINANCING ARRANGEMENTS  
FINANCING ARRANGEMENTS

NOTE 6 – FINANCING ARRANGEMENTS

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

At April 30, 2023, the Company did not have any borrowings outstanding under the Credit Agreement. However, the Bank has issued letters of credit in the total outstanding amount of $11.5 million at April 30, 2023, in support of the activities of

APC under existing customer contracts. The comparable outstanding total amount of letters of credit at January 31, 2023 was $8.8 million.

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

XML 24 R13.htm IDEA: XBRL DOCUMENT v3.23.1
COMMITMENTS
3 Months Ended
Apr. 30, 2023
COMMITMENTS  
COMMITMENTS

NOTE 7 – COMMITMENTS

Leases

The Company’s leases are primarily operating leases that cover office space, expiring on various dates through December 2031, and certain equipment used by the Company in the performance of its construction services contracts. Some of these equipment leases may be embedded in broader agreements with subcontractors or construction equipment suppliers. The Company has no material finance leases. None of the operating leases includes significant amounts for incentives, rent holidays or price escalations. Under certain leases, the Company is obligated to pay property taxes, insurance, and maintenance costs. For leases that contain both lease and non-lease components, fixed and variable payments are allocated to each component relative to observable or estimated standalone prices.

Operating lease right-of-use assets and associated lease liabilities are recorded in the balance sheet at the lease commencement date based on the present value of future minimum lease payments to be made over the expected lease term. As the implicit rate is not determinable in most of the Company’s leases, management uses the Company’s incremental borrowing rate at the commencement date in determining the present value of future payments. The expected lease term includes any option to extend or to terminate the lease when it is reasonably certain the Company will exercise such option. Right-of-use assets at April 30, 2023 and January 31, 2023, were $4.6 million and $4.8 million, respectively.

Operating lease expense amounts are recorded on a straight-line basis over the expected lease terms. Operating lease expenses for the three months ended April 30, 2023 and 2022 were $0.4 million and $0.8 million, respectively. Operating lease payments for the three months ended April 30, 2023 and 2022 were $0.4 million and $0.8 million, respectively.

The following is a schedule of future minimum lease payments for the operating leases that were recognized in the condensed consolidated balance sheet as of April 30, 2023:

Years Ending January 31, 

2024 (remainder)

    

$

1,244

2025

1,350

2026

1,079

2027

235

2028

213

Thereafter

815

Total lease payments

4,936

Less imputed interest

303

Present value of lease payments

4,633

Less current portion (included in accrued expenses)

1,491

Noncurrent portion (included in noncurrent liabilities)

$

3,142

For operating leases as of April 30, 2023, the weighted average lease term and weighted average discount rate was 56 months and 3.7%, respectively. For operating leases as of January 31, 2023, the weighted average lease term and weighted average discount rate was 58 months and 3.7%, respectively. The aggregate amounts of operating lease right-of-use assets added in exchange for lease obligations during the three months ended April 30, 2023 and 2022 were $0.3 million and $0.2 million, respectively.

The Company also uses equipment and occupies other facilities under short-term rental agreements. The Company classifies as short-term leases any lease with an initial noncancellable term of twelve months or less that does not include an option to purchase the underlying asset that the Company is reasonably certain to exercise. Rent expense amounts incurred under short-term rentals during the three months ended April 30, 2023 and 2022 were $3.7 million and $2.4 million, respectively. Right-of-use assets and lease liabilities related to short-term leases are excluded from the consolidated balance sheets.

Performance Bonds and Guarantees

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

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

The Company had also provided a financial guarantee, subject to certain terms and conditions, in the amount of $3.6 million in support of business development efforts. A liability was established for the estimated loss related to this guarantee 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 nature of the Company’s projects, including project owner inspections of the work both during construction and prior to substantial completion, the Company has not experienced material unexpected warranty costs in the past. Warranty costs are estimated based on experience with the type of work and any known risks relative to each completed project. The accruals of liabilities, which are established to cover estimated future warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the 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 25 R14.htm IDEA: XBRL DOCUMENT v3.23.1
LEGAL CONTINGENCIES
3 Months Ended
Apr. 30, 2023
LEGAL CONTINGENCIES  
LEGAL CONTINGENCIES

NOTE 8 – LEGAL CONTINGENCIES

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

XML 26 R15.htm IDEA: XBRL DOCUMENT v3.23.1
STOCK-BASED COMPENSATION
3 Months Ended
Apr. 30, 2023
STOCK-BASED COMPENSATION  
STOCK-BASED COMPENSATION

NOTE 9 – STOCK-BASED COMPENSATION

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

The features of the 2020 Plan are similar to those included in the 2011 Plan. Awards may include nonqualified stock options, incentive stock options, and restricted or unrestricted stock. The specific provisions for each award are documented in a written agreement between the Company and the awardee. All stock options awarded under the Stock Plans have exercise prices per share at least equal to the market value per share of the Company’s common stock on the

date of grant. Stock options have terms no longer than ten years. Typically, stock options are awarded with one-third of each stock option vesting on each of the first three anniversaries of the corresponding award date.

As of April 30, 2023, there were 1,825,083 shares of common stock reserved for issuance under the Stock Plans; this number includes 84,273 shares of common stock available for future awards under the 2020 Plan.

Stock Options

A summary of stock option activity under the Stock Plans for the three months ended April 30, 2023, along with corresponding weighted average per share amounts, is presented below (shares in thousands):

Weighted

Average

Weighted

Weighted

Remaining

Average

Average Exercise

Contractual

Grant Date

    

Shares

    

Price

    

Term (years)

    

Fair Value

Outstanding, February 1, 2023

 

1,440

$

43.84

 

5.46

$

10.11

Granted

10

$

39.47

Exercised

(30)

$

18.12

Forfeited

(1)

$

33.81

Outstanding, April 30, 2023

1,419

$

44.36

 

5.36

$

10.23

Exercisable, April 30, 2023

 

1,291

$

44.80

5.02

$

10.48

Outstanding, April 30, 2022

1,438

$

44.12

 

6.04

$

10.21

Exercisable, April 30, 2022

 

1,199

$

44.87

 

5.52

$

10.76

The changes in the number of non-vested options to purchase shares of common stock for the three months ended April 30, 2023, and the weighted average fair value per share for each number, are presented below (shares in thousands):

    

Weighted

Average

Grant Date

Shares

    

Fair Value

Non-vested, February 1, 2023

 

194

$

7.27

Granted

 

10

$

8.12

Vested

 

(75)

$

6.62

Forfeitures

(1)

$

5.68

Non-vested, April 30, 2023

 

128

$

7.72

Non-vested, April 30, 2022

 

239

$

7.45

The total intrinsic value amount related to the stock options exercised during the three months ended April 30, 2023 was $0.7 million. The total intrinsic value amount related to the stock options exercised during the three months ended April 30, 2022 was not significant. The aggregate market value amounts of the shares of common stock subject to outstanding stock options and exercisable stock options that were “in-the-money” exceeded the aggregate exercise prices of such options at April 30, 2023 by $3.3 million and $3.0 million, respectively.

Restricted Stock Units

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

During the three months ended April 30, 2023, the Company awarded total stock return performance-based restricted stock units (“PRSUs”) covering a target of 6,000 shares of common stock, earnings per share performance-based restricted stock units (“EPRSUs”) covering a target of 15,000 shares of common stock, renewable energy performance-based restricted stock units (“RPRSUs”) covering a target of 7,500 shares of common stock, time-based restricted stock units (“TRSUs”)

covering 45,300 shares of common stock, and 1,306 shares based on the amount of cash dividends deemed paid on shares earned pursuant to the awards. During the three months ended April 30, 2022, the Company awarded 47,000 PRSUs, 7,500 RPRSUs and 57,500 TRSUs.

The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for the three months ended April 30, 2023, and the weighted average fair value per share for each restricted stock unit, are presented below (shares in thousands):

    

    

Weighted

Average

Grant Date

Shares

Fair Value

Outstanding, February 1, 2023

 

310

$

30.80

Awarded

 

96

$

30.67

Issued

(35)

$

31.04

Forfeited

(49)

$

16.01

Outstanding, April 30, 2023

 

322

$

31.25

Outstanding, April 30, 2022

 

278

$

29.38

Fair Value

The fair value amounts of stock options and restricted stock units are recorded as stock compensation expense on a straight-line basis over the terms of the corresponding awards. Expense amounts related to stock awards were $1.0 million and $0.9 million for the three months ended April 30, 2023 and 2022, respectively. At April 30, 2023, there was $8.4 million in unrecognized compensation cost related to outstanding stock awards that the Company expects to expense over the next three years.

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

The fair value amounts for the PRSUs have been determined by using the per share market price of the common stock on the dates of award and, by assigning equal probabilities to the thirteen possible payout outcomes at the end of each three-year term, and by computing the weighted average of the outcome amounts. For each award, the estimated fair value amount was calculated to be 88.5% of the aggregate market value of the target number (which is 50% of the maximum number) of shares on the award date. For the EPRSUs and RPRSUs, the fair value of each award equals the aggregate market price for the number of shares that, as of the award date, are probable of vesting based on the performance conditions. For the TRSUs, the fair value of each award equals the aggregate market price for the number of shares covered by each award on the date of award.

XML 27 R16.htm IDEA: XBRL DOCUMENT v3.23.1
INCOME TAXES
3 Months Ended
Apr. 30, 2023
INCOME TAXES  
INCOME TAXES

NOTE 10 – INCOME TAXES

Income Tax Expense Reconciliations

The Company’s income tax amounts for the three months ended April 30, 2023 and 2022 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:

    

Three Months Ended April 30, 

    

2023

    

2022

Computed expected income tax expense

$

631

$

2,049

Difference resulting from:

State income taxes, net of federal tax effect

 

84

 

134

Deferred tax asset adjustments

220

66

Foreign tax rate differential

(198)

(31)

Other permanent differences and adjustments, net

158

55

Income tax expense

$

895

$

2,273

Foreign income tax expense amounts for the three months ended April 30, 2023 and 2022 were not material.      

Net Operating Loss (“NOL”) Carryback

In an effort to combat the adverse economic impacts of the COVID-19 crisis, the U.S. Congress passed the Coronavirus, Aid, Relief, and Economic Security Act (the “CARES Act”) that was signed into law on March 27, 2020. This wide-ranging legislation was an emergency economic stimulus package that included spending and tax breaks aimed at strengthening the U.S. economy and funding a nationwide effort to curtail the effects of the outbreak of COVID-19.

The tax changes of the CARES Act included a temporary suspension of the limitations on the future utilization of certain NOLs and re-established a carryback period for certain losses to five years. The NOLs eligible for carryback under the CARES Act include the Company’s domestic NOL for the year ended January 31, 2020, which was approximately $39.5 million. The Company made the appropriate filing with the Internal Revenue Service (the “IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 and 2015 in the total amount of approximately $12.7 million during the fiscal year ended January 31, 2021 (“Fiscal 2021”) and an updated filing was made during the three months ended April 30, 2023; the IRS has not completed the review and approval of the Company’s refund request.

Research and Development Tax Credits

During Fiscal 2022, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research tax credits that may have been available to reduce federal income taxes for Fiscal 2022 and Fiscal 2021. As a result, the Company filed amended federal income tax returns for those years including research and development tax credits in the total amount of $5.8 million, which was netted with a provision for uncertain tax return positions in the amount of $2.4 million.  

Income Tax Refunds

As of April 30, 2023 and January 31, 2023, the balances of other current assets in the condensed consolidated balance sheet included income tax refunds receivable and prepaid income taxes in the total amounts of approximately $16.2 million and $15.3 million, respectively. The income tax refunds included the amount expected to be received from the IRS upon its processing of the Company’s NOL carryback refund request 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, 2019, except for several notable exceptions including Ireland, the U.K. and several states where the open periods are one year longer. In May 2023, the Company received notification that its amended federal income tax returns for Fiscal 2021 and Fiscal 2022 were selected for examination.

Solar Energy Projects

The Company has invested in limited liability companies that make equity investments in solar energy projects that are eligible to receive energy tax credits. The passive investments have been accounted for using the equity method; the balances are included in other assets in our condensed consolidated balance sheets. Each tax credit, when recognized, is recorded as a reduction of the corresponding investment balance with an offsetting reduction in the balance of accrued taxes payable in accordance with the deferral method. As of April 30, 2023, the Company had no remaining cash investment commitments related to these projects. At April 30, 2023 and January 31, 2023, the investment account balances were $1.1 million and $1.2 million, respectively. These investments are expected to provide positive overall returns over their six-year expected lives.

During the three months ended April 30, 2023 and 2022, the investment balance was adjusted to reflect the Company’s share of the loss of the investment entities in the amount of approximately $0.1 million for the three months ended April 30, 2023 and its share of the income of the investment entities in the amount of approximately $0.6 million for the three months ended April 30, 2022. These net amounts have been included as other loss or income in the Company’s condensed consolidated statement of earnings for the corresponding periods.

Supplemental Cash Flow Information

The Company was not required to make any income tax payments during the three months ended April 30, 2023 or 2022. During the three months ended April 30, 2023 and 2022, the Company did not receive any income tax refunds that were material.

XML 28 R17.htm IDEA: XBRL DOCUMENT v3.23.1
NET INCOME PER SHARE
3 Months Ended
Apr. 30, 2023
NET INCOME PER SHARE  
NET INCOME PER SHARE

NOTE 11 – NET INCOME PER SHARE

Basic and diluted net income per share amounts are computed as follows (shares in thousands except in the note):

Three Months Ended April 30, 

    

2023

    

2022

Net income

$

2,109

$

7,485

Weighted average number of shares outstanding – basic

13,413

14,910

Effect of stock awards (1)

133

82

Weighted average number of shares outstanding – diluted

13,546

14,992

Net income per share

Basic

$

0.16

$

0.50

Diluted

$

0.16

$

0.50

(1)For the three months ended April 30, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options covering an aggregate of 851,834 and 867,334 shares of common stock, respectively.
XML 29 R18.htm IDEA: XBRL DOCUMENT v3.23.1
CASH DIVIDENDS AND COMMON STOCK REPURCHASES
3 Months Ended
Apr. 30, 2023
CASH DIVIDENDS AND COMMON STOCK REPURCHASES  
CASH DIVIDENDS AND COMMON STOCK REPURCHASES

NOTE 12 – CASH DIVIDENDS AND COMMON STOCK REPURCHASES

On April 10, 2023, Argan’s board of directors declared a regular quarterly cash dividend in the amount of $0.25 per share of common stock, which was paid on April 28, 2023 to stockholders of record at the close of business on April 20, 2023. During the three months ended April 30, 2022, the board of directors declared a regular quarterly dividend of $0.25 per share of common stock, which was paid to stockholders on April 29, 2022.

Pursuant to its established program and authorizations provided by Argan’s board of directors, the Company repurchased shares of its common stock during the three months ended April 30, 2023 and 2022. During these periods, the Company repurchased 92,656 shares and 710,879 shares of common stock, all on the open market, for aggregate prices of approximately $3.7 million, or $39.61 per share, and $27.1 million, or $38.09 per share, respectively.

In August 2022, the Inflation Reduction Act (the “IRA”) was signed into law, which introduced a 1% excise tax on shares repurchased after December 31, 2022. For the three months ended April 30, 2023, the excise tax was not material.

XML 30 R19.htm IDEA: XBRL DOCUMENT v3.23.1
CUSTOMER CONCENTRATIONS
3 Months Ended
Apr. 30, 2023
CUSTOMER CONCENTRATIONS  
CUSTOMER CONCENTRATIONS

NOTE 13 – CUSTOMER CONCENTRATIONS

The majority of the Company’s consolidated revenues relate to performance by the power industry services segment which provided 68% and 74% of consolidated revenues for the three months ended April 30, 2023 and 2022, respectively. The industrial services segment represented 29% and 22% of consolidated revenues for the three months ended April 30, 2023 and 2022, respectively.

The Company’s most significant customer relationships for the three months ended April 30, 2023 included four power industry service customers, which accounted for 16%, 14%, 14% and 13% of consolidated revenues, respectively. The Company’s most significant customer relationship for the three months ended April 30, 2022 included one power industry service customer, which accounted for 48% of consolidated revenues. 

The accounts receivable balances from three major customers represented 37%, 10% and 10% of the corresponding consolidated balance as of April 30, 2023. Accounts receivable balances from three major customers represented 36%, 12% and 12% of the corresponding consolidated balance as of January 31, 2023. The contract asset balances from three major customers represented 22%, 16% and 12% of the corresponding consolidated balance as of April 30, 2023. Contract asset balances from one major customer represented 70% of the corresponding consolidated balance as of January 31, 2023.

XML 31 R20.htm IDEA: XBRL DOCUMENT v3.23.1
SEGMENT REPORTING
3 Months Ended
Apr. 30, 2023
SEGMENT REPORTING  
SEGMENT REPORTING

NOTE 14 – SEGMENT REPORTING

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

Intersegment revenues and the related cost of revenues are netted against the corresponding amounts of the segment receiving the intersegment services. For the three months ended April 30, 2023 and 2022, 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 months ended April 30, 2023 and 2022. The “Other” column in each summary includes the Company’s corporate expenses.

Three Months Ended

Power

Industrial

Telecom

April 30, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

70,176

$

30,307

$

3,192

$

$

103,675

Cost of revenues

 

60,335

 

26,562

 

2,554

 

 

89,451

Gross profit

 

9,841

 

3,745

 

638

 

 

14,224

Selling, general and administrative expenses

5,714

1,460

703

2,714

10,591

Income (loss) from operations

4,127

2,285

(65)

(2,714)

3,633

Other income (loss), net

 

2,090

 

 

 

(2,719)

 

(629)

Income (loss) before income taxes

$

6,217

$

2,285

$

(65)

$

(5,433)

 

3,004

Income tax expense

 

895

Net income

$

2,109

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

128

304

114

1

547

Property, plant and equipment additions

389

256

645

Current assets

$

303,596

$

43,946

$

3,985

$

73,474

$

425,001

Current liabilities

160,564

29,226

1,172

1,435

192,397

Goodwill

18,476

9,467

90

28,033

Total assets

330,736

61,421

7,071

76,466

475,694

Three Months Ended

Power

Industrial

Telecom

April 30, 2022

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

73,949

$

22,501

$

3,827

$

$

100,277

Cost of revenues

 

59,035

 

18,680

 

2,824

 

 

80,539

Gross profit

 

14,914

 

3,821

 

1,003

 

 

19,738

Selling, general and administrative expenses

 

5,615

1,759

765

2,436

 

10,575

Income (loss) from operations

9,299

2,062

238

(2,436)

9,163

Other income, net

 

584

 

 

2

 

9

 

595

Income (loss) before income taxes

$

9,883

$

2,062

$

240

$

(2,427)

 

9,758

Income tax expense

 

2,273

Net income

$

7,485

Amortization of intangibles

$

$

166

$

$

$

166

Depreciation

142

544

122

1

809

Property, plant and equipment additions

52

151

35

238

Current assets

$

329,779

$

27,872

$

3,565

$

86,375

$

447,591

Current liabilities

170,684

12,362

1,685

1,543

186,274

Goodwill

18,476

9,467

90

28,033

Total assets

353,570

45,379

7,245

86,616

492,810

XML 32 R21.htm IDEA: XBRL DOCUMENT v3.23.1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION
3 Months Ended
Apr. 30, 2023
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION  
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

NOTE 15 — SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION

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

    

April 30, 

January 31, 

2023

    

2023

Income tax refunds receivable and prepaid income taxes

$

16,233

$

15,327

Raw materials inventory

12,172

11,903

Prepaid expenses

 

7,862

 

4,541

Other

6,109

6,563

Total other current assets

$

42,376

$

38,334

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

    

April 30, 

January 31, 

2023

    

2023

Accrued compensation

$

11,382

$

18,286

Project costs

21,764

17,448

Lease liabilities

1,491

1,567

Other

10,118

12,566

Total accrued expenses

$

44,755

$

49,867

On March 7, 2023, the Company determined that it had been a victim of a complex criminal scheme, which resulted in fraudulently-induced outbound wire transfers to a third-party account. As a result of the event, the Company incurred a loss of approximately $3.0 million related to the amount of the unrecovered funds. Any amount of this loss expected to be reimbursed to the Company from its insurance policy is not expected to be material. The Company retained specialized legal counsel and a cybersecurity services firm to assist in an independent forensic investigation of the incident and the efforts to recover the funds. As a result, the Company incurred legal, audit and other professional fees in the aggregate amount of $0.2 million related to this event. The total amount of the fraud loss and the professional fees, approximately $3.2 million, is included in other loss in the condensed consolidated statements of earnings for the three months ended April 30, 2023.

XML 33 R22.htm IDEA: XBRL DOCUMENT v3.23.1
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies)
3 Months Ended
Apr. 30, 2023
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, including the renewable energy sector. The wide range of customers includes primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial fabrication and field 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, its wholly-owned subsidiaries and a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 14, 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 April 30, 2023, the condensed consolidated statements of earnings and stockholders’ equity for the three months ended April 30, 2023 and 2022, and the condensed consolidated statements of cash flows for the three months ended April 30, 2023 and 2022 are unaudited. The condensed consolidated balance sheet as of January 31, 2023 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, 2023 (“Fiscal 2023”).

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 April 30, 2023, 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.

Accounting Policies

Accounting Policies

In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method (“ASU 2023-02”), which provide an election to account for tax equity investments using the proportional amortization method, if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-020 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.

Available-For-Sale Securities

Available-For-Sale Securities

At each balance sheet date, available-for-sale securities are recorded at fair value, with unrealized gains and, to the extent deemed temporary, unrealized losses reported as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, realized gains and realized losses are included in other income or expense, as applicable, in the Company’s condensed consolidated statement of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of available-for-sale securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the available-for-sale securities is reevaluated at each balance sheet date.

The Company considers its available-for-sale securities impaired when a decline in fair value below its cost basis is determined to be other than temporary. The Company evaluates whether the decline in fair value is other than temporary based on the amount and duration of the period that the fair value of the available-for-sale security is less than its cost basis, overall market conditions and trends, the Company’s intent to sell the available-for-sale security and whether it is more likely than not that the Company would be required to sell the security before its anticipated recovery. If a decline in fair value is determined to be other than temporary, the Company records an impairment loss and establishes a new cost basis.

Fair Values

Fair Values

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

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

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

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

At April 30, 2023 and January 31, 2023, certain amounts of cash equivalents were invested in money market funds with net assets invested in high-quality money market instruments. Money market funds were classified as Level 1 due to the short-term nature of these instruments and as their fair value is based on quoted prices in active markets for identical assets. As of April 30, 2023, all of the Company’s available-for-sale securities were U.S. Treasury notes and were classified as Level 2, as their fair value is measured based on quoted prices in active markets for similar assets.  As of April 30, 2023 and January 31, 2023, the Company did not have any financial assets measured on a recurring basis using Level 3 inputs. The carrying value amounts presented in the condensed consolidated balance sheets for the Company’s other current assets,

which primarily include cash, short term investments, accounts receivable and contract assets, and its current liabilities are reasonable estimates of their fair values due to the short-term nature of these items.

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

April 30, 2023

January 31, 2023

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Money market funds

$

112,546

$

$

$

68,647

$

$

Available-for-sale securities

30,376

Totals

$

112,546

$

30,376

$

$

68,647

$

$

Treasury Stock

April 30, 2023

January 31, 2023

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Money market funds

$

112,546

$

$

$

68,647

$

$

Available-for-sale securities

30,376

Totals

$

112,546

$

30,376

$

$

68,647

$

$

Variable Interest Entity

Variable Interest Entity

In January 2018, the Company was deemed to be the primary beneficiary of a VIE that was performing the project development activities related to the planned construction of a new natural gas-fired power plant. In the fourth quarter of Fiscal 2023, the Company was deemed to no longer be the primary beneficiary of the VIE, and the VIE was deconsolidated. Prior to deconsolidation, the account balances of the VIE had been included in the Company’s consolidated financial statements.

XML 34 R23.htm IDEA: XBRL DOCUMENT v3.23.1
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Tables)
3 Months Ended
Apr. 30, 2023
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION  
Schedule of financial instruments recorded at fair value on a recurring basis

April 30, 2023

January 31, 2023

Level 1

Level 2

Level 3

Level 1

Level 2

Level 3

    

Inputs

    

Inputs

Inputs

    

Inputs

Inputs

    

Inputs

Money market funds

$

112,546

$

$

$

68,647

$

$

Available-for-sale securities

30,376

Totals

$

112,546

$

30,376

$

$

68,647

$

$

XML 35 R24.htm IDEA: XBRL DOCUMENT v3.23.1
REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)
3 Months Ended
Apr. 30, 2023
REVENUES FROM CONTRACTS WITH CUSTOMERS  
Schedule of consolidated revenues disaggregated by geographical area

Three Months Ended April 30, 

2023

    

2022

United States

$

65,244

$

80,273

Republic of Ireland

 

24,856

 

9,653

United Kingdom

 

13,575

 

10,351

Consolidated Revenues

$

103,675

$

100,277

XML 36 R25.htm IDEA: XBRL DOCUMENT v3.23.1
CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)
3 Months Ended
Apr. 30, 2023
CASH, CASH EQUIVALENTS AND INVESTMENTS  
Schedule of available-for-sale securities

April 30, 2023

Allowance for

Gross

Gross

Estimated

Amortized

Credit

Unrealized

Unrealized

Fair

    

Cost

    

Losses

    

Gains

    

Losses

    

Value

U.S. Treasury notes:

Due in one to two years

$

15,014

$

$

$

37

$

14,977

Due in two to three years

15,399

15,399

Totals

$

30,413

$

$

$

37

$

30,376

XML 37 R26.htm IDEA: XBRL DOCUMENT v3.23.1
INTANGIBLE ASSETS (Tables)
3 Months Ended
Apr. 30, 2023
INTANGIBLE ASSETS  
Schedule of company's purchased intangible assets, other than goodwill

April 30, 2023

January 31, 2023

Estimated

Gross

Accumulated

Net

Gross

Accumulated

Net

    

Useful Life

    

Amounts

    

Amortization

    

Amounts

    

Amounts

    

Amortization

    

Amounts

Trade names

15 years

$

4,499

$

2,225

$

2,274

$

4,499

$

2,150

$

2,349

Customer relationships

10 years

916

679

237

916

656

260

Totals

$

5,415

$

2,904

$

2,511

$

5,415

$

2,806

$

2,609

XML 38 R27.htm IDEA: XBRL DOCUMENT v3.23.1
COMMITMENTS (Tables)
3 Months Ended
Apr. 30, 2023
COMMITMENTS  
Schedule of future minimum lease payments for the operating leases

Years Ending January 31, 

2024 (remainder)

    

$

1,244

2025

1,350

2026

1,079

2027

235

2028

213

Thereafter

815

Total lease payments

4,936

Less imputed interest

303

Present value of lease payments

4,633

Less current portion (included in accrued expenses)

1,491

Noncurrent portion (included in noncurrent liabilities)

$

3,142

XML 39 R28.htm IDEA: XBRL DOCUMENT v3.23.1
STOCK-BASED COMPENSATION (Tables)
3 Months Ended
Apr. 30, 2023
STOCK-BASED COMPENSATION  
Schedule of stock option activity under the Company's stock plans

A summary of stock option activity under the Stock Plans for the three months ended April 30, 2023, along with corresponding weighted average per share amounts, is presented below (shares in thousands):

Weighted

Average

Weighted

Weighted

Remaining

Average

Average Exercise

Contractual

Grant Date

    

Shares

    

Price

    

Term (years)

    

Fair Value

Outstanding, February 1, 2023

 

1,440

$

43.84

 

5.46

$

10.11

Granted

10

$

39.47

Exercised

(30)

$

18.12

Forfeited

(1)

$

33.81

Outstanding, April 30, 2023

1,419

$

44.36

 

5.36

$

10.23

Exercisable, April 30, 2023

 

1,291

$

44.80

5.02

$

10.48

Outstanding, April 30, 2022

1,438

$

44.12

 

6.04

$

10.21

Exercisable, April 30, 2022

 

1,199

$

44.87

 

5.52

$

10.76

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

Weighted

Average

Weighted

Weighted

Remaining

Average

Average Exercise

Contractual

Grant Date

    

Shares

    

Price

    

Term (years)

    

Fair Value

Outstanding, February 1, 2023

 

1,440

$

43.84

 

5.46

$

10.11

Granted

10

$

39.47

Exercised

(30)

$

18.12

Forfeited

(1)

$

33.81

Outstanding, April 30, 2023

1,419

$

44.36

 

5.36

$

10.23

Exercisable, April 30, 2023

 

1,291

$

44.80

5.02

$

10.48

Outstanding, April 30, 2022

1,438

$

44.12

 

6.04

$

10.21

Exercisable, April 30, 2022

 

1,199

$

44.87

 

5.52

$

10.76

Schedule of changes in restricted stock units

The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for the three months ended April 30, 2023, and the weighted average fair value per share for each restricted stock unit, are presented below (shares in thousands):

    

    

Weighted

Average

Grant Date

Shares

Fair Value

Outstanding, February 1, 2023

 

310

$

30.80

Awarded

 

96

$

30.67

Issued

(35)

$

31.04

Forfeited

(49)

$

16.01

Outstanding, April 30, 2023

 

322

$

31.25

Outstanding, April 30, 2022

 

278

$

29.38

XML 40 R29.htm IDEA: XBRL DOCUMENT v3.23.1
INCOME TAXES (Tables)
3 Months Ended
Apr. 30, 2023
INCOME TAXES  
Schedule of actual income tax expense amounts

    

Three Months Ended April 30, 

    

2023

    

2022

Computed expected income tax expense

$

631

$

2,049

Difference resulting from:

State income taxes, net of federal tax effect

 

84

 

134

Deferred tax asset adjustments

220

66

Foreign tax rate differential

(198)

(31)

Other permanent differences and adjustments, net

158

55

Income tax expense

$

895

$

2,273

XML 41 R30.htm IDEA: XBRL DOCUMENT v3.23.1
NET INCOME PER SHARE (Tables)
3 Months Ended
Apr. 30, 2023
NET INCOME PER SHARE  
Schedule of computations of basic and diluted net income per share

Basic and diluted net income per share amounts are computed as follows (shares in thousands except in the note):

Three Months Ended April 30, 

    

2023

    

2022

Net income

$

2,109

$

7,485

Weighted average number of shares outstanding – basic

13,413

14,910

Effect of stock awards (1)

133

82

Weighted average number of shares outstanding – diluted

13,546

14,992

Net income per share

Basic

$

0.16

$

0.50

Diluted

$

0.16

$

0.50

(1)For the three months ended April 30, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options covering an aggregate of 851,834 and 867,334 shares of common stock, respectively.
XML 42 R31.htm IDEA: XBRL DOCUMENT v3.23.1
SEGMENT REPORTING (Tables)
3 Months Ended
Apr. 30, 2023
SEGMENT REPORTING  
Schedule of operating results and certain financial position data of the Company's reportable business segments

Three Months Ended

Power

Industrial

Telecom

April 30, 2023

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

70,176

$

30,307

$

3,192

$

$

103,675

Cost of revenues

 

60,335

 

26,562

 

2,554

 

 

89,451

Gross profit

 

9,841

 

3,745

 

638

 

 

14,224

Selling, general and administrative expenses

5,714

1,460

703

2,714

10,591

Income (loss) from operations

4,127

2,285

(65)

(2,714)

3,633

Other income (loss), net

 

2,090

 

 

 

(2,719)

 

(629)

Income (loss) before income taxes

$

6,217

$

2,285

$

(65)

$

(5,433)

 

3,004

Income tax expense

 

895

Net income

$

2,109

Amortization of intangibles

$

$

98

$

$

$

98

Depreciation

128

304

114

1

547

Property, plant and equipment additions

389

256

645

Current assets

$

303,596

$

43,946

$

3,985

$

73,474

$

425,001

Current liabilities

160,564

29,226

1,172

1,435

192,397

Goodwill

18,476

9,467

90

28,033

Total assets

330,736

61,421

7,071

76,466

475,694

Three Months Ended

Power

Industrial

Telecom

April 30, 2022

    

Services

    

Services

    

Services

    

Other

    

Totals

Revenues

$

73,949

$

22,501

$

3,827

$

$

100,277

Cost of revenues

 

59,035

 

18,680

 

2,824

 

 

80,539

Gross profit

 

14,914

 

3,821

 

1,003

 

 

19,738

Selling, general and administrative expenses

 

5,615

1,759

765

2,436

 

10,575

Income (loss) from operations

9,299

2,062

238

(2,436)

9,163

Other income, net

 

584

 

 

2

 

9

 

595

Income (loss) before income taxes

$

9,883

$

2,062

$

240

$

(2,427)

 

9,758

Income tax expense

 

2,273

Net income

$

7,485

Amortization of intangibles

$

$

166

$

$

$

166

Depreciation

142

544

122

1

809

Property, plant and equipment additions

52

151

35

238

Current assets

$

329,779

$

27,872

$

3,565

$

86,375

$

447,591

Current liabilities

170,684

12,362

1,685

1,543

186,274

Goodwill

18,476

9,467

90

28,033

Total assets

353,570

45,379

7,245

86,616

492,810

XML 43 R32.htm IDEA: XBRL DOCUMENT v3.23.1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)
3 Months Ended
Apr. 30, 2023
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION  
Schedule of other current assets

    

April 30, 

January 31, 

2023

    

2023

Income tax refunds receivable and prepaid income taxes

$

16,233

$

15,327

Raw materials inventory

12,172

11,903

Prepaid expenses

 

7,862

 

4,541

Other

6,109

6,563

Total other current assets

$

42,376

$

38,334

Schedule of accrued expenses

    

April 30, 

January 31, 

2023

    

2023

Accrued compensation

$

11,382

$

18,286

Project costs

21,764

17,448

Lease liabilities

1,491

1,567

Other

10,118

12,566

Total accrued expenses

$

44,755

$

49,867

XML 44 R33.htm IDEA: XBRL DOCUMENT v3.23.1
DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION - Financial Instruments on a Recurring Basis (Details) - Fair value, recurring - USD ($)
$ in Thousands
Apr. 30, 2023
Jan. 31, 2023
Level 1 Inputs    
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Totals $ 112,546 $ 68,647
Level 1 Inputs | Money market funds    
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Cash and cash equivalents 112,546 $ 68,647
Level 2 Inputs    
Fair value of assets and liabilities measured on recurring and nonrecurring basis    
Available-for-sale-securities 30,376  
Totals $ 30,376  
XML 45 R34.htm IDEA: XBRL DOCUMENT v3.23.1
REVENUES FROM CONTRACTS WITH CUSTOMERS (Details) - USD ($)
$ in Millions
12 Months Ended
Jan. 31, 2023
Jan. 31, 2022
Apr. 30, 2023
REVENUES FROM CONTRACTS WITH CUSTOMERS      
Revenue recognized $ 50.9 $ 67.3  
Retained amounts by project owners $ 49.1   $ 25.0
Amounts of unpriced change orders included in transaction prices 11.6   12.2
XML 46 R35.htm IDEA: XBRL DOCUMENT v3.23.1
REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details) - Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-05-01
$ in Millions
Apr. 30, 2023
USD ($)
REVENUES FROM CONTRACTS WITH CUSTOMERS  
Contract backlog amount $ 0.7
Contract backlog (as percent) 37.00%
Performance period 3 years
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.23.1
REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details) - USD ($)
$ in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
Disaggregation of Revenues    
Totals $ 103,675 $ 100,277
United States    
Disaggregation of Revenues    
Totals 65,244 80,273
Republic of Ireland    
Disaggregation of Revenues    
Totals 24,856 9,653
United Kingdom    
Disaggregation of Revenues    
Totals $ 13,575 $ 10,351
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.23.1
CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) - USD ($)
$ in Millions
3 Months Ended 12 Months Ended
Apr. 30, 2023
Jan. 31, 2023
Cash and Cash Equivalents    
Accrued dividends $ 0.5 $ 0.3
Held-to-maturity Securities    
Cash and Cash Equivalents    
Maturity period 1 year 1 year
Weighted average annual interest rates of CDs (as a percent) 5.20% 2.50%
Accrued interest $ 0.7 $ 1.8
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.23.1
CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details)
$ in Thousands
3 Months Ended
Apr. 30, 2023
USD ($)
Cash and Cash Equivalents  
Interest receivable $ 100
Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current, Statement of Financial Position [Extensible Enumeration] Debt Securities, Available-for-Sale, Current
Proceeds from sale of debt securities, available-for-sale $ 0
Amounts of gains or losses reclassified out of other comprehensive income 0
US Treasury notes  
Available-for-sale securities  
Amortized cost, Due in one to two years 15,014
Amortized Cost, Due in two to three years 15,399
Amortized Cost 30,413
Gross Unrealized Losses 37
Fair value, Due in one to two years 14,977
Fair Value, Due in two to three years 15,399
Fair Value $ 30,376
Minimum | US Treasury notes  
Cash and Cash Equivalents  
Available-for-sale securities term 2 years
Maximum | US Treasury notes  
Cash and Cash Equivalents  
Available-for-sale securities term 3 years
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.23.1
ACCOUNTS RECEIVABLE (Details) - USD ($)
$ in Millions
Apr. 30, 2023
Jan. 31, 2023
ACCOUNTS RECEIVABLE    
Allowance for uncollectible accounts $ 1.8 $ 1.9
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.23.1
INTANGIBLE ASSETS - Components of Intangible Assets (Details) - USD ($)
$ in Thousands
3 Months Ended
Apr. 30, 2023
Jan. 31, 2023
Finite-Lived Intangible Assets [Line Items]    
Gross Amounts $ 5,415 $ 5,415
Accumulated Amortization 2,904 2,806
Net Amounts $ 2,511 2,609
Trade Name    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life (in years) 15 years  
Gross Amounts $ 4,499 4,499
Accumulated Amortization 2,225 2,150
Net Amounts $ 2,274 2,349
Customer relationships    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life (in years) 10 years  
Gross Amounts $ 916 916
Accumulated Amortization 679 656
Net Amounts $ 237 $ 260
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.23.1
INTANGIBLE ASSETS - Additional Information (Details) - USD ($)
$ in Thousands
Apr. 30, 2023
Jan. 31, 2023
Apr. 30, 2022
Indefinite-Lived Intangible Assets      
Goodwill $ 28,033 $ 28,033 $ 28,033
TRC.      
Indefinite-Lived Intangible Assets      
Goodwill 9,500 9,500  
GPS.      
Indefinite-Lived Intangible Assets      
Goodwill $ 18,500 $ 18,500  
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.23.1
FINANCING ARRANGEMENTS (Details) - USD ($)
$ in Millions
Mar. 06, 2023
Apr. 30, 2023
Jan. 31, 2023
Revolving Credit Facility      
Financing Arrangements      
Additional commitment amount $ 10.0    
Revolving Credit Facility | Secured Overnight Financing Rate (SOFR)      
Financing Arrangements      
Interest rate margin on referred rate 1.60%    
Revolving Credit Facility | Expires on May 31, 2024      
Financing Arrangements      
Borrowing available under financing arrangements $ 50.0    
Letter of Credit      
Financing Arrangements      
Letters of credit outstanding amount   $ 11.5 $ 8.8
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.23.1
COMMITMENTS - Leases (Details) - USD ($)
$ in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
Jan. 31, 2023
Operating leases, options to extend true    
Operating leases, options to terminate true    
Operating lease, right-of-use assets $ 4,600   $ 4,800
Operating lease expense 439 $ 750  
Operating lease payments $ 400 800  
Weighted average lease term 56 months   58 months
Weighted average discount rate 3.70%   3.70%
Future minimum lease payment $ 300 200  
Short-term rentals expense 3,700 $ 2,400  
Unsatisfied bonded performance obligations 500,000    
GPS | Financial guarantee      
Guarantor obligation maximum exposure $ 3,600    
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.23.1
COMMITMENTS - Future minimum lease payments (Details)
$ in Thousands
Apr. 30, 2023
USD ($)
Operating Leases  
2024 (remainder) $ 1,244
2025 1,350
2026 1,079
2027 235
2028 213
Thereafter 815
Total lease payments 4,936
Less imputed interest 303
Present value of lease payments 4,633
Less current portion (included in accrued expenses) $ 1,491
Less current portion (included in accrued expenses) Accrued expenses
Non-current portion (included in noncurrent liabilities) $ 3,142
Non-current portion (included in noncurrent liabilities) Noncurrent liabilities
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.23.1
COMMITMENTS - Warranties (Details)
3 Months Ended
Apr. 30, 2023
Minimum  
Warranty period P9M
Maximum  
Warranty period P24M
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.23.1
STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details) - $ / shares
shares in Thousands
3 Months Ended 12 Months Ended
Apr. 30, 2023
Apr. 30, 2022
Jan. 31, 2023
STOCK-BASED COMPENSATION      
Shares, Outstanding, Beginning balance 1,440    
Shares, Granted 10    
Shares, Exercised (30)    
Shares, Forfeited (1)    
Shares, Outstanding, Ending balance 1,419 1,438 1,440
Shares, Exercisable 1,291 1,199  
Weighted Average Exercise Price, Outstanding, Beginning balance $ 43.84    
Weighted Average Exercise Price, Granted 39.47    
Weighted Average Exercise Price, Exercised 18.12    
Weighted Average Exercise Price, Forfeited 33.81    
Weighted Average Exercise Price, Outstanding, Ending balance 44.36 $ 44.12 $ 43.84
Weighted Average Exercise Price, Exercisable $ 44.80 $ 44.87  
Weighted Average Remaining Term (Years), Outstanding 5 years 4 months 9 days 6 years 14 days 5 years 5 months 15 days
Weighted Average Remaining Term (Years), Exercisable 5 years 7 days 5 years 6 months 7 days  
Weighted Average Fair Value, Outstanding $ 10.23 $ 10.21 $ 10.11
Weighted Average Fair Value, Exercisable $ 10.48 $ 10.76  
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.23.1
STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details) - $ / shares
shares in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
STOCK-BASED COMPENSATION    
Shares, Non-vested, Beginning balance 194  
Shares, Granted 10  
Shares, Vested (75)  
Shares, Forfeitures (1)  
Shares, Non-vested, Ending balance 128  
Shares, Non-vested 128 239
Weighted Average Fair Value, Non-vested, Beginning balance $ 7.27  
Weighted Average Fair Value, Granted 8.12  
Weighted Average Fair Value, Vested 6.62  
Weighted Average Fair Value, Forfeitures 5.68  
Weighted Average Fair Value, Non-vested, Ending balance 7.72  
Weighted Average Fair Value, Non-vested $ 7.72 $ 7.45
XML 59 R48.htm IDEA: XBRL DOCUMENT v3.23.1
STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details) - Restricted Stock Units - $ / shares
shares in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]    
Outstanding, Beginning balance (in shares) 310  
Awarded (in shares) 96  
Issued (in shares) (35)  
Forfeited (in shares) (49)  
Outstanding, Ending balance (in shares) 322  
Outstanding (in shares) 322 278
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]    
Outstanding, Beginning balance Fair value (Per share) $ 30.80  
Awarded, Fair value (Per share) 30.67  
Issued, Fair value (Per share) 31.04  
Forfeited (Per share) 16.01  
Outstanding, Ending balance Fair value (Per share) 31.25  
Outstanding, Fair value (per share) $ 31.25 $ 29.38
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.23.1
STOCK-BASED COMPENSATION - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
Jun. 23, 2020
Share-based Compensation Arrangement by Share-based Payment Award      
Cash dividends deemed paid on shares 1,306    
Percentage Reduction In The Aggregate Fair Value Of Stock Option 88.50%    
Stock compensation expense $ 1,034 $ 920  
Unrecognized compensation cost $ 8,400    
Compensation expense recognize, period 3 years    
Intrinsic value of the stock options exercised $ 700    
Intrinsic value of outstanding stock options 3,300    
Intrinsic value of exercisable stock options $ 3,000    
Period used for calculations 5 years    
Minimum      
Share-based Compensation Arrangement by Share-based Payment Award      
Period used for calculations 3 years    
Maximum      
Share-based Compensation Arrangement by Share-based Payment Award      
Period used for calculations 5 years    
2020 Plan      
Share-based Compensation Arrangement by Share-based Payment Award      
Number of shares of common stock reserved for issuance     500,000
Stock Options Plans [Member]      
Share-based Compensation Arrangement by Share-based Payment Award      
Initial vesting percentage 33.33%    
Period to become exercisable 3 years    
Number of shares of common stock reserved for issuance 1,825,083    
Number of shares of common stock available for award 84,273    
Performance-based restricted stock units      
Share-based Compensation Arrangement by Share-based Payment Award      
The number of shares issuable under restricted stock units awarded during the period 6,000 47,000  
Earnings per share performance-based restricted stock units      
Share-based Compensation Arrangement by Share-based Payment Award      
The number of shares issuable under restricted stock units awarded during the period 15,000    
ISOs/NSOs | Stock Plan      
Share-based Compensation Arrangement by Share-based Payment Award      
Incentive stock option award maximum expiration period 10 years    
Restricted Stock Units      
Share-based Compensation Arrangement by Share-based Payment Award      
Awarded (in shares) 96,000    
Incentive stock option award maximum expiration period 3 years    
Vested 35,000    
Renewable Performance-Based Restricted Stock Units      
Share-based Compensation Arrangement by Share-based Payment Award      
The number of shares issuable under restricted stock units awarded during the period 7,500 7,500  
Time Based Restricted Stock Units      
Share-based Compensation Arrangement by Share-based Payment Award      
The number of shares issuable under restricted stock units awarded during the period 45,300 57,500  
Senior executives | Performance-based restricted stock units | Stock Plan      
Share-based Compensation Arrangement by Share-based Payment Award      
Period to become exercisable 3 years    
Percentage of the maximum shares for the target number of shares awarded 50.00%    
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.23.1
INCOME TAXES - Income Tax Expense Reconciliation (Details) - USD ($)
$ in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
INCOME TAXES    
Federal corporate income tax rate (as percent) 21.00% 21.00%
Computed expected income tax expense $ 631 $ 2,049
State income taxes, net of federal tax effect 84 134
Deferred tax asset adjustments 220 66
Foreign tax rate differential (198) (31)
Other permanent differences and adjustments, net 158 55
Income tax expense $ 895 $ 2,273
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.23.1
INCOME TAXES - Net Operating Loss Carryback (Details) - USD ($)
$ in Millions
3 Months Ended
Apr. 30, 2023
Jan. 31, 2021
Jan. 31, 2020
INCOME TAXES      
Increase in loss carryback period for certain losses 5 years    
Domestic net operating loss carryback     $ 39.5
Income tax receivable   $ 12.7  
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.23.1
INCOME TAXES - Research and Development Tax Credits (Details) - USD ($)
$ in Thousands
3 Months Ended
Apr. 30, 2023
Jan. 31, 2023
INCOME TAXES    
Federal research and development tax credits $ 5,800  
Development tax credit 2,400  
Income tax refunds and prepaid income taxes $ 16,233 $ 15,327
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.23.1
INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details) - USD ($)
$ in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
Jan. 31, 2023
Net Investment Income [Line Items]      
Investment account balances $ 1,100   $ 1,200
Expected life of investment 6 years    
Loss of investment $ (32) $ 610  
Other income (expense)      
Net Investment Income [Line Items]      
Loss of investment $ 100 $ 600  
XML 65 R54.htm IDEA: XBRL DOCUMENT v3.23.1
NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
NET INCOME PER SHARE    
Net income $ 2,109 $ 7,485
Weighted average number of shares outstanding - basic 13,413 14,910
Effects of stock awards 133 82
Weighted average number of shares outstanding - diluted 13,546 14,992
Basic (in dollars per share) $ 0.16 $ 0.50
Diluted (in dollars per share) $ 0.16 $ 0.50
XML 66 R55.htm IDEA: XBRL DOCUMENT v3.23.1
NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN - Additional information (Details) - shares
3 Months Ended
Apr. 30, 2023
Apr. 30, 2022
NET INCOME PER SHARE    
Antidilutive common stock 851,834 867,334
XML 67 R56.htm IDEA: XBRL DOCUMENT v3.23.1
CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended
Apr. 28, 2023
Apr. 10, 2023
Apr. 29, 2022
Apr. 30, 2023
Apr. 30, 2022
CASH DIVIDENDS AND COMMON STOCK REPURCHASES          
Regular cash dividend declared per common stock   $ 0.25   $ 0.25 $ 0.25
Common stock repurchases (in shares)       92,656 710,879
Common stock repurchased       $ 3,681 $ 27,077
Share price       $ 39.61 $ 38.09
Regular cash dividend paid per common stock $ 0.25   $ 0.25    
XML 68 R57.htm IDEA: XBRL DOCUMENT v3.23.1
CUSTOMER CONCENTRATIONS (Details) - customer
3 Months Ended 12 Months Ended
Apr. 30, 2023
Apr. 30, 2022
Jan. 31, 2023
Customer Concentration Risk [Member] | Accounts Receivable [Member]      
Customer Concentrations      
Number of customers 3   3
Customer Concentration Risk [Member] | Contract Asset      
Customer Concentrations      
Number of customers 3   1
Customer Concentration Risk [Member] | Major Customer One [Member] | Accounts Receivable [Member]      
Customer Concentrations      
Percentage of major customers or segments 37.00%   36.00%
Customer Concentration Risk [Member] | Major Customer One [Member] | Contract Asset      
Customer Concentrations      
Percentage of major customers or segments 22.00%   70.00%
Customer Concentration Risk [Member] | Major Customer Two [Member] | Accounts Receivable [Member]      
Customer Concentrations      
Percentage of major customers or segments 10.00%   12.00%
Customer Concentration Risk [Member] | Major Customer Two [Member] | Contract Asset      
Customer Concentrations      
Percentage of major customers or segments 16.00%    
Customer Concentration Risk [Member] | Major Customer Three [Member] | Accounts Receivable [Member]      
Customer Concentrations      
Percentage of major customers or segments     12.00%
Customer Concentration Risk [Member] | Major Customer Three [Member] | Contract Asset      
Customer Concentrations      
Percentage of major customers or segments 12.00%    
Power Industry Services [Member] | Product Concentration Risk [Member] | Revenue [Member]      
Customer Concentrations      
Percentage of major customers or segments 68.00% 74.00%  
Power Industry Services [Member] | Customer Concentration Risk [Member] | Revenue [Member]      
Customer Concentrations      
Number of customers 4 1  
Power Industry Services [Member] | Customer Concentration Risk [Member] | Major Customer One [Member] | Revenue [Member]      
Customer Concentrations      
Percentage of major customers or segments 16.00% 48.00%  
Power Industry Services [Member] | Customer Concentration Risk [Member] | Major Customer Two [Member] | Revenue [Member]      
Customer Concentrations      
Percentage of major customers or segments 14.00%    
Power Industry Services [Member] | Customer Concentration Risk [Member] | Major Customer Three [Member] | Revenue [Member]      
Customer Concentrations      
Percentage of major customers or segments 14.00%    
Power Industry Services [Member] | Customer Concentration Risk [Member] | Major Customer Four | Revenue [Member]      
Customer Concentrations      
Percentage of major customers or segments 13.00%    
Industry services | Product Concentration Risk [Member] | Revenue [Member]      
Customer Concentrations      
Percentage of major customers or segments 29.00% 22.00%  
XML 69 R58.htm IDEA: XBRL DOCUMENT v3.23.1
SEGMENT REPORTING (Details)
$ in Thousands
3 Months Ended
Apr. 30, 2023
USD ($)
segment
Apr. 30, 2022
USD ($)
Jan. 31, 2023
USD ($)
Segment Reporting Information      
Operating segment | segment 1    
Revenues $ 103,675 $ 100,277  
Cost of revenues 89,451 80,539  
Gross profit 14,224 19,738  
Selling, general and administrative expenses 10,591 10,575  
Income (loss) from operations 3,633 9,163  
Other income (loss), net (629) 595  
Income (loss) before income taxes 3,004 9,758  
Income tax expense 895 2,273  
Net income 2,109 7,485  
Amortization of intangibles 98 166  
Depreciation 547 809  
Property, plant and equipment additions 645 238  
Current assets 425,001 447,591 $ 438,702
Current liabilities 192,397 186,274 202,503
Goodwill 28,033 28,033 28,033
Total assets 475,694 492,810 $ 489,487
Other [Member]      
Segment Reporting Information      
Selling, general and administrative expenses 2,714 2,436  
Income (loss) from operations (2,714) (2,436)  
Other income (loss), net (2,719) 9  
Income (loss) before income taxes (5,433) (2,427)  
Depreciation 1 1  
Current assets 73,474 86,375  
Current liabilities 1,435 1,543  
Total assets 76,466 86,616  
Power Industry Services [Member]      
Segment Reporting Information      
Revenues 70,176 73,949  
Cost of revenues 60,335 59,035  
Gross profit 9,841 14,914  
Selling, general and administrative expenses 5,714 5,615  
Income (loss) from operations 4,127 9,299  
Other income (loss), net 2,090 584  
Income (loss) before income taxes 6,217 9,883  
Depreciation 128 142  
Property, plant and equipment additions 389 52  
Current assets 303,596 329,779  
Current liabilities 160,564 170,684  
Goodwill 18,476 18,476  
Total assets 330,736 353,570  
Industrial Services      
Segment Reporting Information      
Revenues 30,307 22,501  
Cost of revenues 26,562 18,680  
Gross profit 3,745 3,821  
Selling, general and administrative expenses 1,460 1,759  
Income (loss) from operations 2,285 2,062  
Income (loss) before income taxes 2,285 2,062  
Amortization of intangibles 98 166  
Depreciation 304 544  
Property, plant and equipment additions 256 151  
Current assets 43,946 27,872  
Current liabilities 29,226 12,362  
Goodwill 9,467 9,467  
Total assets 61,421 45,379  
Telecommunications Infrastructure Services [Member]      
Segment Reporting Information      
Revenues 3,192 3,827  
Cost of revenues 2,554 2,824  
Gross profit 638 1,003  
Selling, general and administrative expenses 703 765  
Income (loss) from operations (65) 238  
Other income (loss), net   2  
Income (loss) before income taxes (65) 240  
Depreciation 114 122  
Property, plant and equipment additions   35  
Current assets 3,985 3,565  
Current liabilities 1,172 1,685  
Goodwill 90 90  
Total assets $ 7,071 $ 7,245  
XML 70 R59.htm IDEA: XBRL DOCUMENT v3.23.1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details) - USD ($)
$ in Thousands
Apr. 30, 2023
Jan. 31, 2023
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION    
Income tax refunds receivable and prepaid income taxes $ 16,233 $ 15,327
Raw materials inventory 12,172 11,903
Prepaid expenses 7,862 4,541
Other 6,109 6,563
Total other current assets $ 42,376 $ 38,334
XML 71 R60.htm IDEA: XBRL DOCUMENT v3.23.1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) - USD ($)
$ in Thousands
Apr. 30, 2023
Jan. 31, 2023
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION    
Accrued compensation $ 11,382 $ 18,286
Project costs 21,764 17,448
Lease liabilities 1,491 1,567
Other 10,118 12,566
Total accrued expenses $ 44,755 $ 49,867
XML 72 R61.htm IDEA: XBRL DOCUMENT v3.23.1
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details) - Fraudulently Induced Payment - USD ($)
$ in Millions
3 Months Ended
Mar. 07, 2023
Apr. 30, 2023
SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION    
Unrecoverable funds amount $ 3.0  
Professional fees $ 0.2  
Unusual or infrequent item gross loss   $ 3.2
XML 73 agx-20230430x10q_htm.xml IDEA: XBRL DOCUMENT 0000100591 agx:FraudulentlyInducedPaymentMember 2023-02-01 2023-04-30 0000100591 us-gaap:TreasuryStockMember 2022-02-01 2022-04-30 0000100591 us-gaap:TreasuryStockMember 2023-02-01 2023-04-30 0000100591 us-gaap:CommonStockMember 2023-02-01 2023-04-30 0000100591 us-gaap:CommonStockMember 2022-02-01 2022-04-30 0000100591 us-gaap:TreasuryStockMember 2023-04-30 0000100591 us-gaap:RetainedEarningsMember 2023-04-30 0000100591 us-gaap:AdditionalPaidInCapitalMember 2023-04-30 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-30 0000100591 us-gaap:TreasuryStockMember 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:TreasuryStockMember 2022-04-30 0000100591 us-gaap:RetainedEarningsMember 2022-04-30 0000100591 us-gaap:NoncontrollingInterestMember 2022-04-30 0000100591 us-gaap:AdditionalPaidInCapitalMember 2022-04-30 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-04-30 0000100591 us-gaap:TreasuryStockMember 2022-01-31 0000100591 us-gaap:RetainedEarningsMember 2022-01-31 0000100591 us-gaap:NoncontrollingInterestMember 2022-01-31 0000100591 us-gaap:AdditionalPaidInCapitalMember 2022-01-31 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-31 0000100591 us-gaap:CommonStockMember 2023-04-30 0000100591 us-gaap:CommonStockMember 2023-01-31 0000100591 us-gaap:CommonStockMember 2022-04-30 0000100591 us-gaap:CommonStockMember 2022-01-31 0000100591 agx:IncentiveStockOptionsMember agx:StockPlanMember 2023-02-01 2023-04-30 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2023-04-30 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2023-01-31 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2022-04-30 0000100591 us-gaap:EmployeeStockOptionMember 2023-02-01 2023-04-30 0000100591 2023-05-01 2023-04-30 0000100591 country:US 2023-02-01 2023-04-30 0000100591 country:IE 2023-02-01 2023-04-30 0000100591 country:GB 2023-02-01 2023-04-30 0000100591 country:US 2022-02-01 2022-04-30 0000100591 country:IE 2022-02-01 2022-04-30 0000100591 country:GB 2022-02-01 2022-04-30 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-02-01 2023-04-30 0000100591 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-02-01 2022-04-30 0000100591 agx:LettersOfCreditExpireOnMay312024Member us-gaap:RevolvingCreditFacilityMember 2023-03-06 0000100591 us-gaap:LetterOfCreditMember 2023-04-30 0000100591 us-gaap:LetterOfCreditMember 2023-01-31 0000100591 us-gaap:OtherNonoperatingIncomeExpenseMember 2023-02-01 2023-04-30 0000100591 us-gaap:OtherNonoperatingIncomeExpenseMember 2022-02-01 2022-04-30 0000100591 agx:GemmaPowerSystemsMember us-gaap:FinancialGuaranteeMember 2023-04-30 0000100591 agx:RobertsCompanyIncMember 2023-04-30 0000100591 agx:GemmaPowerSystemLlcMember 2023-04-30 0000100591 agx:RobertsCompanyIncMember 2023-01-31 0000100591 agx:GemmaPowerSystemLlcMember 2023-01-31 0000100591 us-gaap:TradeNamesMember 2023-02-01 2023-04-30 0000100591 us-gaap:CustomerRelationshipsMember 2023-02-01 2023-04-30 0000100591 us-gaap:TradeNamesMember 2023-04-30 0000100591 us-gaap:CustomerRelationshipsMember 2023-04-30 0000100591 us-gaap:TradeNamesMember 2023-01-31 0000100591 us-gaap:CustomerRelationshipsMember 2023-01-31 0000100591 us-gaap:RetainedEarningsMember 2023-02-01 2023-04-30 0000100591 us-gaap:RetainedEarningsMember 2022-02-01 2022-04-30 0000100591 us-gaap:CorporateNonSegmentMember 2023-02-01 2023-04-30 0000100591 us-gaap:CorporateNonSegmentMember 2022-02-01 2022-04-30 0000100591 2021-01-31 0000100591 srt:MinimumMember us-gaap:USTreasuryNotesSecuritiesMember 2023-04-30 0000100591 srt:MaximumMember us-gaap:USTreasuryNotesSecuritiesMember 2023-04-30 0000100591 us-gaap:RevolvingCreditFacilityMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2023-03-06 2023-03-06 0000100591 agx:TelecommunicationsInfrastructureServicesMember 2023-02-01 2023-04-30 0000100591 agx:PowerIndustryServicesMember 2023-02-01 2023-04-30 0000100591 agx:TelecommunicationsInfrastructureServicesMember 2022-02-01 2022-04-30 0000100591 agx:PowerIndustryServicesMember 2022-02-01 2022-04-30 0000100591 2022-02-01 2023-01-31 0000100591 2021-02-01 2022-01-31 0000100591 agx:MajorCustomerTwoMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerThreeMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerFourMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerTwoMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerTwoMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerThreeMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerOneMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerOneMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:IndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 agx:MajorCustomerTwoMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerThreeMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerOneMember us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerOneMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:MajorCustomerOneMember agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2022-04-30 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2022-02-01 2022-04-30 0000100591 agx:IndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:ProductConcentrationRiskMember 2022-02-01 2022-04-30 0000100591 2023-04-10 2023-04-10 0000100591 2023-04-28 2023-04-28 0000100591 2022-04-29 2022-04-29 0000100591 us-gaap:EmployeeStockOptionMember 2023-04-30 0000100591 agx:Plan2020Member 2020-06-23 0000100591 2022-01-31 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MoneyMarketFundsMember 2023-04-30 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MoneyMarketFundsMember 2023-01-31 0000100591 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2023-04-30 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2023-04-30 0000100591 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2023-01-31 0000100591 us-gaap:CorporateNonSegmentMember 2023-04-30 0000100591 agx:TelecommunicationsInfrastructureServicesMember 2023-04-30 0000100591 agx:PowerIndustryServicesMember 2023-04-30 0000100591 agx:IndustrialFabricationAndFieldServicesMember 2023-04-30 0000100591 us-gaap:CorporateNonSegmentMember 2022-04-30 0000100591 agx:TelecommunicationsInfrastructureServicesMember 2022-04-30 0000100591 agx:PowerIndustryServicesMember 2022-04-30 0000100591 agx:IndustrialFabricationAndFieldServicesMember 2022-04-30 0000100591 agx:IndustrialFabricationAndFieldServicesMember 2023-02-01 2023-04-30 0000100591 agx:IndustrialFabricationAndFieldServicesMember 2022-02-01 2022-04-30 0000100591 us-gaap:AdditionalPaidInCapitalMember 2023-02-01 2023-04-30 0000100591 us-gaap:AdditionalPaidInCapitalMember 2022-02-01 2022-04-30 0000100591 2023-06-05 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2023-04-30 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2023-01-31 0000100591 agx:FraudulentlyInducedPaymentMember 2023-03-07 2023-03-07 0000100591 srt:MinimumMember 2023-02-01 2023-04-30 0000100591 srt:MaximumMember 2023-02-01 2023-04-30 0000100591 2022-04-30 0000100591 us-gaap:RestrictedStockUnitsRSUMember 2023-02-01 2023-04-30 0000100591 srt:ExecutiveOfficerMember agx:PerformanceBasedRestrictedStockUnitsMember agx:StockPlanMember 2023-02-01 2023-04-30 0000100591 agx:TimeBasedRestrictedStockUnitsMember 2023-04-30 0000100591 agx:RenewablePerformanceBasedRestrictedStockUnitsMember 2023-04-30 0000100591 agx:PerformanceBasedRestrictedStockUnitsMember 2023-04-30 0000100591 agx:EarningsPerSharePerformanceBasedRestrictedStockUnitsMember 2023-04-30 0000100591 agx:TimeBasedRestrictedStockUnitsMember 2022-04-30 0000100591 agx:RenewablePerformanceBasedRestrictedStockUnitsMember 2022-04-30 0000100591 agx:PerformanceBasedRestrictedStockUnitsMember 2022-04-30 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-02-01 2023-04-30 0000100591 us-gaap:AssetsTotalMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2023-01-31 0000100591 agx:PowerIndustryServicesMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-02-01 2022-04-30 0000100591 us-gaap:RevolvingCreditFacilityMember 2023-03-06 2023-03-06 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2023-02-01 2023-04-30 0000100591 us-gaap:HeldtomaturitySecuritiesMember 2022-02-01 2023-01-31 0000100591 2022-02-01 2022-04-30 0000100591 2020-01-31 0000100591 us-gaap:USTreasuryNotesSecuritiesMember 2023-04-30 0000100591 2023-02-01 2023-04-30 0000100591 2023-04-30 0000100591 2023-01-31 iso4217:USD agx:customer shares pure iso4217:USD shares agx:segment 0000100591 --01-31 2024 Q1 false ARGAN INC 0 0 15828289 P2Y http://fasb.org/us-gaap/2022#AvailableForSaleSecuritiesDebtSecuritiesCurrent http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent http://fasb.org/us-gaap/2022#LiabilitiesNoncurrent P9M P24M 0.3333 P3Y P3Y 0.25 0.25 10-Q true 2023-04-30 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 13410645 103675000 100277000 89451000 80539000 14224000 19738000 10591000 10575000 3633000 9163000 -629000 595000 3004000 9758000 895000 2273000 2109000 7485000 440000 -1264000 -37000 2512000 6221000 0.16 0.50 0.16 0.50 13413000 14910000 13546000 14992000 0.25 0.25 195947000 173947000 90614000 151511000 30376000 60774000 50132000 4914000 24778000 42376000 38334000 425001000 438702000 10665000 10430000 28033000 28033000 2511000 2609000 3606000 3689000 5878000 6024000 475694000 489487000 36334000 56375000 44755000 49867000 111308000 96261000 192397000 202503000 5348000 6087000 197745000 208590000 0.10 0.10 500000 500000 0 0 0.15 0.15 30000000 30000000 15828289 13414404 13441590 2374000 2374000 161347000 162208000 206584000 207832000 2413885 2386699 89883000 88641000 -2473000 -2876000 277949000 280897000 475694000 489487000 13441590 2374000 162208000 207832000 -88641000 -2876000 280897000 2109000 2109000 440000 440000 -37000 -37000 1034000 1034000 65470 -1895000 2439000 544000 92656 3681000 3681000 3357000 3357000 13414404 2374000 161347000 206584000 -89883000 -2473000 277949000 15257688 2368000 158190000 188690000 -20405000 -2451000 -797000 325595000 7485000 7485000 -1264000 -1264000 920000 920000 39099 6000 60000 66000 710879 27077000 27077000 3712000 3712000 14585908 2374000 159170000 192463000 -47482000 -3715000 -797000 302013000 2109000 7485000 -1081000 203000 1034000 920000 547000 809000 439000 750000 147000 450000 98000 166000 -32000 610000 -25000 9000 10642000 9069000 -19864000 1976000 4089000 2291000 -26940000 -15229000 15047000 -20923000 -1248000 -39730000 90000000 175000000 149750000 90000000 30355000 645000 238000 28750000 -85238000 3681000 27077000 3357000 3712000 544000 66000 -6494000 -30723000 992000 -2526000 22000000 -158217000 173947000 350472000 195947000 192255000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 1 – DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Description of the Business</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Argan, Inc. (“Argan”) conducts operations through its wholly-owned subsidiaries, Gemma Power Systems, LLC and affiliates (“GPS”); The Roberts Company, Inc. (“TRC”); Atlantic Projects Company Limited and affiliates (“APC”) and Southern Maryland Cable, Inc. (“SMC”). Argan and these consolidated subsidiaries are hereinafter collectively referred to as the “Company.” </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Through GPS and APC, the Company provides a full range of engineering, procurement, construction, commissioning, maintenance, project development, and technical consulting services to the power generation market, including the renewable energy sector. The wide range of customers includes primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial fabrication and field 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;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Basis of Presentation and Significant Accounting Policies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The condensed consolidated financial statements include the accounts of Argan, its wholly-owned subsidiaries and a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 14, the Company has provided certain financial information relating to the operating results and assets of its reportable segments based on the manner in which management disaggregates the Company’s financial reporting for purposes of making internal operating decisions. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s fiscal year ends on January 31 each year. The condensed consolidated balance sheet as of April 30, 2023, the condensed consolidated statements of earnings and stockholders’ equity for the three months ended April 30, 2023 and 2022, and the condensed consolidated statements of cash flows for the three months ended April 30, 2023 and 2022 are unaudited. The condensed consolidated balance sheet as of January 31, 2023 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, 2023 (“Fiscal 2023”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the 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 April 30, 2023, 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;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Accounting Policies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, <i style="font-style:italic;">Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method </i>(“ASU 2023-02”), which provide an election to account for tax equity investments using the proportional amortization method, if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-020 may have on its financial position, results of operations, cash flows, or disclosures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">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;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Available-For-Sale Securities</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">At each balance sheet date, available-for-sale securities are recorded at fair value, with unrealized gains and, to the extent deemed temporary, unrealized losses reported as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, realized gains and realized losses are included in other income or expense, as applicable, in the Company’s condensed consolidated statement of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of available-for-sale securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the available-for-sale securities is reevaluated at each balance sheet date.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company considers its available-for-sale securities impaired when a decline in fair value below its cost basis is determined to be other than temporary. The Company evaluates whether the decline in fair value is other than temporary based on the amount and duration of the period that the fair value of the available-for-sale security is less than its cost basis, overall market conditions and trends, the Company’s intent to sell the available-for-sale security and whether it is more likely than not that the Company would be required to sell the security before its anticipated recovery. If a decline in fair value is determined to be other than temporary, the Company records an impairment loss and establishes a new cost basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Fair Values</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">ASC Topic 820<i style="font-style:italic;">, Fair Value Measurement</i>, establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy prioritizes the inputs into three levels that may be used to measure fair value:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 0pt 36pt;">Level 1 – Inputs are unadjusted quoted prices in active markets for identical assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 0pt 36pt;">Level 2 – Inputs are quoted prices for similar assets or liabilities in active markets; or quoted prices for identical or similar assets or liabilities in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 8pt 36pt;">Level 3 – Inputs are unobservable inputs based on a company’s own assumptions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">At April 30, 2023 and January 31, 2023, certain amounts of cash equivalents were invested in money market funds with net assets invested in high-quality money market instruments. Money market funds were classified as Level 1 due to the short-term nature of these instruments and as their fair value is based on quoted prices in active markets for identical assets. As of April 30, 2023, all of the Company’s available-for-sale securities were U.S. Treasury notes and were classified as Level 2, as their fair value is measured based on quoted prices in active markets for similar assets.  As of April 30, 2023 and January 31, 2023, the Company did not have any financial assets measured on a recurring basis using Level 3 inputs. The carrying value amounts presented in the condensed consolidated balance sheets for the Company’s other current assets, </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">which primarily include cash, short term investments, accounts receivable and contract assets, and its current liabilities are reasonable estimates of their fair values due to the short-term nature of these items.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following table shows the Company’s financial instruments as of April 30, 2023 and January 31, 2023 that are measured and recorded at fair value on a recurring basis:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-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;line-height:1.19;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.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Money market funds</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,546</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Available-for-sale securities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,546</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Treasury Stock</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Treasury stock is recorded using the cost method. Incremental direct costs to purchase treasury stock, including excise tax, are included in the cost of the shares acquired. The Company uses the average cost method to account for treasury stock. For treasury stock provided for settlements or sold at a price higher than its cost, the gain is recorded to additional paid-in capital. For treasury stock provided for settlements or sold at a price lower than its cost, the loss is recorded to additional paid-in capital to the extent there are previous net gains included in additional paid-in capital. Any losses in excess of that amount are recorded to retained earnings.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Variable Interest Entity</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In January 2018, the Company was deemed to be the primary beneficiary of a VIE that was performing the project development activities related to the planned construction of a new natural gas-fired power plant. In the fourth quarter of Fiscal 2023, the Company was deemed to no longer be the primary beneficiary of the VIE, and the VIE was deconsolidated. Prior to deconsolidation, the account balances of the VIE had been included in the Company’s consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Description of the Business</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Argan, Inc. (“Argan”) conducts operations through its wholly-owned subsidiaries, Gemma Power Systems, LLC and affiliates (“GPS”); The Roberts Company, Inc. (“TRC”); Atlantic Projects Company Limited and affiliates (“APC”) and Southern Maryland Cable, Inc. (“SMC”). Argan and these consolidated subsidiaries are hereinafter collectively referred to as the “Company.” </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Through GPS and APC, the Company provides a full range of engineering, procurement, construction, commissioning, maintenance, project development, and technical consulting services to the power generation market, including the renewable energy sector. The wide range of customers includes primarily independent power producers, public utilities, power plant equipment suppliers and other commercial firms with significant power requirements with customer projects located in the United States (the “U.S.”), the Republic of Ireland (“Ireland”) and the United Kingdom (the “U.K.”). GPS and APC represent the Company’s power industry services reportable segment. Through TRC, the industrial fabrication and field 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;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Basis of Presentation and Significant Accounting Policies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The condensed consolidated financial statements include the accounts of Argan, its wholly-owned subsidiaries and a variable interest entity (“VIE”) prior to its deconsolidation in the fourth quarter of the year ended January 31, 2023. All significant inter-company balances and transactions have been eliminated in consolidation. In Note 14, the Company has provided certain financial information relating to the operating results and assets of its reportable segments based on the manner in which management disaggregates the Company’s financial reporting for purposes of making internal operating decisions. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s fiscal year ends on January 31 each year. The condensed consolidated balance sheet as of April 30, 2023, the condensed consolidated statements of earnings and stockholders’ equity for the three months ended April 30, 2023 and 2022, and the condensed consolidated statements of cash flows for the three months ended April 30, 2023 and 2022 are unaudited. The condensed consolidated balance sheet as of January 31, 2023 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, 2023 (“Fiscal 2023”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the 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 April 30, 2023, 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;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Accounting Policies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In March 2023, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) 2023-02, <i style="font-style:italic;">Investments—Equity Method and Joint Ventures (Topic 323): Accounting for Investments in Tax Credit Structures Using the Proportional Amortization Method </i>(“ASU 2023-02”), which provide an election to account for tax equity investments using the proportional amortization method, if certain conditions are met. Under the proportional amortization method, the initial cost of an investment is amortized in proportion to the amount of the tax credits and other tax benefits received and presented net as a component of income tax expense. The amendments in this update are effective for fiscal years beginning after December 15, 2023, and interim periods within those fiscal years. The Company is currently evaluating the effects, if any, that the adoption of ASU 2023-020 may have on its financial position, results of operations, cash flows, or disclosures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">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;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Available-For-Sale Securities</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">At each balance sheet date, available-for-sale securities are recorded at fair value, with unrealized gains and, to the extent deemed temporary, unrealized losses reported as a component of accumulated other comprehensive loss. Interest income, accretion of discounts, amortization of premiums, realized gains and realized losses are included in other income or expense, as applicable, in the Company’s condensed consolidated statement of earnings. The Company determines the cost of securities sold based on the specific identification method. The Company determines the appropriate classification of available-for-sale securities based on whether they represent the investment of cash available for current operations, as defined in Accounting Standards Codification (“ASC”) 210-10-45-1 and ASC 210-10-45-2. The classification of the available-for-sale securities is reevaluated at each balance sheet date.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company considers its available-for-sale securities impaired when a decline in fair value below its cost basis is determined to be other than temporary. The Company evaluates whether the decline in fair value is other than temporary based on the amount and duration of the period that the fair value of the available-for-sale security is less than its cost basis, overall market conditions and trends, the Company’s intent to sell the available-for-sale security and whether it is more likely than not that the Company would be required to sell the security before its anticipated recovery. If a decline in fair value is determined to be other than temporary, the Company records an impairment loss and establishes a new cost basis.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Fair Values</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">ASC Topic 820<i style="font-style:italic;">, Fair Value Measurement</i>, establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy prioritizes the inputs into three levels that may be used to measure fair value:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 0pt 36pt;">Level 1 – Inputs are unadjusted quoted prices in active markets for identical assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 0pt 36pt;">Level 2 – Inputs are quoted prices for similar assets or liabilities in active markets; or quoted prices for identical or similar assets or liabilities in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;padding-left:41.05pt;text-align:justify;text-indent:-41.05pt;margin:0pt 0pt 8pt 36pt;">Level 3 – Inputs are unobservable inputs based on a company’s own assumptions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">At April 30, 2023 and January 31, 2023, certain amounts of cash equivalents were invested in money market funds with net assets invested in high-quality money market instruments. Money market funds were classified as Level 1 due to the short-term nature of these instruments and as their fair value is based on quoted prices in active markets for identical assets. As of April 30, 2023, all of the Company’s available-for-sale securities were U.S. Treasury notes and were classified as Level 2, as their fair value is measured based on quoted prices in active markets for similar assets.  As of April 30, 2023 and January 31, 2023, the Company did not have any financial assets measured on a recurring basis using Level 3 inputs. The carrying value amounts presented in the condensed consolidated balance sheets for the Company’s other current assets, </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">which primarily include cash, short term investments, accounts receivable and contract assets, and its current liabilities are reasonable estimates of their fair values due to the short-term nature of these items.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following table shows the Company’s financial instruments as of April 30, 2023 and January 31, 2023 that are measured and recorded at fair value on a recurring basis:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-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;line-height:1.19;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.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Money market funds</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,546</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Available-for-sale securities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,546</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr></table> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-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;line-height:1.19;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.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Money market funds</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,546</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Available-for-sale securities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,546</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr></table> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-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;line-height:1.19;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.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Money market funds</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,546</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Available-for-sale securities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:33.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,546</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 68,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr></table> 112546000 68647000 30376000 112546000 30376000 68647000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Variable Interest Entity</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In January 2018, the Company was deemed to be the primary beneficiary of a VIE that was performing the project development activities related to the planned construction of a new natural gas-fired power plant. In the fourth quarter of Fiscal 2023, the Company was deemed to no longer be the primary beneficiary of the VIE, and the VIE was deconsolidated. Prior to deconsolidation, the account balances of the VIE had been included in the Company’s consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 2 – REVENUES FROM CONTRACTS WITH CUSTOMERS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s accounting for revenues on contracts with customers is based on a single comprehensive five-step model that requires reporting entities to:</p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:18pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">1.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Identify the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:18pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">2.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Identify the performance obligations of the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:18pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">3.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Determine the transaction price of the contract,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:18pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">4.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Allocate the transaction price to the performance obligations, and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:18pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">5.</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Recognize revenue.</span></td></tr></table><div style="margin-top:8pt;"/><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company focuses on the transfer of the contractor’s control of the goods and/or services to the customer. When a performance obligation is satisfied over time, the related revenues are recognized over time. The Company’s revenues are recognized primarily under various types of long-term construction contracts, including those for which revenues are based on either a fixed-price or a time-and-materials basis, and primarily over time as performance obligations are satisfied due to the continuous transfer of control to the project owner or other customer. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Revenues from fixed-price contracts, including portions of estimated gross profit, are recognized as services are provided, based on costs incurred and estimated total contract costs using the cost-to-cost approach. If, at any time, the estimate of contract profitability indicates an anticipated loss on a contract, the Company will recognize the total loss in the reporting period in which it is identified and the loss amount becomes estimable. Revenues from time-and-materials contracts are recognized when the related services are provided to the customer. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Predominantly all of the Company’s fixed-price contracts are considered to have a single performance obligation. Although multiple promises to transfer individual goods or services may exist, they are not typically distinct within the context of such contracts because contract promises included therein are interrelated or the contracts require the Company to perform </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">critical integration so that the customer receives a completed project. Warranties provided under the Company’s contracts with customers are assurance-type primarily and are recorded as the corresponding contract work is performed. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The transaction price for a customer contract represents the value of the contract awarded to the Company that is used to determine the amount of revenues recognized as of the balance sheet date. It may reflect amounts of variable consideration which could be either increases or decreases to the transaction price. These adjustments can be made from time-to-time during the period of contract performance as circumstances evolve related to such items as changes in the scope and price of contracts, claims, incentives and liquidated damages.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s timing of revenue recognition may not be consistent with its rights to bill and collect cash from project owners and other customers. Most contracts require payments as the corresponding work progresses that are determined in the manner described therein. Those rights are generally dependent upon advance billing terms, milestone billings based on the completion of certain phases of work or when services are performed. On most of the Company’s large contracts, milestone billings that occur early in the corresponding contract terms typically are made in advance of certain significant and related costs being incurred. This results in typically larger contract liability balances early in contract lives that decline over the terms of the corresponding contracts. During the three months ended April 30, 2023 and 2022, there were no unusual or one-time adjustments to contract liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The balances of the Company’s accounts receivable represent amounts billed to customers that have yet to be collected and represent an unconditional right to cash from its customers. Contract assets include amounts that represent the rights to receive payment for goods or services that have been transferred to the customer, with the rights conditional upon something other than the passage of time. Contract liabilities include amounts that reflect obligations to provide goods or services for which payment has been received. The amounts of revenues recognized during the three months ended April 30, 2023 and 2022 that were included in the balances of contract liabilities as of January 31, 2023 and 2022, respectively, were approximately $50.9 million and $67.3 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Contract retentions are billed amounts which, pursuant to the terms of the applicable contract, are not paid by customers until a defined phase of a contract or project has been completed and accepted. These retained amounts are reflected in contract assets or contract liabilities depending on the net contract position of the particular contract. Retention amounts and the length of retention periods may vary. Retainage amounts related to active contracts are considered current regardless of the term of the applicable contract; such amounts are generally collected by the completion of the applicable contract. The amounts retained by project owners and other customers under construction contracts at April 30, 2023 and January 31, 2023 were $25.0 million and $49.1 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Variable Consideration</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Amounts for contract variations for which the Company has project-owner directive for additional work or other scope change, but not for the price associated with the corresponding additional effort, are included in the transaction price when it is considered probable that the applicable costs will be recovered through a modification to the contract price. The effects of any revision to a transaction price can be determined at any time and they could be material. The Company includes in the corresponding transaction price an estimate of the amount that it expects to receive from a claim based on management’s judgment regarding all reasonably available information. Once a final amount has been determined, the transaction price may be revised again to reflect the final resolution. At April 30, 2023 and January 31, 2023, the aggregate amounts of such contract variations included in the transaction prices that were still pending customer acceptance were $12.2 million and $11.6 million, respectively. Variations related to the Company’s contracts typically represent modifications to the existing contracts and performance obligations and do not represent new performance obligations. Actual costs related to any changes in the scope of the corresponding contract are expensed as they are incurred. Changes to total estimated contract costs and losses, if any, are reflected in operating results for the period in which they are determined.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company’s long-term contracts typically have schedule dates and other performance objectives that if not achieved could subject the Company to liquidated damages. These contract requirements generally relate to specified activities that must be completed by an established date or by the achievement of a specified level of output or efficiency. Each applicable contract defines the conditions under which a project owner may be entitled to any liquidated damages. At the outset of each of the Company’s contracts, the potential amounts of liquidated damages typically are not subtracted from the </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">transaction price as the Company believes that it has included activities in its contract plan, and the associated forecasted contract costs, that will be effective in preventing such damages. Of course, circumstances may change as the Company executes the corresponding contract. The transaction price is reduced by an applicable amount when the Company no longer considers it probable that a future reversal of revenues will not occur when the matter is resolved. The Company considers potential liquidated damages, the costs of other related items and potential mitigating factors in determining the adequacy of its regularly updated estimates of the amounts of gross profit expected to be earned on active projects. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In other cases, the Company may have the grounds to assert liquidated damages against subcontractors, suppliers, project owners or other parties related to a project. Such circumstances may arise when the Company’s activities and progress are adversely affected by delayed or damaged materials, challenges with equipment performance or other events out of the Company’s control where the Company has rights to recourse, typically in the form of liquidated damages. In general, the Company does not adjust the corresponding contract accounting until it is probable that the favorable cost relief will be realized. Such adjustments have been and could be material.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company records adjustments to revenues and profits on contracts, including those associated with contract variations and estimated cost changes, using a cumulative catch-up method. Under this method, the impact of an adjustment to the amount of revenues recognized to date is recorded in the period that the adjustment is identified. Estimated variable consideration amounts are determined by the Company based primarily on the single most likely amount in the range of possible consideration amounts. Revenues and profits in future periods of contract performance are recognized using the adjusted amounts of transaction price and estimated contract costs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><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;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Substantially all of the Company’s customer contracts include the right for customers to terminate contracts for convenience. Current accounting guidance indicates that the value of future work that companies are contractually obligated to perform pursuant to active customer contracts should not be included in the disclosure of RUPO when the corresponding contracts include termination for convenience clauses without substantial penalties accruing to the customers upon such terminations. In the application of this guidance, management assesses whether the nature of the work being performed under contract is largely service-based and repetitive and should be considered a succession of one-month contracts for the duration of the identified term of the contract. Predominantly, the Company’s customers contract with the Company to construct assets, to fabricate materials or to perform emergency maintenance or outage services where management believes substantial penalties or costs would be incurred upon a termination for convenience including the costs of terminating subcontracts, canceling purchase orders and returning or otherwise disposing of delivered materials and equipment. The value of RUPO on customer contracts represents an amount based on contracts or orders received from customers that the Company believes are firm and where the parties are acting in accordance with their respective obligations. The cancellation or termination of contracts for the convenience of customers has not had a material adverse effect on our consolidated financial statements. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">At April 30, 2023, the Company had RUPO of $0.7 billion. The largest portion of RUPO at any date usually relates to engineering, procurement and construction (“EPC”) service 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 37% of the RUPO amount at April 30, 2023 will be included in the amount of consolidated revenues that will be recognized during the remainder of the fiscal year ending January 31, 2024 (“Fiscal 2024”). Most of the remaining amount of the RUPO amount at April 30, 2023 is expected to be recognized in revenues during the fiscal years ending January 31, 2025 and January 31, 2026. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">It is important to note that estimates may be changed in the future and that cancellations, deferrals, or scope adjustments may occur related to work included in the amount of RUPO at April 30, 2023. 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;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Disaggregation of Revenues</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The following table presents consolidated revenues for the three months ended April 30, 2023 and 2022, disaggregated by the geographic area where the corresponding projects were located:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended April 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United States</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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 65,244</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 80,273</p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Republic of Ireland</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 24,856</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,653</p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United Kingdom</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,351</p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Consolidated Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 103,675</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 100,277</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">The 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 14 to the condensed consolidated financial statements.</p> 50900000 67300000 25000000.0 49100000 12200000 11600000 700000 P3Y 0.37 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended April 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United States</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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 65,244</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 80,273</p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Republic of Ireland</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 24,856</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,653</p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">United Kingdom</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,351</p></td></tr><tr><td style="vertical-align:bottom;width:66.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Consolidated Revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 103,675</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 100,277</p></td></tr></table> 65244000 80273000 24856000 9653000 13575000 10351000 103675000 100277000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 3 – CASH, CASH EQUIVALENTS AND INVESTMENTS </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 6pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Cash and Cash Equivalents</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 6pt 0pt;">The Company considers all liquid investments with original maturities of three months or less at the time of purchase to be cash equivalents. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 6pt 0pt;">At April 30, 2023 and January 31, 2023, certain amounts of cash equivalents were invested in a money market fund with net assets invested in high-quality money market instruments. Such investments include U.S. Treasury obligations; obligations of U.S. government agencies, authorities, instrumentalities or sponsored enterprises; and repurchase agreements secured by U.S. government obligations. Dividend income related to money market investments is recorded when earned. The balances of accrued dividends at April 30, 2023 and January 31, 2023 were $0.5 million and $0.3 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 6pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Short-Term Investments</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 6pt 0pt;">Short-term investments as of April 30, 2023 and January 31, 2023 consisted solely of certificates of deposit purchased from the Bank (“CDs) with weighted average maturities of one year or less. The Company has the intent and ability to hold the CDs until they mature, and they are carried at cost plus accrued interest. Interest income is recorded when earned and is included in other income. At April 30, 2023 and January 31, 2023, the weighted average annual interest rates of the outstanding CDs were 5.2% and 2.5%, respectively. Interest income on CDs is recorded when earned. The balances of accrued interest on the CDs at April 30, 2023 and January 31, 2023 were $0.7 million and $1.8 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 6pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Available-For-Sale Securities</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During the fiscal quarter ended April 30, 2023, the Company purchased U.S. Treasury notes with original maturities of <span style="-sec-ix-hidden:Hidden_Pgr8KlA3QE6U9JiUmBmRuQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">two</span></span> and three years. The Company’s available-for-sale securities consisted of the following amortized cost, allowance for credit losses, gross unrealized gains and losses and estimated fair value by contractual maturity as of April 30, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:59.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;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.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;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.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gains</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">U.S. Treasury notes:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in one to two years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,014</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,977</p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in two to three years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,399</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,399</p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,413</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 0pt 0pt;">As of April 30, 2023, interest receivable in the amount of $0.1 million is <span style="-sec-ix-hidden:Hidden_zZ1QIR_X0UGPeQiuCgOaRA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">included</span></span> in balance of available-for-sale securities on the condensed consolidated balance sheets. For the three months ended April 30, 2023, the change in net unrealized holding losses for the Company’s available-for-sale securities reported in other comprehensive income was not material. For the three months ended April 30, 2023, there were no sales of the Company’s available-for-sale securities, and therefore, there were no amounts of gains or losses reclassified out of other comprehensive income into net income. All </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">unrealized losses for the available-for-sale securities have been in a continuous loss position for less than 12 months. The Company does not believe the unrealized losses represent credit losses based on the evaluation of evidence as of April 30, 2023, which includes an assessment of whether it is more likely than not the Company will be required to sell the investment before recovery of the investment’s amortized cost basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Concentration Risk</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company has a substantial portion of its cash on deposit in the U.S. with Bank of America, N.A.  (the “Bank”). 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. Management does not believe that the combined amount of the CDs and the cash deposited with the Bank and cash balances maintained at financial institutions in Ireland and the U.K., in excess of government-insured levels, represent material risks.</p> 500000 300000 P1Y P1Y 0.052 0.025 700000 1800000 P3Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:59.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;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.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;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.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrealized</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gains</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">U.S. Treasury notes:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in one to two years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,014</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,977</p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Due in two to three years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,399</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,399</p></td></tr><tr><td style="vertical-align:bottom;width:38.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,413</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,376</p></td></tr></table> 15014000 37000 14977000 15399000 15399000 30413000 37000 30376000 100000 0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 4 – ACCOUNTS RECEIVABLE</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company generally extends credit to a customer based on an evaluation of the customer’s financial condition, without requiring tangible collateral. Customer payments on other construction, fabrication and field service contracts are generally due within 30 to 60 days of billing, depending on the negotiated terms of the corresponding contract. Exposure to losses on accounts 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 months ended April 30, 2023 and 2022 were insignificant. The allowance for credit losses at April 30, 2023 and January 31, 2023 was $1.8 million and $1.9 million, respectively. </p> 1800000 1900000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 5 – INTANGIBLE ASSETS </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">At both April 30, 2023 and January 31, 2023, 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, 2023, 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;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s intangible assets, other than goodwill, relate primarily to the industrial fabrication and field services segment and consisted of the following as of April 30, 2023 and January 31, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:34.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:7.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:26.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:26.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Useful Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;">15 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,225</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,274</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,150</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,349</p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 679</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 237</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 656</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 260</p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,904</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,511</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,806</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,609</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 18500000 18500000 9500000 9500000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:34.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:7.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:26.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:26.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Useful Life</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;">15 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,225</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,274</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,150</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,349</p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;">10 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 679</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 237</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 916</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 656</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 260</p></td></tr><tr><td style="vertical-align:bottom;width:34.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Totals</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,904</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,511</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.86%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,806</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,609</p></td></tr></table> P15Y 4499000 2225000 2274000 4499000 2150000 2349000 P10Y 916000 679000 237000 916000 656000 260000 5415000 2904000 2511000 5415000 2806000 2609000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 6 – FINANCING ARRANGEMENTS </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During April 2021, the Company amended its Amended and Restated Replacement Credit Agreement with the Bank (the “Credit Agreement”) which extended the expiration date of the Credit Agreement to May 31, 2024 and reduced the borrowing rate. On March 6, 2023, the Company entered into the Second Amendment (the “Second Amendment”) to the Credit Agreement. The Second Amendment modified the Credit Amendment to, primarily, replace the interest pricing with the Secured Overnight Financing Rate (“SOFR”) plus 1.6% and added SOFR successor rate language. The Credit Agreement, as amended, includes the following features, among others: a lending commitment of $50.0 million including a revolving loan and an accordion feature which allows for an additional commitment amount of $10.0 million, subject to certain conditions. The Company may also use the borrowing ability to cover other credit instruments issued by the Bank for the Company’s use in the ordinary course of business as defined in the Credit Agreement. Additionally, the Credit Agreement, as amended, continues to include customary terms, covenants and events of default for a credit facility of its size and nature.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">At April 30, 2023, the Company did not have any borrowings outstanding under the Credit Agreement. However, the Bank has issued letters of credit in the total outstanding amount of $11.5 million at April 30, 2023, in support of the activities of </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">APC under existing customer contracts. The comparable outstanding total amount of letters of credit at January 31, 2023 was $8.8 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company has pledged the majority of its assets to secure its financing arrangements. The Bank’s consent is not required for acquisitions, divestitures, cash dividends or significant investments as long as certain conditions are met. The Credit Agreement requires that the Company comply with certain financial covenants at its fiscal year-end and at each fiscal quarter-end. The Credit Agreement, as amended, includes other terms, covenants and events of default that are customary for a credit facility of its size and nature, including a requirement to achieve positive adjusted earnings before interest, taxes, depreciation and amortization, as defined, over each rolling twelve-month measurement period. As of April 30 and January 31, 2023, the Company was in compliance with the covenants of the Credit Agreement, as amended.</p> 0.016 50000000.0 10000000.0 11500000 8800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 7 – COMMITMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Leases</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s leases are primarily operating leases that cover office space, expiring on various dates through December 2031, and certain equipment used by the Company in the performance of its construction services contracts. Some of these equipment leases may be embedded in broader agreements with subcontractors or construction equipment suppliers. The Company has no material finance leases. None of the operating leases includes significant amounts for incentives, rent holidays or price escalations. Under certain leases, the Company is obligated to pay property taxes, insurance, and maintenance costs. For leases that contain both lease and non-lease components, fixed and variable payments are allocated to each component relative to observable or estimated standalone prices.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Operating lease right-of-use assets and associated lease liabilities are recorded in the balance sheet at the lease commencement date based on the present value of future minimum lease payments to be made over the expected lease term. As the implicit rate is not determinable in most of the Company’s leases, management uses the Company’s incremental borrowing rate at the commencement date in determining the present value of future payments. The expected lease term includes any option to extend or to terminate the lease when it is reasonably certain the Company will exercise such option. Right-of-use assets at April 30, 2023 and January 31, 2023, were $4.6 million and $4.8 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Operating lease expense amounts are recorded on a straight-line basis over the expected lease terms. Operating lease expenses for the three months ended April 30, 2023 and 2022 were $0.4 million and $0.8 million, respectively. Operating lease payments for the three months ended April 30, 2023 and 2022 were $0.4 million and $0.8 million, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.28;margin:0pt 0pt 8pt 0pt;">The following is a schedule of future minimum lease payments for the operating leases that were recognized in the condensed consolidated balance sheet as of April 30, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td colspan="4" style="vertical-align:bottom;width:100%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Years Ending January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2024 (remainder)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,244</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,350</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,079</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 235</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 213</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 815</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Total lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,936</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Less imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 303</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Present value of lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,633</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="-sec-ix-hidden:Hidden_cfSqrvrRaEO0j6x3dnZsMQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Less current portion (included in accrued expenses)</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,491</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden_g5cZg8yAa0C1C61k6wIO4A;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Noncurrent portion (included in noncurrent liabilities) </span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,142</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">For operating leases as of April 30, 2023, the weighted average lease term and weighted average discount rate was 56 months and 3.7%, respectively. For operating leases as of January 31, 2023, the weighted average lease term and weighted average discount rate was 58 months and 3.7%, respectively. The aggregate amounts of operating lease right-of-use assets added in exchange for lease obligations during the three months ended April 30, 2023 and 2022 were $0.3 million and $0.2 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company also uses equipment and occupies other facilities under short-term rental agreements. The Company classifies as short-term leases any lease with an initial noncancellable term of twelve months or less that does not include an option to purchase the underlying asset that the Company is reasonably certain to exercise. Rent expense amounts incurred under short-term rentals during the three months ended April 30, 2023 and 2022 were $3.7 million and $2.4 million, respectively. Right-of-use assets and lease liabilities related to short-term leases are excluded from the consolidated balance sheets. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Performance Bonds and Guarantees</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the normal course of business and for certain major projects, the Company may be required to obtain surety or performance bonding, to cause the issuance of letters of credit, or to provide parent company guarantees (or some combination thereof) in order to provide performance assurances to clients on behalf of its contractor subsidiaries. As these subsidiaries are wholly-owned, any actual liability is ordinarily reflected in the financial statement account balances determined pursuant to the Company’s accounting for contracts with customers. When sufficient information about claims on guaranteed or bonded projects would be available and monetary damages or other costs or losses would be determined to be probable, the Company would record such losses. Any such amounts that may be required to be paid in excess of the estimated costs to complete contracts in progress as of April 30, 2023 are not estimable. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">As of April 30, 2023, the estimated amount of the Company’s unsatisfied bonded performance obligations, covering all of its subsidiaries, were approximately $0.5 billion. As of April 30, 2023, the outstanding amount of bonds covering other risks, including warranty obligations related to completed activities, was not material. Not all of our projects require bonding.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company had also provided a financial guarantee, subject to certain terms and conditions, in the amount of $3.6 million in support of business development efforts. A liability was established for the estimated loss related to this guarantee during the year ended January 31, 2022 (“Fiscal 2022”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Warranties</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company generally provides assurance-type warranties for work performed under its construction contracts. The warranties cover defects in equipment, materials, design or workmanship, and most warranty periods typically run from <span style="-sec-ix-hidden:Hidden_35JoPnb7vEKBN-FjYmXBaQ;"><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_zR3ztFeO-kyxNmM3MWkjQg;"><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 nature of the Company’s projects, including project owner inspections of the work both during construction and prior to substantial completion, the Company has not experienced material unexpected warranty costs in the past. Warranty costs are estimated based on experience with the type of work and any known risks relative to each completed project. The accruals of liabilities, which are established to cover estimated future warranty costs, are recorded as the contracted work is performed, and they are included in the amounts of accrued expenses in the 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> true true 4600000 4800000 400000 800000 400000 800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td colspan="4" style="vertical-align:bottom;width:100%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Years Ending January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2024 (remainder)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,244</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,350</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,079</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 235</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 213</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 815</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Total lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,936</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Less imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 303</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Present value of lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,633</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="-sec-ix-hidden:Hidden_cfSqrvrRaEO0j6x3dnZsMQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Less current portion (included in accrued expenses)</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,491</p></td></tr><tr><td style="vertical-align:bottom;width:86.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="-sec-ix-hidden:Hidden_g5cZg8yAa0C1C61k6wIO4A;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Noncurrent portion (included in noncurrent liabilities) </span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.82%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,142</p></td></tr></table> 1244000 1350000 1079000 235000 213000 815000 4936000 303000 4633000 1491000 3142000 P56M 0.037 P58M 0.037 300000 200000 3700000 2400000 500000000 3600000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 8 – LEGAL CONTINGENCIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In the normal course of business, the Company may have pending claims and legal proceedings. In the opinion of management, based on information available at this time, there are no current claims and proceedings that are expected to have a material adverse effect on the condensed consolidated financial statements as of April 30, 2023. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 9 – STOCK-BASED COMPENSATION </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">On June 23, 2020, the Company’s stockholders approved the adoption of the 2020 Stock Plan (the “2020 Plan”), and the allocation of 500,000 shares of the Company’s common stock for issuance thereunder. The Company’s board of directors may make share-based awards under the 2020 Plan to officers, directors and key employees. The 2020 Plan replaced the 2011 Stock Plan (the “2011 Plan”); the Company’s authority to make awards pursuant to the 2011 Plan expired on July 19, 2021. Together, the 2020 Plan and the 2011 Plan are hereinafter referred to as the “Stock Plans.”</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The features of the 2020 Plan are similar to those included in the 2011 Plan. Awards may include nonqualified stock options, incentive stock options, and restricted or unrestricted stock. The specific provisions for each award are documented in a written agreement between the Company and the awardee. All stock options awarded under the Stock Plans have exercise prices per share at least equal to the market value per share of the Company’s common stock on the </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">date of grant. Stock options have terms no longer than ten years. Typically, stock options are awarded with <span style="-sec-ix-hidden:Hidden_XznzQYQfZE-A3hxG5da7SA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">one</span></span>-third of each stock option vesting on each of the first <span style="-sec-ix-hidden:Hidden_WFQu69MfpEamjgwIQFYHAA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span> anniversaries of the corresponding award date. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">As of April 30, 2023, there were 1,825,083 shares of common stock reserved for issuance under the Stock Plans; this number includes 84,273 shares of common stock available for future awards under the 2020 Plan. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Stock Options</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">A summary of stock option activity under the Stock Plans for the three months ended April 30, 2023, along with corresponding weighted average per share amounts, is presented below (shares in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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;line-height:1.19;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:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" 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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, February 1, 2023</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,440</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43.84</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.46</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.11</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 39.47</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Exercised</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (30)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18.12</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33.81</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2023</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,419</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.36</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.36</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.23</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Exercisable, April 30, 2023</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,291</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.80</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.02</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;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.48</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2022</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,438</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.12</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6.04</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.21</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Exercisable, April 30, 2022</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,199</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.87</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;line-height:1.19;margin:0pt;"> </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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.52</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;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.76</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">The changes in the number of non-vested options to purchase shares of common stock for the three months ended April 30, 2023, and the weighted average fair value per share for each number, 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;width:75.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:1.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:75.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" 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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Non-vested, February 1, 2023</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 194</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.27</p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8.12</p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Vested</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (75)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6.62</p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeitures</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.68</p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Non-vested, April 30, 2023</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 128</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.72</p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:75.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Non-vested, April 30, 2022</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.97%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 239</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7.45</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">The total intrinsic value amount related to the stock options exercised during the three months ended April 30, 2023 was $0.7 million. The total intrinsic value amount related to the stock options exercised during the three months ended April 30, 2022 was not significant. The aggregate market value amounts of the shares of common stock subject to outstanding stock options and exercisable stock options that were “in-the-money” exceeded the aggregate exercise prices of such options at April 30, 2023 by $3.3 million and $3.0 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Restricted Stock Units </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company awards restricted stock units to senior executives, members of the Company’s board of directors and certain other employees. Awardees earn the right to receive shares of common stock as certain performance goals are achieved and/or service periods are satisfied. Each restricted stock unit expires on the three-year anniversary of the award. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="background:#ffffff;">During the three months ended April 30, 2023, the Company awarded total stock return performance-based restricted stock units (“PRSUs”) covering a target of </span><span style="background:#ffffff;">6,000</span><span style="background:#ffffff;"> shares of common stock, earnings per share performance-based restricted stock units (“EPRSUs”) covering a target of </span><span style="background:#ffffff;">15,000</span><span style="background:#ffffff;"> shares of common stock, renewable energy performance-based restricted stock units (“RPRSUs”) covering a target of </span><span style="background:#ffffff;">7,500</span><span style="background:#ffffff;"> shares of common stock, time-based restricted stock units (“TRSUs”) </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><span style="background:#ffffff;">covering </span><span style="background:#ffffff;">45,300</span><span style="background:#ffffff;"> shares of common stock, and </span><span style="background:#ffffff;">1,306</span><span style="background:#ffffff;"> shares based on the amount of cash dividends deemed paid on shares earned pursuant to the awards. During the three months ended April 30, 2022, the Company awarded </span><span style="background:#ffffff;">47,000</span><span style="background:#ffffff;"> PRSUs, </span><span style="background:#ffffff;">7,500</span><span style="background:#ffffff;"> RPRSUs and </span><span style="background:#ffffff;">57,500</span><span style="background:#ffffff;"> TRSUs.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for the three months ended April 30, 2023, and the weighted average fair value per share for each restricted stock unit, are presented below (shares in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" 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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, February 1, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.80</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Awarded</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 96</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.67</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Issued</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (35)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31.04</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (49)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16.01</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 322</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31.25</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 278</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 29.38</p></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:8pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Fair Value</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The fair value amounts of stock options and restricted stock units are recorded as stock compensation expense on a straight-line basis over the terms of the corresponding awards. Expense amounts related to stock awards were $1.0 million and $0.9 million for the three months ended April 30, 2023 and 2022, respectively. At April 30, 2023, there was $8.4 million in unrecognized compensation cost related to outstanding stock awards that the Company expects to expense over the next three years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company estimates the weighted average fair value of stock options on the date of award using a Black-Scholes option pricing model. The Company believes that its past stock option exercise activity is sufficient to provide it with a reasonable basis upon which to estimate the expected life of newly awarded stock options. Risk-free interest rates are determined by blending the rates for <span style="-sec-ix-hidden:Hidden_xDZ2R227y0q409yU4Z95ww;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three-</span></span>to-five year U.S. Treasury notes. The dividend yield is based on the Company’s current annual regular dividend amount. The calculations of the expected volatility factors are based on the monthly closing prices of the Company’s common stock for the five-year periods preceding the dates of the corresponding awards.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The fair value amounts for the PRSUs have been determined by using the per share market price of the common stock on the dates of award and, by assigning equal probabilities to the thirteen possible payout outcomes at the end of each three-year term, and by computing the weighted average of the outcome amounts. For each award, the estimated fair value amount was calculated to be 88.5% of the aggregate market value of the target number (which is 50% of the maximum number) of shares on the award date. For the EPRSUs and RPRSUs, the fair value of each award equals the aggregate market price for the number of shares that, as of the award date, are probable of vesting based on the performance conditions. For the TRSUs, the fair value of each award equals the aggregate market price for the number of shares covered by each award on the date of award. </p> 500000 P10Y 1825083 84273 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">A summary of stock option activity under the Stock Plans for the three months ended April 30, 2023, along with corresponding weighted average per share amounts, is presented below (shares in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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;line-height:1.19;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:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" 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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, February 1, 2023</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,440</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43.84</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.46</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.11</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 39.47</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Exercised</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (30)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18.12</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33.81</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2023</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,419</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.36</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.36</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.23</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Exercisable, April 30, 2023</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,291</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.80</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.02</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;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.48</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2022</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,438</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.12</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6.04</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.21</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Exercisable, April 30, 2022</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,199</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.87</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;line-height:1.19;margin:0pt;"> </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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.52</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;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.76</p></td></tr></table> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" 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;line-height:1.19;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:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Term (years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" 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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, February 1, 2023</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,440</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43.84</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.46</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.11</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 39.47</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Exercised</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (30)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18.12</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (1)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33.81</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2023</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,419</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.36</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.36</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.23</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Exercisable, April 30, 2023</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,291</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.80</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.02</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;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.48</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2022</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,438</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.12</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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6.04</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.21</p></td></tr><tr><td style="vertical-align:bottom;width:47.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Exercisable, April 30, 2022</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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,199</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 44.87</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;line-height:1.19;margin:0pt;"> </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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.52</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;line-height:1.19;margin:0pt;"><span style="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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10.76</p></td></tr></table> 1440000 43.84 P5Y5M15D 10.11 10000 39.47 30000 18.12 1000 33.81 1419000 44.36 P5Y4M9D 10.23 1291000 44.80 P5Y7D 10.48 1438000 44.12 P6Y14D 10.21 1199000 44.87 P5Y6M7D 10.76 194000 7.27 10000 8.12 75000 6.62 1000 5.68 128000 7.72 239000 7.45 700000 3300000 3000000.0 P3Y 6000 15000 7500 45300 1306 47000 7500 57500 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The changes in the maximum number of shares of common stock issuable pursuant to outstanding restricted stock units for the three months ended April 30, 2023, and the weighted average fair value per share for each restricted stock unit, are presented below (shares in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted</b></p></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Average</b></p></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" 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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, February 1, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 310</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.80</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Awarded</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 96</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.67</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Issued</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (35)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31.04</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (49)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16.01</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 322</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31.25</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:78.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Outstanding, April 30, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 278</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 29.38</p></td></tr><tr><td style="vertical-align:bottom;width:78.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 310000 30.80 96000 30.67 35000 31.04 49000 16.01 322000 31.25 278000 29.38 1000000.0 900000 8400000 P3Y P5Y P5Y P3Y 0.885 0.50 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 10 – INCOME TAXES </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Income Tax Expense Reconciliations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s income tax amounts for the three months ended April 30, 2023 and 2022 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;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended April 30, </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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Computed expected income tax expense</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 631</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,049</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Difference resulting from:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">State income taxes, net of federal tax effect</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 84</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 134</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Deferred tax asset adjustments</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 220</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 66</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Foreign tax rate differential</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (198)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (31)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Other permanent differences and adjustments, net </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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:3.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 55</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 895</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,273</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">Foreign income tax expense amounts for the three months ended April 30, 2023 and 2022 were not material.       </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Net Operating Loss (“NOL”) Carryback</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In an effort to combat the adverse economic impacts of the COVID-19 crisis, the U.S. Congress passed the Coronavirus, Aid, Relief, and Economic Security Act (the “CARES Act”) that was signed into law on March 27, 2020. This wide-ranging legislation was an emergency economic stimulus package that included spending and tax breaks aimed at strengthening the U.S. economy and funding a nationwide effort to curtail the effects of the outbreak of COVID-19. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The tax changes of the CARES Act included a temporary suspension of the limitations on the future utilization of certain NOLs and re-established a carryback period for certain losses to five years. The NOLs eligible for carryback under the CARES Act include the Company’s domestic NOL for the year ended January 31, 2020, which was approximately $39.5 million. The Company made the appropriate filing with the Internal Revenue Service (the “IRS”) requesting carryback refunds of income taxes paid for the years ended January 31, 2016 and 2015 in the total amount of approximately $12.7 million during the fiscal year ended January 31, 2021 (“Fiscal 2021”) and an updated filing was made during the three months ended April 30, 2023; the IRS has not completed the review and approval of the Company’s refund request.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Research and Development Tax Credits</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">During Fiscal 2022, the Company completed a detailed review of the activities of its engineering staff on major EPC services projects in order to identify and quantify the amounts of research tax credits that may have been available to reduce federal income taxes for Fiscal 2022 and Fiscal 2021. As a result, the Company filed amended federal income tax returns for those years including research and development tax credits in the total amount of $5.8 million, which was netted with a provision for uncertain tax return positions in the amount of $2.4 million.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Income Tax Refunds</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 6pt 0pt;">As of April 30, 2023 and January 31, 2023, the balances of other current assets in the condensed consolidated balance sheet included income tax refunds receivable and prepaid income taxes in the total amounts of approximately $16.2 million and $15.3 million, respectively. The income tax refunds included the amount expected to be received from the IRS upon its processing of the Company’s NOL carryback refund request as described above. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 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;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company is subject to federal and state income taxes in the U.S., and income taxes in Ireland and the U.K. Tax treatments within each jurisdiction are subject to the interpretation of the related tax laws and regulations which require 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, 2019, except for several notable exceptions including Ireland, the U.K. and several states where the open periods are one year longer. In May 2023, the Company received notification that its amended federal income tax returns for Fiscal 2021 and Fiscal 2022 were selected for examination. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;background:#ffffff;">Solar Energy Projects</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company has invested in limited liability companies that make equity investments in solar energy projects that are eligible to receive energy tax credits. <span style="font-family:'inherit';background:#ffffff;">The passive investments have been accounted for using the equity method; the balances are included in other assets in our condensed consolidated balance sheets. Each tax credit, when recognized, is recorded as a reduction of the corresponding investment balance with an offsetting reduction in the balance of accrued taxes payable in accordance with the deferral method. As of April 30, 2023, the Company had no remaining cash investment commitments related to these projects. At April 30, 2023 and January 31, 2023, the investment account balances were </span><span style="font-family:'inherit';background:#ffffff;">$1.1</span><span style="font-family:'inherit';background:#ffffff;"> million and </span><span style="font-family:'inherit';background:#ffffff;">$1.2</span><span style="font-family:'inherit';background:#ffffff;"> million, respectively. These investments are expected to provide positive overall returns over their </span><span style="font-family:'inherit';background:#ffffff;">six-year</span><span style="font-family:'inherit';background:#ffffff;"> expected lives.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><span style="font-family:'inherit';background:#ffffff;">During the three months ended April 30, 2023 and 2022, the investment balance was adjusted to reflect the Company’s share of the loss of the investment entities in the amount of approximately</span><span style="font-family:'inherit';background:#ffffff;"> $0.1</span><span style="font-family:'inherit';background:#ffffff;"> million for the three months ended April 30, 2023 and its share of the income of the investment entities in the amount of approximately </span><span style="font-family:'inherit';background:#ffffff;">$0.6</span><span style="font-family:'inherit';background:#ffffff;"> million for the three months ended April 30, 2022. These net amounts have been included as other loss or income in the Company’s condensed consolidated statement of earnings for the corresponding periods.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Supplemental Cash Flow Information</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company was not required to make any income tax payments during the three months ended April 30, 2023 or 2022. During the three months ended April 30, 2023 and 2022, the Company did not receive any income tax refunds that were 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;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended April 30, </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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Computed expected income tax expense</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 631</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,049</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Difference resulting from:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">State income taxes, net of federal tax effect</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 84</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 134</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Deferred tax asset adjustments</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 220</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 66</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Foreign tax rate differential</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (198)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (31)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Other permanent differences and adjustments, net </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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:3.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 55</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 895</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,273</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 631000 2049000 84000 134000 -220000 -66000 -198000 -31000 158000 55000 895000 2273000 P5Y 39500000 12700000 5800000 2400000 16200000 15300000 1100000 1200000 P6Y 100000 600000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 11 – NET INCOME PER SHARE</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Basic and diluted net income per share amounts are computed as follows (shares in thousands except in the note):</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80.14%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended April 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,109</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,485</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average number of shares outstanding – basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,413</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Effect of stock awards <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 133</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 82</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average number of shares outstanding – diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,546</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,992</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income per share</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.16</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.50</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.16</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.50</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><div style="margin-top:8pt;"/><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:49.7pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">For the three months ended April 30, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options covering an aggregate of </span><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">851,834</span><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> and </span><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">867,334</span><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> shares of common stock, respectively.</span></td><td style="width:49.7pt;"/></tr></table><div style="margin-top:8pt;"/> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Basic and diluted net income per share amounts are computed as follows (shares in thousands except in the note):</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80.14%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;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;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended April 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="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:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,109</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,485</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average number of shares outstanding – basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,413</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Effect of stock awards <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 133</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 82</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Weighted average number of shares outstanding – diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 13,546</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,992</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Net income per share</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.16</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.50</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.16</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.91%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.50</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><div style="margin-top:8pt;"/><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:49.7pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:8pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">For the three months ended April 30, 2023 and 2022, the weighted average numbers of shares determined on a dilutive basis exclude the effects of antidilutive stock options covering an aggregate of </span><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">851,834</span><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> and </span><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">867,334</span><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> shares of common stock, respectively.</span></td><td style="width:49.7pt;"/></tr></table><div style="margin-top:8pt;"/> 2109000 7485000 13413000 14910000 133000 82000 13546000 14992000 0.16 0.50 0.16 0.50 851834 867334 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 12 – CASH DIVIDENDS AND COMMON STOCK REPURCHASES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">On April 10, 2023, Argan’s board of directors declared a regular quarterly cash dividend in the amount of $0.25 per share of common stock, which was <span style="-sec-ix-hidden:Hidden_6rsO47nrgU-P_pRw5bLtTw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">paid</span></span> on April 28, 2023 to stockholders of record at the close of business on April 20, 2023. During the three months ended April 30, 2022, the board of directors declared a regular quarterly dividend of $0.25 per share of common stock, which was paid to <span style="-sec-ix-hidden:Hidden_mm3Tzl06HUG4kOojZDyO0g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">stockholders</span></span> on April 29, 2022. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Pursuant to its established program and authorizations provided by Argan’s board of directors, the Company repurchased shares of its common stock during the three months ended April 30, 2023 and 2022. During these periods, the Company repurchased 92,656 shares and 710,879 shares of common stock, all on the open market, for aggregate prices of approximately $3.7 million, or $39.61 per share, and $27.1 million, or $38.09 per share, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">In August 2022, the Inflation Reduction Act (the “IRA”) was signed into law, which introduced a 1% excise tax on shares repurchased after December 31, 2022. For the three months ended April 30, 2023, the excise tax was not material.</p> 0.25 0.25 92656 710879 3700000 39.61 27100000 38.09 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 13 – CUSTOMER CONCENTRATIONS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The majority of the Company’s consolidated revenues relate to performance by the power industry services segment which provided 68% and 74% of consolidated revenues for the three months ended April 30, 2023 and 2022, respectively. The industrial services segment represented 29% and 22% of consolidated revenues for the three months ended April 30, 2023 and 2022, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The Company’s most significant customer relationships for the three months ended April 30, 2023 included four power industry service customers, which accounted for 16%, 14%, 14% and 13% of consolidated revenues, respectively. The Company’s most significant customer relationship for the three months ended April 30, 2022 included one power industry service customer, which accounted for 48% of consolidated revenues. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">The accounts receivable balances from three major customers represented 37%, 10% and 10% of the corresponding consolidated balance as of April 30, 2023. Accounts receivable balances from three major customers represented 36%, 12% and 12% of the corresponding consolidated balance as of January 31, 2023. The contract asset balances from three major customers represented 22%, 16% and 12% of the corresponding consolidated balance as of April 30, 2023. Contract asset balances from one major customer represented 70% of the corresponding consolidated balance as of January 31, 2023.</p> 0.68 0.74 0.29 0.22 4 0.16 0.14 0.14 0.13 1 0.48 3 0.37 0.10 0.10 3 0.36 0.12 0.12 3 0.22 0.16 0.12 1 0.70 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 14 – SEGMENT REPORTING </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Segments represent components of an enterprise for which discrete financial information is available that is evaluated regularly by the Company’s chief executive officer, who is the chief operating decision maker, in determining how to allocate resources and in assessing performance. The Company’s reportable segments recognize revenues and incur expenses, are organized in separate business units with different management teams, customers, talents and services, and may include more than one operating segment. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Intersegment revenues and the related cost of revenues are netted against the corresponding amounts of the segment receiving the intersegment services. For the three months ended April 30, 2023 and 2022, intersegment revenues were not material.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 8pt 0pt;">Summarized below are certain operating results and financial position data of the Company’s reportable business segments for the three months ended April 30, 2023 and 2022. The “Other” column in each summary includes the Company’s corporate expenses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 70,176</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 30,307</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,192</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 103,675</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 60,335</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 26,562</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,554</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 89,451</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,841</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,745</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 638</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,224</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,714</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,460</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 703</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,714</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,591</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,127</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,285</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (65)</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"> (2,714)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,633</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other income (loss), net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,090</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2,719)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (629)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,217</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,285</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (65)</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"> (5,433)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,004</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 895</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,109</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;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.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 128</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 304</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 114</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 547</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 389</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 256</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 645</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 303,596</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 43,946</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,985</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 73,474</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 425,001</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 160,564</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 29,226</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,172</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,435</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 192,397</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 330,736</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 61,421</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,071</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 76,466</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 475,694</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><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.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2022</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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 73,949</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 22,501</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,827</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 100,277</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 59,035</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,680</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,824</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 80,539</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,914</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,821</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,003</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 19,738</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,615</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,759</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 765</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,436</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,575</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,299</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,062</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 238</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"> (2,436)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,163</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 584</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 595</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,883</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,062</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 240</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"> (2,427)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,758</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,273</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,485</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 166</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 166</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 142</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 544</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 122</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 809</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 52</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 151</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 35</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 238</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 329,779</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 27,872</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,565</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 86,375</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 447,591</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 170,684</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,362</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,685</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,543</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 186,274</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 353,570</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45,379</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,245</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 86,616</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 492,810</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><span style="white-space:pre-wrap;"> </span><span style="margin-bottom:0pt;visibility:hidden;">​</span></p> 1 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 70,176</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 30,307</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,192</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 103,675</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Cost of revenues</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 60,335</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 26,562</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,554</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 89,451</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,841</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,745</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 638</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,224</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Selling, general and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,714</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,460</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 703</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,714</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,591</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,127</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,285</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (65)</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"> (2,714)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,633</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other income (loss), net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,090</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (2,719)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (629)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,217</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,285</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"> (65)</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"> (5,433)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,004</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 895</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,109</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;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.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 128</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 304</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 114</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 547</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 389</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 256</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 645</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 303,596</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 43,946</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,985</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 73,474</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 425,001</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 160,564</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 29,226</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,172</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,435</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 192,397</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 330,736</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 61,421</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,071</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 76,466</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 475,694</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size: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.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Power</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Industrial</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Telecom</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, 2022</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;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Totals</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 73,949</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 22,501</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,827</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 100,277</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 59,035</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,680</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,824</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 80,539</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14,914</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,821</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,003</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 19,738</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 5,615</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,759</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 765</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,436</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,575</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,299</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,062</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 238</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"> (2,436)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,163</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 584</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;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 595</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,883</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,062</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 240</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt;"> (2,427)</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9,758</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2,273</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,485</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 166</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 166</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 142</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 544</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 122</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 809</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 52</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 151</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 35</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 238</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 329,779</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 27,872</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;line-height:1.19;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;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 3,565</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 86,375</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 447,591</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 170,684</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,362</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,685</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,543</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 186,274</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,476</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 90</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28,033</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Total assets </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 353,570</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45,379</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;line-height:1.19;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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,245</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;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 86,616</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;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 492,810</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><span style="white-space:pre-wrap;"> </span><span style="margin-bottom:0pt;visibility:hidden;">​</span></p> 70176000 30307000 3192000 103675000 60335000 26562000 2554000 89451000 9841000 3745000 638000 14224000 5714000 1460000 703000 2714000 10591000 4127000 2285000 -65000 -2714000 3633000 2090000 -2719000 -629000 6217000 2285000 -65000 -5433000 3004000 895000 2109000 98000 98000 128000 304000 114000 1000 547000 389000 256000 645000 303596000 43946000 3985000 73474000 425001000 160564000 29226000 1172000 1435000 192397000 18476000 9467000 90000 28033000 330736000 61421000 7071000 76466000 475694000 73949000 22501000 3827000 100277000 59035000 18680000 2824000 80539000 14914000 3821000 1003000 19738000 5615000 1759000 765000 2436000 10575000 9299000 2062000 238000 -2436000 9163000 584000 2000 9000 595000 9883000 2062000 240000 -2427000 9758000 2273000 7485000 166000 166000 142000 544000 122000 1000 809000 52000 151000 35000 238000 329779000 27872000 3565000 86375000 447591000 170684000 12362000 1685000 1543000 186274000 18476000 9467000 90000 28033000 353570000 45379000 7245000 86616000 492810000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NOTE 15 — SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 6pt 0pt;">Other current assets consisted of the following at April 30, 2023 and January 31, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax refunds receivable and prepaid income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,233</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,327</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Raw materials inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,172</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,903</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Prepaid expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,862</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,541</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,109</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,563</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 42,376</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 38,334</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 6pt 0pt;">Accrued expenses consisted of the following at April 30, 2023 and January 31, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Accrued compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,382</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,286</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Project costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21,764</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 17,448</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,491</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,567</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,118</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,566</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total accrued expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,755</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,867</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:8pt 0pt 8pt 0pt;">On March 7, 2023, the Company determined that it had been a victim of a complex criminal scheme, which resulted in fraudulently-induced outbound wire transfers to a third-party account. As a result of the event, the Company incurred a loss of approximately $3.0 million related to the amount of the unrecovered funds. Any amount of this loss expected to be reimbursed to the Company from its insurance policy is not expected to be material. The Company retained specialized legal counsel and a cybersecurity services firm to assist in an independent forensic investigation of the incident and the efforts to recover the funds. As a result, the Company incurred legal, audit and other professional fees in the aggregate amount of $0.2 million related to this event. The total amount of the fraud loss and the professional fees, approximately $3.2 million, is included in other loss in the condensed consolidated statements of earnings for the three months ended April 30, 2023.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Income tax refunds receivable and prepaid income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 16,233</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 15,327</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Raw materials inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,172</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,903</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Prepaid expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7,862</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 4,541</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,109</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 6,563</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 42,376</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 38,334</span></p></td></tr></table> 16233000 15327000 12172000 11903000 7862000 4541000 6109000 6563000 42376000 38334000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">April 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">January 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-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;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;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;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Accrued compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11,382</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 18,286</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Project costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 21,764</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 17,448</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,491</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 1,567</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 10,118</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td 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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 12,566</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Total accrued expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 44,755</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;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;line-height:1.19;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;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 49,867</span></p></td></tr></table> 11382000 18286000 21764000 17448000 1491000 1567000 10118000 12566000 44755000 49867000 3000000.0 200000 3200000 EXCEL 74 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( "R#R%8'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 " L@\A6)(D2@>\ K @ $0 &1O8U!R;W!S+V-O&ULS9)1 M2\,P$,>_BN2]O33%*:'+BV-/"H(#Q;>0W+9@TX;DI-VW-ZU;A^@'\#%W__SN M=W"-"=+T$9]C'S"2PW0S^K9+TH0U.Q(%"9#,$;U.94YTN;GOH]>4G_$ 09L/ M?4 0G*_ (VFK2<,$+,)"9*JQ1IJ(FOIXQENSX,-G;&>8-8 M>NPH0556P-0T M,9S&MH$K8((11I^^"V@7XES]$SMW@)V38W)+:AB&GQY=YW<)U MB71G,/]*3M(IX)I=)K_6#YO=EBG!15WP5<'O=X)+<2OYW?OD^L/O*NQ[Z_;N M'QM?!%4#O^Y"?0%02P,$% @ +(/(5IE&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R M> +]O6N[!3+ MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,! M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2 MBW A(5M>5 TR M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$ MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH] M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2.FJW"$2M"/F(9 M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+ MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+ M.7\N?<^E[[GT/:'2MSAD6R4)RU3393>* M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.WF)&Y M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_# M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0 MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYNTB42%(JP# 4A M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.' MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_ M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]! MU4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04 M" L@\A6]]S95\(% #<'@ & 'AL+W=O:8$#\J@)!XPQSD9)#Q*>^.+\ME,C2]DH>,H%3-%\B)) MN'J^$K%<7_9H;_O@/EJ&VCP8C"\ROA1SH7_/9@KN!K5*$"4BS2.9$B46E[T) M?>>YS 24;_P1B77^XIH8*X]2?C4WT^"RYY@2B5CXVDAP^%H)3\2Q48)R_+,1 M[=7_:0)?7F_5;TOS8.:1Y\*3\9]1H,/+WEF/!&+!BUC?R_4O8F-H9/1\&>?E M)UE7[PZ'/>(7N9;))AA*D$1I]2:*/,VJ)F+LF[*:' 3I2:-!N0FU9%^ M)M.T:AZFFOLD#[D2^<5 P[^9F(&_4;ZJE%F+LDL^RE2'.:@&(G@=/X!2UD5E MVZ)>,51PDJECXCI'A#G,M93'P\-_+=)CXHQLX:^*X]8UYY9Z[JZ:FUAKSE9A ME>#0+F@Z[+L\X[ZX[$&/S(5:B=[XA^_HB?.SS>TW$GOE?5A['V+JC?>'YTS8 MG.+AU.E_MEE"HSI:&M661OM9^EQPI86*G\F]R*32-GNXE%:%K5(\-*JCO9/: MWLE^]F9"1=(TV(# @&%-'JY4=\/6?HC&=_1Y6OL\W;-E*@YS33F&M><1UUKP M.+6WN M?!]S]V(9Y1H2J,D=3ZQM%->9W+^?W)'IG6H9O@.K[QWJUS_K/'+]O$["0)0SX^V%^0#O$<^I?:\XI(0 M1;RP4'X(344![$&3*2)H,LRAUAI Y;K60(-&%*6/_]2 9^Z@=3_(M16,=LC= M2__K*HICZV",QW:UVI 0Q5GFK=6Z)\^47$6I;\\VKOGQVFKT$'A$&SZB.-6\ M-3J3N>8Q^3O*V@+24=]QV*G5WR&XB#9@1'&J>8@T,)%<$,I^?/R) MS(5?*,BDU22NY,DD@=EIKF'<.2+?.\=T1#*NR(K'=K+'];HZ;ZB)XK@#K!M$ MZ9+,GY-'&5L-[^"E]W]9;1T"E5B#2@R'F6T&RYE8OP ML*[^&BYB>W&15RAE5BS5,J7,(\PAA77+98?B%^M&C8='=?79\!#;BX>F*2RK MJVT[L_3D6^-6G[ABF\]#4 ]KJ(?M13UF:08@#QBPE,HZ_.S0F?B^ D0""HQ MJ]=#8 ]KL(?MA3WSA,AO/*=HQ] M-://RRUM\JG0@+"IF3JMCK\1SFSJH5(;E6KF<&4%B]@A=4Z&L(1=V3PVX,/V MVA+R8"Q50'C3-!!/Y#=A3^.NG2''H8XS.K<"+![<-9<-YC"<4NJ]O=LH-RC[ M10"3W<)#^\"#BS&'#:T>#\$\;L,\+HXJ6QAX:1';J]TAU^^76WW6\X-#P(_; MP(^+H\K;9&[VI5O3N4/NL]WC(<#';<#'Q3%E @:#RF3,K6/,#H'6416/^[_& M!B_.#\V$5QZKYL0W>Y'546+]M#ZZG90'EH/F]>K<]R,W\V5.8K& 4.?X% 8\ M51VE5C=:9N5IY*/46B;E92AX()1Y 7Y?2*FW-^8/Z@/M\;]02P,$% @ M+(/(5G+1A,4*!0 9!( !@ !X;"]W;W)KV3]+MV+,(C)(P-\'T68_1B2 MD+[V6K#U_F 1;+8B>=#N=W=X0SPBGG:/3-ZUBRA^$)&8!S0&C*Q[K0&\'2&4 M.*06SP%YY4?7($GEA=)OR2)V0F\58TY.DG>,UM MM198[;F@4>XL":(@SK[Q6SX11PXRCMH!Y0ZHZF"<<=!S!SU--"-+TQIC@?M= M1E\!2ZQEM.0BG9O46V83Q,EK] 23OP;23_1'\YDW_WLR'BS=,?"6\FOJSI8> MF-\!=["836;W'K@&3]X87'RY!'R+&>$@B,%R2_<T$5Z+;E\.6$'TNK_^0>TM+]4&7]2 ML)/\C2)_HREZ?^$^N[,G5YEDYFFEGLF.<^A#3;=LL]L^'..KS#1DVX79"9A9 M@)F-8"/*!:!KN1L=2+PGRM+-(IA'(W<P"S6Y$\^2V&\2;*[ A,6$X!'+E ^S+ M_2G@@N%D9P;D34H-5\^J78?23*\4Z)U&],EL-)^ZX&XQGX+Y MH[L8+"=R?:H@.[7A=4O7*XQU(P=:NAK1*1"=1L2YV!(&+D+*^:7<6US1:1QL1DWG$ C\]EZ52D2H6.O5G4AAA)!]YH5#5!*B1L*9N\RG M4$F&ZH-"K?J6%5:VT3GWGDOU@HWBT)?=DNR%8MF,,$;BU0\@%WC,0YQU8?Z_ MLD>1;9U0"[]>0S(,KR YMU9R:;X'TL>]LP^(_X(%E.LG=) MH \X"/%+2*YE&WS-<4@ )S*]0 3J[2H?Z(10MZMI--+\IL;"4LO@3\1L/GU< MN _NS)L\NTVU9-:T%)D059.I6UD(P3.OI%0T:#6V0F69 [GU N]AL%!#-BKC MKS8_GQ7M-.E2*V&S6 XQ#U;@0C;)8QJ&F'&PD]M[VDI?*I//PME'7TU9W!9 M"OF]"V9/TZ&L*]E9IZ4E>^RGI>RX9V/99"OA&X7XE^OLDZ*=_NDI!1DU"W): M9ZHL45U5H6[ :BNC,C,=(2M5 M%S6K[FC@/8#QY'DR=F=CKWE+RD.=5C"JM@<_L\I VT?_UR/"-NDQ!@W>%H"T47EE*5]#&'0SVB2=P:'U;-+,3CDA4J3G%T*((LLH^+IF*7\X:B# M.L\/KI*[I2H?] >'*WK'IDQ=KRZ%ONO7HRR2C.4RX3D0[/:H,T0?1H24#I7% MWPE[D%O7H SEAO.OY/I/LE#+HT[4 0MV2XM47?&'SVP3D%^.-^>IK/X'#QM; MV 'S0BJ>;9PU@BS)UW_IXR816P[(:W' &P?\6@>R<:@RUU\CJ\(ZH8H.#@5_ M **TUJ.5%U5N*F\=39*7KW&JA/XUT7YJ,+HXGUZ<3DZ&L_$).!Z>#L]'8S#] M/![/IJ 'KJU_'6P>-ZZ!Q-1YI"_KZZFI\/@/#Z53':0MG[>_9 M_ M0GM2YQ)(-B]$HA)F!>L;, @D8; 'UCGI#Y9(4(<4N$.:SWFA4ZUWY3G3Y:&# MZX*<*5LT@1%- ,-P/_6FE0\1P?;,AS7,T%W)/%="[_J 2LGLA1$:\WJQ41>F M$?;",+*#BVIPD1/:*N91V +Z"T214[0GSA?/"1I:H6&S(*+("'[T%XRVX76 M4!URTLM@DBN:WR5Z46_*LCV'V$2PO5]N<%JL ABWP&QH"KEYZH3=,KUX%D#1 M1^; 2,RE$<#]]6.UBMHP-@2%W Q5:=P>O^T5DE5UR:M5W[[:DL3O;Y7B[W5:+LQ-QR&W"16<^V*/I5$:PW89"@2;&__FTA,,S\@ MH=_R6AHF0VXJTQ!%H1]2MHK2+&F3A,5T\QG9K,8NCH*UR&B9#;BJKI4": MT)LD;=5>R"0IA!"!Q@HT[>( !RU2$3=C*^F MOX'Q7]>3V;_64)W4^]T=]QN-MAMT0[W83;V7XEG-2,7G7[64I0+HOKM@X!T\ M0!!HA0ODD@H&>D!KZRZ$<'TO 2V4;H23_]CB(\CY\]-$RG)/KD1'H:26=(LD MO[,F\@=:27O-_/Q N^EKA %V-Z0CGF4\M^?.W\D=J5+7EC[D=R,<=7$4[Z91 M_T*Z'O*Z'O2JE):W'NKJ9?]LN)5D0!48KD22U@=8E<\7FA=4/-7'4EW=/LL5 MJTXETR?KFS';8MW[[=/Z2U:[.6V$!WY!>"P627EN2E.=T&312W(PIZM$46O/ M@DUM@0)$C),@JQW&L*6;QHT(P6X1M7E,N=2Z>K$NLA(-XK\JF!PET1!-XCK M8GRSNC+52R^*HVB_P[3:18'7(G-((W.(6^9HQ5AD14H5>VZ)YCS3F\*R/.V_ M9R#ETG[<:"J9'O;"?=Q6LVCKT&07=J-WB%OOK(7$:PF*6/KS,(R]>!^MM8^/ MXA;=0QK=0UZC>QP +5+&"M!BYP*X==+LECR&,*N$CP.P>8YL;4!M=K8&M+_U M%:3\!'5&Q5V22Y"R6^T(#T(=LEA_U5G?*+ZJ/HS<<*5X5ETN&5TP41KHWV^Y M5FB;F_);2_UM;? _4$L#!!0 ( "R#R%:Q"QVA]P( ',* 8 >&PO M=V]R:W-H965T&ULK99];YLP$,:_BL6F:9.Z@'E)2)<@I6FF M=NK:J.FVOUVX!%3 S#9)NT\_&R@+"7FKEDC!AKO'O\F MS!O07,11"E.&>)XDA+U<0$Q70PUKKR?NHT4HU G=&V1D 3,0/[(IDS.]5@FB M!%(>T10QF ^U$3X?XR*AB/@9P8JOC9&R\DCIDYI")E6R)$BBM#R2YVHCUA*PO2/!K!+,8Q.L*L$JC)9D MA:U+(H@W8'2%F(J6:FI0[$V1+=U$J?H;9X+)JY',$][X[G9V=W-].7J87**+ MTZ8B'\BP?Z$*NKC1TOUKIHES) MW+'2*&,=9!EGR#1,JR5]O#_]&TEE.FY+UZ7GVKA9&S<+/>MTXVW>2C&[74S= M:^<\(SX,-7DS<6!+T+P/[W#7^-+F]#^)-7Q;M6]KG[HWE;<), 8!DK7E/YVA MC#"T)'$.;;9+K5ZAI9X(2\_HX(&^7'>S/Z8!:=>0]FF09=$ADHN0LN@/!&VP MI::S!N(8ZK/!>S"L@>S4R,Z;D"/.\W9<9XMCDW1?1 .R6T-VWP0IG^](P 8O-OZ]H(S3B0\4;"79 MP+%L;-N&O<'='FECI[]CH_':FQ7O!7^0;17/V4L3O147;T&8-K9<=[.*VP(M MM]OM;^ZROM81J';L.V&+*.4HAKG,-#H]*<'*#J><")H53<(C%;+E*(:A[ J! MJ0!Y?4ZI>)VHOJ/N,[V_4$L#!!0 ( "R#R%9-;S$4J0< !L[ 8 M>&PO=V]R:W-H965T&ULM9MKST;X=&W#^[CYT59 M?3 Y/UW19S9CY:?576%7+$DJ$J_'WPUTM"VS2MQ__XWNUXWG MC7FD!;O*DC_CJ%ROFUC;'*'YNBBS M99/,:[",T\TK_=)TQ%X"UGL22)- A 1B]R3H38(NEN#T)!A-@B$F]+7!;!), M(4'OJY+5)%AB&ZR>!+M)L(_M):=)<.K1W0Q'/9936M+STSQ[17D5S6G5FUH0 M=38?PCBMM#LK<_YMS//*\ZO;F]GMA^OIQ8,W1;,'_O+1NWF8H5N?']U>_1;> M?IAZ][.?D/?[I^N'O] 8?9I-T=LW[] ;%*?H89&M"YI&Q>FDY+6IF)-Y4_+E MIF325W*V7'+QSLIL_EF2?:7.OHBBN!(_3= =C:,QK\L57<4E322LJ9IUSTI^ MDK,(>31/X_19UAA/C7C@\T:QSK_V-L<_T)SY?+U<)[3DM;@M%RQ'O'OX9+2H M9HD7ACYDA:Q6@9IZDZ7C>9:6>9;PKY[1=5JRG!6E#!4>:Z=H)E]I6;V2K M-U)SC![.)4UH.F<%HB7ZE:8G2,<_(Z(1(A/0!F75J&H2?CDGNN6<3E[V==(- MPJ:#7:T=-I6$.8XEAGG=L#'1#,ULA_FR,,/$[:A $F6[=CLH[ ;IQ#3=78FM M?M:W_:P?U\]O^9E1+"@?]G=']?D&:[:ZDYBVY8C]KBR_NN2^+U9TSLY&7,8% MRU_8Z/S''["E_2([02%A'B3,AX0%D+ 0"-:2E[&5EZ&4UPU?5<7I/%LRF8:4 MN0.;>04)FQH===N&(YS<'F2)/B0L@(2%!_JBI0MSJPM3J0N^GN2KQ92O7/*< MI?.OJ,QI6O#K6K5.?>976?0VX9>R=S+5*,E#50,)FT+"/$B8;W;&<(R)90C7 M(<@BPT-%MG1C;75C*753+YL0GT_X/5FQ40O[4KV7SB]*UE"E6)WVN$1R$:*O M-(]0P>Z:=^EE4/34(-M]:B--<<69R)U^4-% 4KS0&D^*"T I85'#%=; M0'NV+58+B!8+%,4O<<3ZW%;KU8Y2=(U_JM/RSS6VU#G%F(Q"%TL2VNBF5Q+C$L71SD;MS8 ML U'$(,OB^-=))@W@:01$M-5 M,UHF&]I\-WMBO^/M_U<.=+C%?#=$Q7$XU7 M=0T&GXJ@UBLHS0>E!:"T$(K6UMG.?\5J [9O'T67:LLXZL3N&H+8(D34WU02 M1S3;T3NS=S=N[#B6@<436Q)''-L23VQ0\U/6"$=SW+Z5W: T'W<=9WZ[(TH)U#P]4&1;2CM7 M%*MMT6%;>VK88+ET#4BLZ8:XH 7U/$%I/B@M *6%AWJW_0.QG3=*U-XH_"Z? MNL"AHB(24P\[KF!$3$$+]22%$D,7%DT^:)D!*"UL:/LWH:;1)Y:=#TK4/NC_ MN^M'NCZE91JBU76EKN/0JQ(HS0.E^:"T )062@9+U_A?C\3V?K&J]E"'[.NI M48-G&DC:%)3F$9D=:SFBN0-:: !*"XG$*FXUH2V8G0=,U![P]V[ND:X%/':) M98H_25$7/U@6H 8P*,T'I06@M/#P:+7EL[-VB=K:/;RUIP8,GF5 ?V%+)&ZN MKIO"G8L'6J@/2@M :2'IFN_M#FG+9&^=@PM,Y @1JRH#0/E.:#T@)06@A%V^ALLO<07_78Z$>:/\=I M@1+VQ/':2?6<9;YY$G-S4&:K^KF^QZPLLV7]=L%HQ/(J@'__E&7EMX/J4<'M M\[#G_P)02P,$% @ +(/(5N7B.C/Q!@ R!P !@ !X;"]W;W)KJ9Q$ZD>N1W ['EE*S*3GDV0)XW'.0D+7KCD_+= M-1^?L)W,TH)>4[XXQG-V,-I#_:>7MRD=QNI7PS&)UMR1Q=4?ME><_4T MJ+6LTIP6(F4%X'1]VIO #U,4/HB#-M"FW#+V73_,5J<]3R.B&4VD M5D'4SSV=TBS3FA2.?_=*>_68NN-A^TG[16F\,N:6"#IEV;=T)3>GO5$/K.B: M[#)YPQX^T;U!)<"$9:+\#QXJV3#L@60G),OWG16"/"VJ7_)C[XB##DJ/O0/: M=T#M#GY'![SO@$M#*V2E6>=$DO$)9P^ :VFE33=*WY2]E35IH<.XD%Q]354_ M.9Y>S1=7GV?GDV5\#A9+]7,9SY<+<'4!II/%)W#Q^>K; O3!E\4Y>//[6_ [ M2 NPW+"=(,5*G RDPJ U#9+]>&?5>*AC/ PN62$W L3%BJZ.^P\4]MH ]&3 M&7(JG&SY>X"]=P!Y"%OP3'^^.W+ P;4_<:D/=_FS<=K%S=4EN+J.;R;+V?PC MF$R7LZ^SY2Q>V+Q6:?7M6O5:_B"V)*&G/;58!>7WM#?^XSM(B83FUF5GU'99]=8:Y'R/H12>#^T/XIE#HCX):Z A64,,* MG'&9K/Y1BTGE'RF 9"H!):Q(THR"HL:KW^NGA(@-V FZTE-=Y4M.9%K<50DG ME2FUSOK@->/W2LJ.'#6L'35TQF^Z(<4=%=IVDB1\5[I!4C60!"KMIL4]W?O1 MYH9*=W 0.NB-8"N^IE ?>=@>W["&'3IA+R1+O@,51L5O@I0,07_HMG4:AA:8 MV&_!-(4BY-E1CFJ4(R?*5(#?:A\+EA$.:$'YW>-SZWT_RB$XC-H&F#+](>RR MH"%:Z*2Q\97<4&[%A(WQ4-#&9,KT.Q81;)@/^F[N;U+G 6V4TQ2H:@ED*;E- MLTX*@4YB?2F'O):V8U\T= N=)#6>) G;:;)5^8ZF]T2M6*O-@1D'Z U]8PY9 MY")OV!6RANS@,VRGBE&NF-V532R<%HV&;;:PB/5A%':EE(;7H)O8RFGN@F?2 M5-_W1NWL;!-#*((=\!I"@VY&J^.\)8^D3,MJHC\5#OO49\=M\E@?#2/?:P.W MR,% 0>] WG >=)->'?KGEJ5);##PS#1MBJFJ)D(==0UJ*!"Y*7#^JR4I,BFN M#Y'?9D*;&(Y"W)&@44.&"+YH*S2;?XT7/[$50DZ.?6D>?"UMQTYH>!:Y>?9Z MQY.-JJY$R:P;5KR,*9D:?^VL&SR$%5=WE=T6OH%;GI]9+('2_G MU@N1F\P*_>BP%-PC-^6.#3S&W9 P%T3E)T&3O5U6 M]+YE,7@X:-U^=OU$L;G+53DI,D!;Q+ 7=E59 MN.%I_,Q^^.(BGE;GWO'?TT^3^<<8W$R6,:C:ZL.\/!"W8C=).(K:.QB+4!\% MJ,OC!^?-;IZ>QTM564UOXLDB!F_.XZKU5KVK#O G\_.J$?_U9?9U\EF?[EN- ML.R:D5EP6,14.3Y"L&.!XH:XL9NX.]&^ V?QQ]E\KI.K"L]U?#.[.K>:8)(W M#'%DE.H6.:PK^JYEV] R=M.RPX18O76##XQ3;Q@%%O V.82"]OGXX.!.**?\ MKKPJ$Z#&PO=V]R:W-H965T&UL MU5IK;]LX%OTK1'8QF $<)W'2!YJV@).F,YEI.T&==C_3$FUS*HDJ*27Q_OH] M]Y*4*,=QT\[NAP6"V);(R_L\]R&]O#7VBULIU8B[LJCN[.N7IFT*7:DK M*UQ;EM*NSU1A;E_M'>W%"Q_UK7W?$_D:B';HOEH;G]309XG M1"\SA>/_XM:O?7*R)[+6-:8,F\%!J2O_*>^"'I(-SP\?V# )&R;,MS^(N7PC M&_GZI36WPM)J4*,O+"KO!G.Z(J/,&HN[&ON:UV\N9N7,[IS]?%B=O'A>DHK7QXT.)H('&3AF#-_S.2! M8X[%>U,U*RQ+Y/IOL)#BM[5@<'X[$Y'!RO(/><:>'8Z9W M_+_6@S_F9/LQ%&(O7"TS]6H/,>24O5%[KW_ZQ]'3P],=0IQT0ISLHO[?$V+W M,1_^O+X01^*G?SR?'!V=BA\Z5;Q1+K.ZYM T"]&LE#AK'4YR3DSM4E8C<5EE M8_$S'3,Y/.5K_/WH]!>1F2IOL\8)H).51,2!A#7M+BNW?G0E:YD(N%+K1LE.L._O5J%H\] M%==@\Z.9*XLSSDU9RVJ]P>?UQ_-^^;0I9-7H3%Q9\Y?*^DWBG2YU ]X>.'1Z MU5'A)3/@Z4K92KP'!-HVR\*%'25%6U.6VB9Q8);4KR@E 4#;ML6$*^)-375K-TL&%=%YI. M(#$-^0=K2-E,0]J%MB4"03/:P,]% MT]I*@M,JQPVW:IL<&.<] -:T\.!L+4HSA^_\.^ B*K=4F 0Q>X?!CPLKO6:) MQLP4;= J<=Q0=8B0::O -T7K8$-GMWN6C8!3R@K5ZS:X&DA-HJ2&3!&HC]H1 M6Z(02P/=57P@.YS*8;3!Y1Y?4EAAJ=[K?+_+/%L,>":==G3ERL=.S^ L 8II MEL'-&"VOD#J9Y $#-I9F-8"[[ZVTE*R M"XI9*VD%(7(N?I<5[JW%\9&O+I%*D:Q2#&56]K.0UN:R((MZAALD ":/$7*E*(!A0O,<0&_ UAH^*#P88<70RS) ^B9[AJ=R7^/:( MW(RRE,]G(3:R>42 MOL7)8!OV]GSZZS.JL>FC")=A.4YYW/K7>)^XH2J+1 M"&83LPDEP2W='._RV& WX9M?Z1T3'E1T?84WQP/;$S>G$D9:*DJ\GA&9V1?X M-8+6!9XY;\-K206,/"NKH&'?%'F_&Y[-A/!E,NHRY*,8R:1;B05Z;?<#9W$I MV%82%0\H?[?V-B.'/9C]'YI -@!*6*3V0/[;^,$,N.^#G#[FD#AJ294K7,ZU M%+6Q'T@L3*5]AX4>7CTUJCI8@:2KU*VV(?34N]I'OQ]BT)A+ M'!WN_]$AQP;.;DF.G;^\]4OI6A\+EU7(1KH*14A:+35_QS98P6$&[X97_(5J M*"C8YRI2 (Z3(':K4MC\OHD// M"I*83H<7T9&WYQ$N@L'U($UL@6I.A;H42(3:Y!SR5*%%+([)'"4&8=P+.J(N/O&1\=:B\9*G%K!)GU+?=FI, M-@"+JEQ:2'UF\#% V+?3V5D'1$#@EG+8MJV?:O*9?HXR^]1MH^/W#R'?A8)B<7OCD_%X!F?Q,YG<#H<5GK&$ ^OD:/IR)X\GQ+R_2@TD/"3D*M6MY M)\[A4;H!6Z&- %\NSA"NK.%ZR%#%,RWIJ^_4XO'7%,G!>L$ \%R0)_MYT0=H M;RI\ST)8([,\D:LHDATX;7Y(-:P:BA\CH=D*7^TYR-=IG7TL>2JF.I&Y\5-[(HL5. M1MVV B"CU\7M)>" VL4$[VZ:[A856"3!D%H-RTB?)3N0HIQ70]/A]!XJNM, M&4.RK"TI?:EDRH+ 7-&C"2B:*!#4A?8$L(N^;$3; .\!(2B9#ZZG)<0N4 M2MW2$/*^)&*3S4U'%B.I#+A_V$JU'5HX42FE(<-U-^UL9^OY,^9$'86!J2BJQ ']/O M)@OM]*&.A]N58G7AWWIC(!V^*K7!T;O*> MTQZ4^N'N!/D6?R=/]H_\4&MVGER;A!+\GL2LDYU2:_)I1:'")I4/AN!0[ST> M$ 9\XPALT90[H5A ##5M]*B E-''*55VYC8@"IQDSL,'[7H+\V@9E94)QI%5 M'ZI#YJ(X+C7E \?2A&,+P:%'(A;;,&+)6SO0;LAU'6 FI+^I?\)I4= 4B@\? MRCX2-,2ALL7/F#D(_:@O3! 4#_>VQ2N/C[C"=@H$OL4%D8N:0CH"4\ > );^ M0I-]YHVRQ+VD<-L7NSPFS@@CL89&KY-($[#U5[M8_&63O],ISL.,Y_2GT\.Q2BY MARPL77C^(-[1PX3D4==E5;>-BUTR5YW@_FMKN &R/,_3\5%SL&\8P#+D4:$4 MAS 6=I#S,.,?AZ,FVXX:TB=J3II\>0C-)T_06YCC^' MZ<=4Q&QWB\RS>/D4&.]WT*53H[9P1RM_=$P)-A\]29:W?> M8:EY/G%M.5C7H:-FO'M()9/10]*5/N+S[Q-S&##;A7S J5)(RS7/&'S-3A?Z M CNX2L<>>W;?Q/I,VG)C$2/%1T*H&J2UW%9[0:,'=RUE+ H?,^#K.]1-4X6* M.)1'GN78A*=/)OR# (J=D7=(P0[9%UYNU#\BH'Y'^]CF1AF]OH4).O*QG8[' MIE#E6P;IT%_Q@UK7Z#(.N3:M[QX;)O0TRFMU80K4,]S,^='YBOKWW1/P090] MUDUZ#.T<( PQMG1#6WWC!0/GX?'I_\WGAEKBY7NJV=R7YNG^]V3C]_$/KP^) M)WQ\S]4MH!T7_E,<'4U&3TZ>)E?"/&+GE:?/1T]/GCUJTW0GCFZS0DHG?L(> MQ\^>/GKYCUZ_-HTL=JMG@Y._J9UXIMBNTP=QG+ );^_X_'58_F G3$-?S>N]<\>.=VIIBGB8R;KNWO" M)Y\DN8:)Q7OL=WRB6_+#D$2)Q$AXN8'FJ%+G^S1/E[6&_OXV(P6_\[&%#^X2 M'LW'Q@BIZ69R2)\WVK2.BSD_J!D\O]DAV;1:QSD.+L/JU"&R78G_T(JF R_P M8!65G_C>CV$^QR?BW_X$XS>=>I>WYP_Y%]\K1AEYB5@<*K)?;L%IAN0>3^40S)[TFE M-=%87,47##9>+N@?9I 1NS<">M*H[W(_BOW68YEO3UNWO2EZD+P"S.\!T8O. M1 S\^+>!NZO=N]13_PIQO]R_B/U>VB6Y=:$6V'HX?O9D3UC_ MFZ8Q)7]=*9DK2PMP?V%0/8] M$@ .S@ !@ !X;"]W;W)K6_E<* M/9[!+*"^#SN^ *?C(-Z!TT;;3GZFJBB)3JE*0[*ZK?WK]WOO\2JIU)F972"( M6Z4B^<[O7=3KQ][^X59:^^K[NNWN7NFUG;F.U:GC1NCV].#N[.5TKTQV]?V/NNT? MWQR='\4']V:Y\O3@].WKC5KJS]I_W7RR^'2:=FG,6G?.]%UE]>+-T;OSES]> MT?O\PF]&/[KB[XHXF??]'_3A0_/FZ(P(TJVN/>V@\,^#OM5M2QN!C'^&/8_2 MD;2P_#ON_C/S#E[FRNG;OOW=-'[UYNC%4=7HA1I:?]\__J(#/]>T7]VWCO]? M/Y% L>'%V8,%%6'#!=,M!3.5/RJNWKVW_ M6%EZ&[O1'\PJKP9QIB.E?/86WQJL\V_OW__V_M>O[S]7/]_??:QN[W[]G'F?1BM,Z[/NC['MQ8-_+ZF/?^96KWG>- M;L;K3T%C(O0B$OKCQ9,;OMO8D^KR;%9=G%U[_']G7/:]FMZ7 MG.BEVZA:OSF"ESAM'_31V[_]Y?SF[-435%\EJJ^>VOW_0/73^_YZ]^5]=5'] M[2\O+L[/7U7_VC'5EY6N;OOU1G5;7OG\E8.;U?W0>=,M*T &_/9!=X-V%3RP MAD58N*&#C?M5L&YM764<>U9#+ZG*86VK\?8: ER1_S_H:H'_'3NO-]6Z;W1; M^97RV/R?@X&0\<>FMWRFQM'>X)'O7U;G)]6'AIXLMEB@$P$PHIUO-MHRP'6U MKOIY:Y:*, -4+W867IY4/VFO+5Q1\U=XWCDE$+.QAM;OKKDZJ=ZU;5\K?VB) M[Y^B8E:IKJFN3ZI[7??+SOR/CF(]*54 >4.D(NITS$+;78)ZFY3%CX YX8UE MWS>.#CN%YLAT09N+Q$5UG52_0RG0TS2UI$R'O]S"D$(?<+X'BL]X#ZM;"*') M5J$L/0Q<%:^?3-K6H640(B**:;?5 +2QU0,^] ,HWVXTZ[#MN^4Q:8TX=MX. M(OQDD+/*='4[-&1!?M4[S;;[N#+U:GQH,E,-"\9)"H;Y73?'0?/T@,@_A@R/ M$3*T-:IEXS9!BYG4Q&NEW$'[HS.S-)LAF0J1;KJ!N2ST'!4:#V=H[,6!M:^HQLPERR)OL)K M#P8A899E6?<.F(!3!FMI!<24-_>]5VVB)KP[.-&4YL_'OC^F?RNUP>ZJ7L&Y M%R $#^ 5V?KBIDE0M*&0K>:F-7X+(AI#?DI>@/^\J^\+U' MT[:9;?$_IIP7FBZ8?X0IZ-OT#3T7(S.>_,8())D@!%K"R]6:(+6:8_LU2!,^ MYJW>U=^$Z67,W='+(SEQZ9.36MIW_D]040_T@W!@Q*I-X+'KK)/&Q)N3#V)S M*]NO%. ]H?ZT(Q" PB^'Y:I:(]TRFY9)7!L7\"FZ .D/A \0O(!9"61KM:WT M=^-$=5NFI>L]P024WH*=!E_"#CT'J* THEU_]\2F&Z"JS OTH0"X(UL2DL1C M-*O0:FQ$1QGL8Z.T05>)R2[&LI%1@;,@CZJV"&L@DG=96H%:UTL<+#5$.M8( MEHY-=0U)>49(!@)@M[*6[%J[K&,!S2D='HS8Q(]R;K"DJ&/"V0+9R':CM=E& M,$"8!?MNTW>,)4EJE+:3]0=6=2/@OQ\E%XROB=&T =R*,JW.RS$/JAWVHG"E M'I4M##J)F.1G"%'DNV84W(/C8:\4!<;0%DZ9JY8M5NJH!AH&!'DV.!095(&$ MK7@%A2=RW^0(HDU! F1/;0/3BA$&IH1BB\.Z!77Q0V!C3T@L.]BD:KY!3FL6 M2@TLPX9KU>@")P":''V:P48P#:@T@L?"'\%O;6P]K)VGSP"BA[Y]R @"FMA# MC-=KQV^O5+?4"?Y;0W\HN']&[5&G>BF M

#FHA5*I=F.AS@G'Z5P45JRW6KF52&T4 M3(6X<3@%91\I#.T[]49M1163GL .@-V7>,:Z)9LD!TK&V$010A$4R1OM CS M## D$TI; B.T>*GQIJ":1@E/H:4:-A3"F@=6)['*FL<9D/O:M @L?9>^*))R MH9G!A*1)BM/6H^2O-BNQS85PP5D3 LLXF&3'OH,J2$0'8D:K['*4>DP0Q=+I M:R0+E5:VW58)IR?1A;DK()X(8D\P61(%/\[ 9!9XM_.LX6C;DG?,->T=,Q42 MNB$E.\0DL?)T#'-28%1K8HH1L,)EZHN7'J+ZX>E4HX4LD3R=^4BH-L4K[.^G M[,Q^9358E2J<]-]4J*%-FXIHY@]_7,S$BJI'S0$1\6!P%$$I7^RTH$2))W"3 M/;Y,],O$W@$5A_K0A3C%.)@ /*$D:5L0)<<=9,L*DXI&2&W=CA/4I2E@&%L+DXP@8, "=9 5Q*W4XHZQ![ M$JS*$H22$,D4)CC*95+D''@@W 61A&A>A+^I4-K\)W8K-+/5IH0K@$%IA5.V M&F+W?ZMN4'9;79[ON03YE^:68;N=R2%<7GSG$@*.^^SZ[.0' JB6NXM8^.SF M^H5""U11[4G47+#W*AX4YJS:#A0MV/L7YTOM!1PN8"1E$*$9B,KM1 M!NG#MO ;ZL8@IE&ODD,)0S;ME6L9TFD,;TF!.7ODA*ZN]<8'=5*DT827!>62 M\2V".Y:P%ARJGX!#4H6$)S9D45ZG?9& ],[$H"/6C0JJ'H"OZ1TJ@X),,S6Q M?M+=$H[$9A??D31'Z@'D8EM>#V;(:>+Z(J>1QO'A&H:#04>*72+%1+Q*BN*. MPV&EO9)TJ11@#MH9V>;;B?A[8,NQLR4=88L_SUY"'3#=(:%J>L(-]QR('>79 MQ?7)V=@UKGXX.3_D&K_%?/AVE ^_"UPL2L/AW%F\)V-/F="3^09>CZ7MT2 # M$Q5R =$D&(T9B\A!LE-)66?5?/#L3HM0J$G&"DON:\.&D?!Y'(N+[?4"BX-G M[N+3?G'#:9.T 0K; B=S%DVJ\T9*=UR9(6.=2[K[($7URG*IK*A7RLD,GU-T MCD*U&NL%(E77@LXD0R"T<6&)FJ U%!1%>EKT6J+K;7,I$]L1XW9ED(F;3N#V M3\6A90>GJ,^DB/,H[C?,1A&0.=(K*2YR/HLT&LY.\2KE)=^&9KG.;LRZY):. M/*C(#QJ991>]:>6ZHJP"W5 1A&^4V4N ML8)3:\&#\XN3BS$>G)^?W#R)!T)- <-/]R=RYIU3M-+Z4\7,#:!1UBP5Z:$& M++YK>H:"O'&G'P\M@&IJ/W#'TNV$$9C\9$'\9$[/Z$%VW;G42-E&2 E5R&W8 ME3CDGF/NGN[T3;F@[JG(1)W-OC[;C]N@B1 81,3*)H'@3M,Z=U7[PFX'S,V"TJ8WN:GC(>T5YPW[X#SE>;#*$BB%&=E&: MVID*! #BP5F;375*6N]$IJ )"1W/ (B. X5>4<6S[?2M4 M.RKP6"2D0FG7I". 39Y:FTYBVL,.;!0'9JO9-Y59&@"Q+0E:1, -/4A"]K3% M&AI?"K(M> [*VH_8%>M/U0 $5+VE/;DWJ)=4;=!P<2/G1WAUXS2$/Y:SL)"/ MB$^192C;A2&W&$AP1)C#ARYFX\I%SJ(TR"(8(GE$B]2N:QCKJ:RR?LJ'.(EP M[#EYZ(M=W4!JU_3G3CF0LF NK_0X<.7IP6?.&O;L%?':Z3T+*EH^R=ND^2N= M3ADB-&0W5$\K]ANQT :G;V5*(CPU*8>D3O$*^* YY'$63J"]810=Q8K($GN@ M(]1Z$JKHZ@VWP7:KB5&7)_AL1JD0RGE(,XEHK-P02\:*;7IPP/&+FVM/9@'Y M5H64\U(I[)<'"_70VU0=D!J-7A0U@FJIWQ(T63;U"#,?(5$:A8FP3056L-+I5!7OEX=#YN*^F,]>/T: MYEL0F#P2-1CP4DOD[0I.8J+X].R'1D44S8W+8ZY@"B%+RA5;WGHTXT483TP= M& F5K8&BV@KY0XIU7-84-PM"=BD35>ZWM^8/]C'A*8ZC.:>^-'G,;-75JI5V1F]9])6HC M8\G+0D\#8J6,CGJTH8E4./J2@(08R)<2DDVE&6=0 ;MQMCJVN?3K1@1P@QMMTALC*M15Q EH(F$FZ/!@5E%EEP0#RE\ M1RQ4MO.-)H(&PF^7-455IVHEJ-2U'=BFQDUT%QKE!'7%*8+(12\E]]3@GU'J MLZ))P*&61W/@*C3;D9LJ'QBF3ZP!F0^E>5?NJ(G)FC#A@BI"!_U8?#<,+S3= M77L0BP\"GX]:C8J80=1U@6(:SW"G?,>T6">#566WL+A<4O8E<^HXNMDQ>](! MBGPY]<&*2BNU$$/K=T8/%VINV8QS*.=;$-D2(6L(!P5.12Z-K"W%\<%3;S9- M'21.%_I)V?ZT@;!5<:\LRC1=-I*)Z)-&6(:L(M],2SBWGQ;0*WZJE MVVZ;V'6U&F;#@!4SE$?*GN!"U.J6$3;R'R.]O"PKAL&8Z4@X3BC 'D>!=M]Q MB\L1JDLWB?+5J_@>$2-$QL&-5%L[\[?)&HN09F&@0:(Q)U$QE^0\K_8R.F6$ MLP)LT7:,+3I XVX*L2GR;(,UVY&RRCL$R?1+[=$+B05*YPC"5HI\*AAQ BO.VHGD?@]W[3[!L9_XR-6$?G1VKH7!/ MJ];2RLX;EQEHKL&D#AV-YBZ?_S7"FTA4K'Y_A!'SXMUXEG._D1&D1'!4\$^/ M,2WG)4V^?KM C(0HB9;S#=^ HH1W308>$@PX7RA6L@)# TI2^J2"D-A( M(X;RF@($@+&-IL$YEX-]G-V4U0AM*EV'HI*5FV8'=1V];RPUZN@28E$VC;#( M+P624_Y:].MC8IR=T_O."/[=Z/+:U.U!TO8L M2NYPLP$[+1-# ,FOA&OG5\6,M9&)S9\G$5._"CHM?M#%23'];(TD"*22WW:E MI^F7<>_D!V'Y=?E9W4=D&08B:?4"2Y&$7!])H1H_^'[#/P^;]QY9$O^YT@J! MBU[ ]XL>O(4/=$#ZO>#;_P502P,$% @ +(/(5DZ$ABT;!P *!, !@ M !X;"]W;W)KG7BSD9/]#%&0B#((* !H1?/K]W6#I"A?Y=G9JMTO-@$UNE\W^GCD MZ<;YNY K%<6WPMAPULEC7+_O]T.6JT*&GELKBU^6SA=8:?>^*17>:2-_OGI M6J[43,7/ZX\>JWZC9:$+98-V5GBU/.M,AN\O#DF>!;YHM0FM9T&>S)V[H\7U MXJPS($#*J"R2!HE_]VJJC"%%@/&UTMEI3-+!]G.M_1?V';[,95!39_ZE%S$_ MZ[SMB(5:RM+$3V[SFZK\.2)]F3.!_XI-DAV_ZXBL#-$5U6$@*+1-_^6W*@ZM M V\'SQP850=&C#L98I27,LKS4^\VPI,TM-$#N\JG 4Y;NI19]/A5XUP\GTYF MOW4%_157__Q\_67R^]7-[4Q,;B[%]C%Q5.UKXGQH.N& U&XQ?TC1O'QZQO_%]W M/.D]?%HO%='[L):9.NN@2H+R]ZIS_N-WPS>#DQ=0'S:H#U_2_A=0OZSWYA^W M5V(L?OSN[6@X/!&O,R.F,N1"VD5ZN/I:ZGMIE(U!W.9*3%VQEG8K,H<27B@? MA#1&& VQA=#V7H58L/!&QUPXKU?:2H/DCJ774:L@W%+$W"LEBI1+S@NC O1$ M["L1T1U(9EWZ+$=EBNC$7(F,P*@=F)Z81('TT:;)'P;]-VE+]"$Q'J;-KLB4 MC^AC0A:N)�_5"9V"BO*O2*W!"2T*DM>4LJ!)JLS1#7KI!ES%T* MG41L:PR/"XAA M8UQO= $AK!4/$;/%_2" \>!6^4)_$3U3'H\')]#+\G')QP],)@A*W@CQX M4&4(O-@BJ'6%]?8*&"98MT8F4!H!MIQKSE_<6N[,@G^&-8&R@8=8;9,%U65Q MWI">:M-[33 B' WPP)2AN372CR#''B*:GNHD>28!6+=N2H/+R\&6K\Z]OO() M_Z,820LQT\ 2OHX_28/@A AEVJ[8<\Z@H][H![8PZAW]\#!C'CJ%)*.#?SJY M&SQ04,?]3Z;Y\7Z:#WMOGTOSR;W41LZ-.@ ).IBA"8H957I*G4L\P']"L=0A M0[#0V#S@H6N0/_N84ICKK-HE[WY'LXZB_.),V#B>5(/QR?_=_P>W\.IC!NR8 M;EJ 9S>[OWJ':??TZBI@_''G?*2K0 O2?[1^F:(QHUW4R\\6L39[$D]L_2+U M#LF4BO5WV,<-_(H1&>K%%VG*AS.);_#]_^P*+DO%C< R(:!DH=:VB]SW8GC4 M'0P/6QO,>T8G+^Z,C]L:#KOOCH]K4V2#3#%7V3=6_X?)\;MW3V)NF_E/]ROU MMPXSO.TI$O%P./XKGD+#^/C-+KF>&&3=5HM4F0)50K_@N*#<$Y>B0^@[PZ;O MM+MVN4L^D[**BH /-]T'.P>!ND_8=9\3#G>/N(/$*_^I"=^(J&*YI $/PY/?MZ_5!0#:"7Z5>2>5?/[J]*[ M@W1C<]*.R9H(/WZ[)D)J$[6HY=>.2#U(F<=[T^JYDPGVWWOT',HU^=F0A;7R M.UX^^3CMB0_2@F/P53R1>M4;#GC"7#/1::JHF?B)5J7X5<%3U9M'0P39"1)H M>$0=C,3!EIBN>"5@DH-Y$LN$\4$8:L>HSH7ZEE$I "RR./T(:/9;3X#3=+7CYUX^H;T0?H5 M7;112QP%SSGJP#!_ETF+Z-;\+63N8G0%/^9*XN64!/#[TF%V50LRT'P<._\W M4$L#!!0 ( "R#R%;LV/D0P0, 'T( 9 >&PO=V]R:W-H965T*Z7=(BJ]KV_CV*4E M5L*-3(V:ON3&5L+3UA:QJRV*+#A5*D[&X^NX$E)'RWDXN[?+N6F\DAKO+;BF MJH0]KE&9PR*:1/W!@RQ*SP?QWB 263%6HGC0:+^2):36[7 M,[8/!E\E'MS)&EC)SICOO'F?+:(Q$T*%J6<$0?_VN$&E&(AH_.@PHR$D.YZN M>_2W03MIV0F'&Z.^R>0!-YMH,#RC?!B.;?F ):M"8T706KP)G)2 M\Z4\>DM?)?GYY6JS^?SET],C/&PWV_=?5^N_MO/8$S!_CM,.9-V")+\!F<)' MHWWI8*LSS'[VCXG0P"KI6:V3BX"KVHY@.KZ"9)Q,+^!-!Y73@#?]?RI;D-EY M$'X>MZX6*2XBJG^'=H_1\N6+R?7X[@+%V4!Q=@G]OU*\"'*>XJ?/3UN8PU3R(#?E0;< M"]6(\,I,#I[ >K,0]/6=@UQJH5,I%*1&$QK97E&I^Y(:!3WN'XVT4A?@A2[D M3A& 44IX)C*"31^S%D?J!]YQ6$-A+(,Y;YNTQ\%) MD([NH*;^Q4$,9#+/23/SI1T'VU,?Y3!GLLM\4*3E MAE'R;])\PC:^M(B<&NYER+T,J!-)-;2BD ]:)'! 2I>DV51HF5/-Z3[JA=R0 MT#-P'X1NZ!IA.ND.#\+!'Y/1#;5[*KZNE.G@S_[@"KC",,PS=1S!N>X3GXP$ MNOPB##YZRIR3=CH,I\-L7;4CY1_S=C!_%+8@I: P)]?QZ/6K"&P[[-J--W48 M,#OCJ=+"LJ3?!VC9@+[GA@J[VW" X1?'\F]02P,$% @ +(/(5H%H"P_' M P 1PH !D !X;"]W;W)K&ULW5;;L99RB$ R(:/S:809/2!>Y_;]%_][53+4_,X$R)OWEF5Z/@ M(H ,.A5FO0SIO0W(<$7J>IL>/Q.O^EQAJB^S:$VQJ7IF0IC@*:?8/Z&8/QYT]Q M/[HZ0;#;$.R>0O\8P=,0]W\MKJ$'GS]=)'%\!4>(,+'PI.P*J+E<--T%)C/X MD\F*-B1TXEK9 KM"6"J5K;D0-/2"R10-[4'!+&9 "+2!N7@!J[SKS M9^14*FVY7$(EN34M;UBC1CB++]H]FF$A_'8D]=E@IVA1I"G1;U+QTH8[)NFG M0-O?0J8HN514 J.ST@YF26 %R!!6@-*0\IU6A7&UDQ5FE9:$U6R,*T,@N%D M>+-2@M+XH^+.G4FHRLP7R8Q!8WQ^E;_3$#(@)Y-NND#YWFA"&Q9DGZFB)-)^ MBYS.C_H#D3D+,GS5-FMXW-.8H, MW)ARQ]/@TA?B3*FB'ZIQ%6[*RI6@/[/CRGQ%'QB02S]G4>?J?_-^5?16_;KP MH[AK8VE57#>WFAL:-[/#I4$L*G'@<4]'[:]Y?S685P*^\!QA4JC*S3Z]:=+^ MJ==^3_F^<:%9AB!9@;O,<0]>D.F=X@RZK>Y@L"::)D5+_=X1*]X;-^#N'^DZY\/CG1)Y_QCL;UC7=*/8*$L$\?I M=V7T6MWXL V#J'L@]^+XI/]%U#^0^U%3QEMG2;AWN%/CEOX*8V@?TV+6YWRC M;6Y)D_IRL'.OKUAW3"^Y-" PI]"H?=X+0-?7EEJPJO17!3HI:)7\YXIN>JB= M ]ESI>Q6< F:N^/X7U!+ P04 " L@\A6L^#&IM4% _#@ &0 'AL M+W=OP4"J* M^\+8<-I9Q%@>]?LA6ZA"AIXKE<7*S/E"1GSZ>3^47LF<-Q6F/QH,#OJ%U+9S M=L)S-_[LQ%71:*MNO A544B_/E?&K4X[PTXS<:OGBT@3_;.34L[5G8I_E3<> M7_U62ZX+98-V5G@U.^U,AD?G>R3/ G]KM0I;8T%,ILY]IX_/^6EG0("445DD M#1)_2W6AC"%%@/&CUMEI3=+&[7&C_9*Y@\M4!G7AS#\ZCXO3SF%'Y&HF*Q-O MW>J3JOGLD[[,F<"_8I5D1^..R*H075%O!H)"V_0O[VL_;&TX'#RS851O&#'N M9(A1OI=1GIUXMQ*>I*&-!DR5=P.3 MJX\?OGRX^GIWTH_031+]K-9SGO2,GM$S%E^/R'6"UTMA#J/B9;M$7=E]I++N <-H6; M)8B[UJ(37^1:C(><,'N,$S)55NN9.H]0$%MH4SUQ;2'O8>T@9=A#YM"H/#&W MT$L+=RIST,A>8'O;?'876S[UYEVP/?'U*96%R_5,UWB;/>UJ=%V!.*%S:K/N M@AN[GF4UHPV1UC.BV+H>-BKB<;U4WE)_$I?:2LM"M^3.-PV%Z\O;%G9IJB"& MO8/?V8LRIUB0 #IWEJD0G&)_E6 )CK)M7>!\VJX@N MEG*L @/_C!L^N150^N[&]PO9AL2H"%Y,H(T;"T87D4S;-K:S:=C;;W-8/J8 M':$J2^=CT^[X[H)H*#8UN;FH(:M['2)7"?N9T@=1\!"O\S C3W@Y->H!F 1O M ^DQ#\#Z4]J*(E?WU+%8@?BKP]YA@_UAJI-;2J/R>=W!"OG-^:W@R1!4Y.0( MW)5XXV;37$VA\AP_Q:2?]6V73<8DE)]*QZ[0>"@F#1\B\U MWM1>_F,9,@_BO"G@7ZG,[DYK9N\TYS2X:%@4I:.8467FWV %P01KR\4Y5;"V M.=A0?/*>HIDKW+G@N72A)]\4J!+]DR>Z6VVM*[BELM\\3AM.^I4R2_6VH'LJ M8BE#56,JE=<.SIRDZJJKD?7OUL##_D(%P6F"&&N$5&U.WHV#G[FQ;$>I]]3- ML;]UJ4=ES_GI0H6 FDWW^W:V?1U-TJ-@(YZ>5KCIS'&@H,QGV#KHO=OO")^> M*^DCNI*?"%,7$6T>+O#"4YX$L#YS+C8?9*!],Y[]"U!+ P04 " L@\A6 M?:+<:M@) !=&@ &0 'AL+W=O30NIR='O-WSZZVVM;!Z-+]=$)7Q>%=-M7RMC- MS6@V:C]\TJMUH ^3V^M*KM1G%7ZM/CJ\33HNF2Y4Z;4MA5/YS>CE[,6K)>WG M#?_2:N,'SX(L2:S]2B]OLYO1E!121J6!.$C\NU.OE3'$"&K\T? <=2*)-WX8$%Q.'R"8-P1SUCL*8BU_DD'>7CN[$8YV@QL]L*E, M#>5T28?R.3BL:M"%V] E_JD0HUY\62OQVA:5++>\Z^+*"Q.7I%.BK<5/*E5% L+Y M=#$;"UEF(E4N !J$^J/6%9(YB-JK3"1;$'4:"FR@5ZC",%-"J,V%#AZ*E#ZX M.J8PG0$4XJ_!(:']J?AL"]X,>J\&8AIK"KD5";Y#K0PQ2I(29V4&)>7**45[ M/7(NK(%+2L_9U51FM'*0/W"S6THO20F)03DLC MEJVFAU[796KJ# ]>KTH-MTL(DH6M23TXA39 -A#,CP&&6%Q;HS.Y945QG!"D M?"J-)&4A[=>2;&S='Z6,=YT.TL3H%?3-1+"B@JLJ1YH%G(Z\I_VZ]+4C*^)I M$LH'%SBZ#OAUW/ M"T>P?6+SDYHT]5Z1:"B$1YMJYA(W&NBGC0ZZ22&G4NN:D"*W)O ]^2764GB" M/G8FPZ:4@XU3A@M)1HG$84_H@I4[:6J.D+P.-20 [G51%PV3SC&P%Q%=((8% M9RFQ0&ZBS'6Z(@*+4_'2\YHN$*VIAL=(LJ8@A1:*]B!"R6>PH,!IML%Y'#?& M$%FB3K=)[(_N19@ZWH($2*P#*)*K67+CDD-G0'RK#FU^S"6M$V+F';&Z3R0* M<5MQZE+PW"-N,XH.O#2F0W1_1INU*H$XY!\T-]Z29[9=_@SS9J.- 3_E4@TZ M7R,JHYQ3\>E8, 6!LJ9-5]QV"C8]V1Y>HYS-X8[%NS# MA\OV R6^)XL1]69[&,KDCI($-["Q$Z7$#_G@)*M(!86"D##@D1@ZDB^-D A* M1 ;P5PC'V @H:@2.V8N'>6/B]'2Y:^+T^TWLDN#_(IUB++? ( YB^ H>1%>< MU>8[TK35\'B!967H<(#V?_8@ O3,R+T9UQY&>#J1/6SQ)'W7S!?<#$P75]_\ M_V\E'7=LI-)>&"[%4V0O AZUXYEX(F;C^7))"V<';&;CQ=F4ELZ/+$TOGM/2 MQ<'2?'%&"Y>'"[,%N1NIER/P#I8O9V?BBR50V?/R_L;E^/GB'$V0]X1[=6#7 M@B-JPL'>Q70A/NX#S3?YGR\6D7]:.R[$E76,,D\;Z.'#E&GJ:CRVZ?+LB)>6 MSV?4%#S*I^S7!P6HY_9$+,:SY;Q[IW)\$''' B;V AN>6J@& P4 [D,DI>PX M6,^T3PE=(J1OP/GLO$T_(EB<7OQM/XT>T>D0!O]76EU^2RM*;KE"#[CBXM1@ M)G2RW],AM,VDND_7LEPI3O>XOVFJJ T36>W:DO87D&JQCU3SQY"JK4_2>!L+ M=-^R$KU-T[JB[@6=&5(LEVG;SM3<*_HU O"$G>QB >\[Y%T)J8$;T*3&8QS0 MM6>+/4U5I<9:HK"6D 2.%,Z$9,9PX\%$U'5LE+GKG,.>] U09E;%CJ7)"N+6 ME_6J=O"_CX6*^ZV*^2N_4JJ8Q)F#WGJOSMH1.?N M0<_[&K5_T$<[C/)8C\K]<>RP$SN;-%6GP=J#@+@XV X>X4R%>7^ M'>F+446!Y]M8PDK:9,"K=IX1-:D]N@T?]U.:M'XOY.\\N]C?8=_><-+,;8Y" MV$4K;,)4&$@4!A2B'&B46"YH8]J8RKJ)".U]W4Z31@5X@#,<+6JFP[CI!J' MGC5CZY1 M2PH8B$7LJH$S00;5 ,[^>&WGX"#,C.Q@ 4?1 SU +S.J_= 86)<>Y^,!^UEW M",,+F[[LC>/]$0,Q9J4FP(?AVXP[LH(=]RP=T8D"=R:2B'N/*8SHX,&>^7!XUD[[KWR-05!'GS?242QM=ZKT "I;;V?QOIBA=,P=!?FSO=NARYS0 MV@:@ZZ.Q.>46C_9OB+)8G1N8P-L@ [LP'Y.KB!TKU!8I&L?BE1JQ;OSEU7 M->[B 2&ULI511;]HP$/XKIU3J4T5"H!UJ 0D8ZY!66K7=]FR2"['JV)EMH/WW MNW,@8U*+)NV%V'?W??>=N;OASM@75R)Z>*V4=J.H]+Z^CF.7E5@)US$U:O(4 MQE;"T]6N8U=;%'D 52I.D^0JKH34T7@8; ]V/#0;KZ3&!PMN4U7"ODU1F=TH MZD8'PZ-/UBZQ2U++BO43AH-%HM1-.E>3_L<'P)^2-RY MHS-P)2MC7OBRR$=1PH)08>:90=!GBS-4BHE(QJ\]9]2F9.#Q^<#^)=1.M:R$ MPYE1/V7NRU$TB"#'0FR4?S2[K[BOYY+Y,J-<^(5=$YLF$60;YTVU!Y."2NKF M*U[W[W $&'P$2/> -.AN$@65GX47XZ$U.[ <36Q\"*4&-(F3FO^4)V_)*PGG MQ]_FMY-O,+M?/B^6M_/E;#%_&L:>B-D=9WN2:4.2?D#2@SNC?>E@KG/,_\;' M)*A5E1Y43=.3A)/:=J"77$":I+T3?+VVRE[@Z_U?E0U)_WT2'H]K5XL,1Q'U MOT.[Q6A\?M:]2FY.2.RW$ONGV/]5XFF2Y?WS' 9P?C9(N]T;>(<3%AI\B:"Y MI15D9F,=@BE@M7%$YMQ%<,],50O]1IWV!J78(M 2R*5>0Z:$K!P(G8/"-3'4 MUF2(['.= [FII>:1(]I*:)IMFF)_$:8G![)+W6R3,)9;(958*03A"2P=>!KZ MH,*2S;)4&@1KB>(X^U%>BB4LA^)K3=-.2;QI9 L2X-%*$BKR+7*M6!04PS)8 M:F:H937KHI,S2N:"\8740F<,E.JMCD[X;&3WKLM$!_-985V M';:/XT?7OAG1UMHNN$DSUW_"F^UX)^Q::D>/7A TZ7RZC, V&Z>Y>%.'*5\9 M3SLC'$M:TF@Y@/R%,?YPX03MVA__!E!+ P04 " L@\A610Z+3\D* "# M(P &0 'AL+W=OVTF$F09&8_TQ)MLY%$K4C%<7]][R4IF7)LKU/LM@7Z(;%- MD9?W>7@N[8N5*)_EDC%%7K,TEY>=I5+%QUY/QDN64>F)@N7P9"[*C"KX6"YZ MLB@93?2B+.V%OC_L993GG:L+/79?7EV(2J4\9_Q^BNS]@Q07BQ2J?^3E9D;#CHDKJ02F5T, M&F0\-Z_TU?K!63#V]RP([8)0ZVTVTEI^HHI>791B14J<#=+PC395KP;E>(Y! M>50E/.6P3ET]/MW=_/WL>OIX^XGWU/="J42VL5;L.#PJ<%J5'(K]+0C^,#LB+&E,C+2_Z M TPUDOJ[)6&A?)0%C=EE!RI!LO*%=:Y^_BD8^N<'].PW>O8/27^7G@K1N220H/'S M4J0)*R6A15&*%Y;HF301A2X\,=>?409YQ.GD/J4Y.<%!E!/ZY_H9CNK/P?EI ME]#ENI6&09S->Z$0 NPJ6L:!XSG%VR"A(4 M4NMIQ\J9H&6"8A-> FX(,"JC:_A[9F;/,X2 A- 5S)-$2]I8I^U2 M;/>0P. MZ3IBT)YGMB8L*U*Q9DP:!3;K2E:D$*K$B@N"_D/A>+.7WH6]%J OV(^A3]!ZG M%2 .O&FKXI&I,1@C:&>17.2_533E'))G8",QDOC?VU$(N(*3C9EM*9D!7%2#-XM M2L;P 9DQM6(L=R.[*0F4PQC8EZ9M5>VCQ$E,Q\MD2<$V]LK*F(/C"E ?O%S M1)W:A"J2,BH58>BB.CW@K'X&G >Z&8\9/F3FU M&9[:;]Q%,2#&L[& ,I:%R!..0YKN(!*^L!+8FYM&F:ARA?4$R84^U'D^0_Y' M3JPK=*V*2D)*R]./&A'\Z/Q_YO77VKH_2N#4>NG=&[R9^,"0:F,(]LG^/1UN M:P"H']Q !I20,UCT]=@O6*OD$U9N/?1H0G>/L$&>H&+)B2[/4_*9\I+\T !Q M5RFIJ,Z1+OG,9F6%"1J8?(+7?M]O!'X@_<@;]\G ZP^=P<#W ,&U H[=@;LN MFGC]T='.KPW>"#N)_%-WQ[$7A$>+@VY@SKBKVTG@2HO J.!H:2V'M'[8%M>-1V#M8,O:T<:9>)+'< 0M:J1B-;(#T@*# M.'N!PQ^)@$5B."F!5,$*R?9A_7LPUQ[S;R!VCF6V?0XW[,)HV-5'XG\8=H]& MLV.A:@?Z;*&0 SG?FH#L0IR)FRTC+QPUR-)"%(T /TQ83T8#MYZ'WC"LBU[S MTMUE/_"&XY8NV]47CEN:C(Y'G/IUK_00NK1)2WI_T,IF)12 .P>FJR MR)S4P'-2J@Q#Q[QK,RS6@&=2E7CL')7%9 5<_P,4%0&VGH(@[[^A1JC5R(6" MKF&1(R_7!!0UH0N@V@M,L!:_M=RE9K=[BEE6LW] 6Z=;O0V0;5-3*&.VP:6M MI\!PE:&AMAOB^1GL> :;L'7=#;'7F+&D[J<;C;<9/-*_"A"@V5EM1V.V)A\B M+ZJ#H76# ;\>Z"+7+9B^(4O7'I",IKDQQ/%[SL$K3VXS8GCJ=AL$E!-G@F< M@#ABTRN+*Y0+A#!C"%%[V_8=S3FCX(0D]+@](EXA!N M#NN9;N3V,&_92 4DU5>;2.T7@J:VIXB7G"'U!P5Z8 4V DA[8#87B9DCJ>(2 M^TB/W"( [W2%[:EEW0OIE#U#W@2B?_P^%W:5#P%_X&NJ!4EBI8+J!C0>;AU&>,ZN:O# BO< M%O/=2MP>H44P.*A&R7*VTB4(;\K%^OU*/!RAQ*@[.*"#XMF1>SWMWJH_Z$8' MY&.=!#!C6,\P>]FDLP"+JZA<0GF]\ 1R29($;QL24E"NY]JU&#<:0LCUUKIMVC+QKBPO9 M>X+QY[.UG1O_OY"WII,ZMF^,VMV?CWW+U";39-A^-!R1+Q#V5K?7XG-1@"W$ MCBZN/VDUA=!I! ?;LR@,VV+#P;N]?Z@1"DL==O]H**Q8OB6 #Y_"=LT')0+&2+\[YEDM8H315=&$77QH9D M-5ZNG9FS5V5MJ^].W942#B+84/XN9+W)AJV[7'.774ES#%ZG-'X^>XR7(D44 M-K>0R$[Q<282EK;U &!#>F5MPXPJ\-ZY=8G9L-SF-A.21E;XU0IG!LGU)7O" M0("YHJ3@3RI%KB'?9%D%J4162PZ0B^ZR]FM3C!O!_)3/M4U $]+-(=4R'R@Q ME\]G<_0KM"\,ZX*4VI/Z/I]A$G,\-8%JP^XFC)J2ZDDFZY#Z[2N_.B_-,:AO MQ6?X!4!;M'$XSMN<*;:!TP@U;HHDDK='(%8<^T/3IW1&4^Y MXDS69[]:\E*A.H6 Z?I$I6O(6,Q:V(OIID,[-=<,7I]Q#M=%&\Q9"3MB&4!+ M8 UYDX76!"NY=I"'B.U\CV*811W0Y*U+=3G&-(VKIL1FC(S'WN O#=W>W03: MIY;;69)Q8I((4FK@-P+:1.3492+YAC-ISQO]<>QVPW0>+ 52R^WB<[XPTF&1 MNQ4V0:]SYPT?PO+J(D"[_856IZ8:&.M4[X@7"QB3%G-TNZ,80=E60VW+TY^K MOZ:_)O,=@;N@R".[OGGO.3^,R(#[ZY]_H%C(#_,;B6:T^87)U/RP8C/=_#SE M*V0#!QQ,V1R6^MYHT#'M9OU!B4+_S&(FE!*9?KMD-&$E3H#G&PO=V]R:W-H965T MQ.0@HRL_M5 M[I:Q0G?+D=0VGE^_YUY)W6UCF&2R7Z ?NE?GOLZ]:I\LC7UP,Z6\>"R+RIWV M9M[/W^[NNFRF2NGZ9JXJO)D:6TJ/6WN_Z^96R9R%RF)W-!@<[)925[VS$W[V MR9Z=F-H7NE*?K'!U64J[>J<*LSSM#7OIP:V^GWEZL'MV,I?WZD[YW^>?+.YV M&RVY+E7EM*F$5=/3WOGP[;L]6L\+_M!JZ3K7@BR9&/- -]?Y:6] @%2A,D\: M)/XMU(4J"E($&%^CSEZS)0EVKY/V]VP[;)E(IRY,\1^=^]EI[[ G%O MS?*?*MJS3_HR4SC^*Y9A[7#<$UGMO"FC,!"4N@K_Y6/T0T?@+FPY7X?/[?J[N3 M70^-]'PWB]+O@O3H&>FQ^& J/W/BJLI5OBZ_"R0-G%&"\V[THL+SN>V+\6!' MC :C\0OZQHUY8]8W_IOF!>F][=)4$&_=7&;JM(>,=\HN5._LYY^&!X/C%[#M M-=CV7M+^E]A>EOYX\_E*# ?BYY\.1\/AL>AJ$]=59DHE/LM' MTCY3E2LK"Q*;&RN]ZH+B>S,5H^$_A#>\/KZ=* #MKE4M]+FRVN1.2"CG<'>47-_&:)090KG3\;!]>(/,L90ZI:R@I=&7(;$HTSM8@Q,VM0WW#Y\\V]]O M+J]?BNOAT?Y:7$=OQD]T)8NW),@/U.X2-HK*>+08C[*115]\A'$W<(3D#/K- M."=^(1"CP?''F]_X:GC\J[B0UJXF,GN :=!'66"LIS(%OHGTC$3F"V6!D+C( ME#H3&@24 2I2B-Y?W/QQ??EZ>"0RJYV&9^GA[_V[/BJCND<>HX0I5_*PVEA3 MR86V-5:>ZWP')%=H-=UA>Z[2'G-D;X&8 N M010.KN7J _Y"+@7FAP_29C,Q>L,N&_11ZMI1LU:OK:SNR3>%NM>N8'YE)>2% M4ME[9,VJ-=EY7=9%399D#YA[PJ8(8U%39!QB&*BR"K4QP:SU &48A9!V'O)( MPWN8427.9 <%_2L6F]91A:@8#:'L!J2V7B+\)!N*M0D QC;>C^Y3,/K<*PA* M-H.EJHU6\E^+7@JO2B)NN\*<1[;P]!8%"EUJ'_L/GC+?U[Y&RM4>G>G/X#HL MSA0AK 02+)2;5:^5\W)2:(PZM$W6I%N@=T[V)%8@20$3IDXQ\HF5DM8%*U@A MDN1>3PH59!I%<)JRVPV+Z;;>+7/4'8*9D=*FUFBO6&/_DE5-?A@/0\KLB.5, M(X4X->9S:QXU55FQ$J_&1_U]3'=% ?O[W=:,.HR[LP2JELAM"F1!H9[D,^$(_Q !7HB-1N6#T<]=\DJT6.&DTS@'89Y)YWY;!AH/=A M*3UKC&-ZKD0]SR5UT.0L>)V=V=GH+XGQ.+CW]D[,($Z\2(-+H7QD(*L6=/#@ M'.@T\\[66X88WBET'N]AD&Y-&M(5IKI0KN')! YM"FU@ ML:1*A&8LJ[-V 'PRRG6L>VC*+I%EB.Y3Y1 " 56I61J7 M4CQ4/OG(=B.5=R+5M>Z9C'^UWS],*=ZM?TP,%#6N8$F>7F@F2D)15XG'6GQB M;IP.Q!EWZNPQZN^UY-$9_6]C09]S4+:T_(VR&@?7360A>HK@(WQ2:SK#F\H#+JDSI!<>?T& X9ZI9B_P6O[IM M5'+0'S540LI>#??[X];S= 11_ &@6 6"W8*GP=KQ;S.((T,G*D).9YM$#C6. M-UQ:P 3'.L4FY292H!-*KAQFGPGE[,0LU$8\0ZIV^P-F$%=/J$ZY MW<7\)@^X)]-Z7 MZ_B!!7V\@R6PU7J\/=U$6>#4"?D%4TZ,8OIJ<[ M-=@POP\PL ,?'/N;[J@PL6%85+8+9FU*EJ6NXDYT_*Q1]C8P))4?Q;'3@5)C M(/@VG3,W.M_1#K1F:NY9@0-%4!#0+CBWPZM8NXE4HJ=W6C=SS*(HQX[\0.,X MSV68I-J#+!Z:*LX:P5;*$TRHJTX9)YHW4F.';3?8-QX: MPHB4^IJ72C1LU55PN4 !-%F!-Q66@Y0??VH=') MBD(4V\@#_(KTP*L@&)("LHYW4V&WIH6Q%/FMF?VXX[!GTN(.G8>DHJ,&O>_N MT&E>648,$2VN71HJ(JQ2(:WRXW5&E>$;16+$2*\MK9K:?A.M N"57.NOU%P4 M?2;-#*KE3X7,TLRPU+ES8A89.FRW$->_S;1F-IN%_D3KIX#H0S=,2B*;I+5$ MREEFZU#8/#>N./]U\)7-6Y4DE_,' .10\%1_:YM:3^69I"P&!/K:'(97-^OB M1IH@%&ZVE[T9;.X]83BI.R MTV1X%L"8&AH^DLTP)11--=(](=-@&OWX.DS)24$!"1AX^1TS;G/X?V)ODP64 M/?R](T!$URJ85[?T-S=C=HKG/?I8$*\[>FF"9+I],LIL=/5!Q[/?]S&#F&T- M2J2U'P)S\-U@1BGB](4H32\MA;3'9A>I('C,)K@1TZ:3GZ$([AIL%- C+:A$ MVJ] Z\4>>PG8N48792F4X@75T_O"+-%.P@\^9&V7JI?Q'!2;,^<#LS%WW[9W MH/A#?G_/<8LL#U[[@01.2'.=1Z2!Y3< IJ$O?/*A0FX^>6W[MK_;^8F%O^G0 M#TD4"80T_-K2/&U^JSH//]&TR\,/71^DQ0',B4)-(3KHO]GO"1M^/ HWWLSY M!YN)\=Z4?#E3.+I:6H#W4V-\NJ$-FE_PSOX'4$L#!!0 ( "R#R%;0K ^T M70, #L) 9 >&PO=V]R:W-H965TG^_5%RXJ9=ECO<^L46 M)?+10Y$B-=M(]: K1 -/32WTW*N,:<^"0&<5-DR/9(N"5@JI&F9(5&6@6X4L M=T9-'<1A. D:QH6WF+FY&[68R<[47."- MTU#5,_EEC+S=R+O-W$+2\K8R>" MQ:QE)=ZA^;.]420% TK.&Q2:2P$*B[EW$9TM4ZOO%/[BN-%[8[">K*5\L,+7 M?.Z%EA#6F!F+P.CWB)=8UQ:(:/R]Q?2&+:WA_GB'_H?SG7Q9,XV7LO[.&B_[.G[3GL&4S# M7QC$6X/8\>XWWJUE@"-FN!]D69=FCQ+] 2>!*"E-I6(D<\Y?V 3$::,4[ M6LOX*.!%JT:0A#[$89PAC%7I SW;(,YQ[= (WJ$;W% MAW?1)#P_PC$=.*;'T/\SQW]!^7:_@BB"#^^F<12=PR%46#+-,V BAYS7G<$< M!-U_+C+9(+1(E[9B"H$ULA-&@QW34NLTF89"UG29-7QT:IH,P52RTP2H 9\R M;$T_AR"DP4]GCDV8G+_9_[Y2B"^2#BAE>.URYK6RS2'[B8>9ZV=O=U/O(?:C M\'1//O'3Z?C-&']W]<&>WR,J*G<@NF9-)RT+V)XBE4QMZ BY*(?HK5V@7F-% MB9]&R<_3J7\:A8.X*@HJ?6X#([,'8!NF*#X?HT\' ']&F\:_R7V76@?8C]/) M0?:G\9N=]_6AA/Z_8,L787@/X2B:O!#'S\?^^97;Q[5M-*B]N+MB7%(W?5+C MJZ1V26QOK$UDW^EO#H=%[\4E1X.*V@8IV1;8QX3:H$LL=U?K+D>'ABY=G#$3 MA@^:??+(UC91366 ]K)19@17E@I+9M#:3,>1/TU21W$Z.?$3&N^2H[#5@_SJ ML7QJYKI%UX[K'Z-#E3/8:V@-JM*U;;LYE:.^MPVSP\O@HF^(S^K]L^**J9(3 M\1H+,@U')V,/5-^J>\'(UK7'M334;-VPHM<-*JM ZX6D$K85[ ;#>VGQ#U!+ M P04 " L@\A6VB"@:<,# !R" &0 'AL+W=O" M:5]66-+-5JJ"&=JJ+-"50I8ZI4($<1AV@X+QTAL/W=E2C8>R-H*7N%2@ZZ)@ MZO" 0NY&7N2=#E8\RXT]",;#BF6X1O.I6BK:!6>4E!=8:BY+4+@=>9/H_J%C MY9W 9XX[?;$&Z\E&RE>[F:JTR9R MO+1)61M%MYSTS'@Z63_!;/YY/GM\F:UA\C*#Z>+Y>?$"ZX^+Z>^P>EQ^6DV? M)NO']3 P9-"J!Z8@F./*H7C>H-O?'[=U$W'%RA MWCE3[UQ#_Z_4KX._+#X^0A3#^W?].(H&\"^,P:($2A,7$!WSU(*)RECIL'H# M#1O)5 IR"RE75)M2:2JC1#"%*3 J]*RF-7RIF3*HQ $2IG.2?>,IEBGP$DR. MP I9E\:BW(1^? L54J?)"<,>);(HJ.*I>)+7%NQRGN2P8QHJQM/F-)=WHZ^Y:SD2 M-W'/C[Z3Z_OAW:4G0WLE"<.]S^@7P'W"*;Z&[6TP MCK&Z#"S;TLN%&298;&C1CEK'_- @^6&ULM59M<]HX$/XK M.^ZDGQC\1@.7 #.$R\VU,WF9A/8^"WO!:F7))\E0_OVM9..$-C!-K_UB2_+N ML\^^63O>*OW%%(@6OI9"FDE06%M=A*')"BR9Z:L*)7U9*5TR2UN]#DVED>5> MJ11A$D7G8?K/?I?WG?R9VF 2C M ')S;#K6:@O:21.:6WA7O3:1X](EY=%J^LI)ST[G'Q\7=S?7 M#S"_NYU?WRX>9HOW=[>/X] 2N!,)LQ;HJ@%*C@"E<*.D+0Q- _O3YP>#\VO\_.'W4R>W%3R6 EV-EYVC_-ZMM0S4_Q<75SR.: S/ G4O5=5%ZZ)<)G5S@97?M!Q?UX*:G- M;=Z==K/0K!D!GL2;0>J&Z367!@2N2#7J#]\%H)OAI-E85?F!8*DL>>B7!BHZ;^?7[D;9E.50\,QT@V9=(/"3/^<[].#I? M*_VM6PAAR/>F;KN+R<*8Y=OIM"L7HN'=J5J*%CLSI1MNL-3S:;?4@E?N4E-/ M61"DTX;+=G)Y[FC7^O)7Y MDL_%K3"_+:\U5M.>2R4;T792M42+V<7D7?CV?6S/NP/_D6+=#=Z)U>1>J6]V M\:FZF 06D*A%:2P'CL>#^"#JVC("C-^W/">]2'MQ^+[C_B^G.W2YYYWXH.K_ MRLHL+B;YA%1BQE>UN5'K?XNM/HGE5ZJZG,VQ.%RU1G5;"\#02/;S9-_ MW]IA<"$/GKG MA>8P[T1Y%#^R@V_/-=J3;0]#6[VQ:GJ;@.<;*U3;HW&KL0] MNVDI4 MA_>G@--C8CM,[]E1AN^6^I1$ 24L8-$1?E&O8^3X1?]$QPV+>)R%38VWW9*7 MXF*"V.^$?A"3RU]^"M/@[ C N <8'^/^UP >9_'EZ]T5"6/RRT\Y"\,SXK$D MMV*.9#(=4LFIT!I2JF:I6D=4,\);@E>AEUIV@B#?R7HARP6I9%=J84"2+6]+ MR6LBVTTYL'DE.\(?N*SY?2V(67!C*>*!URMN1 5I\U7-=?U([A^Q+<@'".7M MHP.:G76D7$@Q(^*[*%V9Q!)=*0V6E'$"-Z TZ80"(U7PVN'P0JT<0A;65%8-?S1 M0JA7E2"-TLX9+8%_!X;;JG!*/EE/;U>'6EA[:U$[YY6J,S8T]@? MA7&[O$Y M2CZVG7^4AHT12Y45PANUVL:4W=Q+*85\L DEO7>9PW[FT[QOZ[8)2[=^0WZOZJ M:6U0"8X.9L,&TF_=:W@RG[UJ:V0 M#-:?^[NVQZOF3V4\,?+M-NA&7IRIR9U"LG7D9A=1.SX_DRR@898."& :!=F0 M0,."#=;.">QL0 F#B*99 B\]R;'=D10\HZ1?LI0FZ9XEHTD2'Z@X9)\7-$Y" M\E$K!.!2JYDT_5Y!\SCL5Q'-XKV0-,J?Y1G&E+$81JK1?.:4S$6+C*E=L/+* MEE[XA;L:OHLOSP4)S<+8HX8T3@./F@611V/C]P.:%"%" U$@R)L:2I^0F49( M;)-:M3Z4F(8L&Q' \L2CODF3$Y_HP/ATN#6*MB$DAY"H+9T#24$1/&OLIVLG MK#@9(&)8'6I\+V:V[&]E&O[](&93BBHP6!]J^O.ACE@F-(ZBDX%601#O!(+W MSLB\EUAHJ#(I7+Y#OT-*-_&,SP] M<42+^* 9T>(@L[.(QED\O,$29'/8"ZDEOY^3=$A:51DY*-2U5K6M7\@!W!?!GI;ZE?NPN\@SSF8Y31 B7;]_:F% M^^!"2\\B7W@*79@?QQD-LA%J"J@^CSA+:%KX-GWMYXL/8>P?#6$V[HL! ;\% MDB <$"*:LV'+\XM=& 249=GS0UA2(%3VH8N(3/-]H#$(.#*$(7.B8GP(PS!5 M# JD1;I''B([HV?9A@4",_^Q.0QQ%XXD(LT2OY1FJ7^2(9'W\6SG+DRP?V_N M0MTH1NHV#5*_;K#([S5O' 9_["IHF!Z.78?S5I(_[ZF]Y#VRI'BJV?'Y"F-U M'@W6AQIA'0>#E=6"92<#]%F2O^9XA7$PBUYGP,IH/#)SO_3S1P>L,$V/[H_? M.#YBQ7XJ)/'(.,5&6JU'R3&]_NB(E8P(2'P1(\W]J=K'4OJEG\\/5YAJLNR@ MIV0TSX9IC.DK'0Y7>4JC;$B(X\S]&OU+PU46H)^,.99&(^4PQ.&QZIW$_B_E M$, 8IK[_S^$J@1DSGV>NYQ()5(L9K@:G63(A>O-%:+,P M:NF^PMPK8U3C7A>"5T+; ]B?*65V"RN@_RQW^3]02P,$% @ +(/(5J^3 M3Q 2!0 ] P !D !X;"]W;W)K&ULW5=9;^,V M$/XK V^P3UI;EX]4+"N)$Z!8]*4O M.BC.-\F.AJ-=))CP?105EC2ETRJ@AEZ5>N1 MKA2RU D58A3Z_F14,%X.YB=N[5[-3V1M!"_Q7H&NBX*IES,4^ MSHU=&,U/*K;&1S3?JWM%;Z,.)>4%EIK+$A1FIX-%<'06V_UNP^\<-[KW#-:3 ME90_[,M5>CKPK4$H,#$6@='M"<]1" M$9OS58@XZE5:P_[Q%OW2^DR\KIO%< MBC]X:O+3P6P *6:L%N9!;G[%UI^QQ4NDT.X*FV9O/!Y 4FLCBU:8+"AXV=S9 MCR%GY"S-L?J+D!I3=36CVP;GJI,DX7EI2'HVBKYSD MS/SQ^_W]]<7-Q>UR<0V75[>+V_,K>GI<+I9N%:YN+^\>;A;+J[O;DY$AC59N ME+3H9PUZ^ %Z!#>R-+F&BS+%]+7\B"SMS VWYIZ%GP(N*C6$R/<@],/H$[RH M-%_Y'Z#'N]'MP5UI"N6X.F *D:C>L+!_.N78.(??V)[W-D>?X;^T[9_ MCGY[M[R 8 Q?O\S"(#R&?Z,-[DR.BM)7*2P-,*W1:$@DE;(VF(+,@#9 )@7U M!%ZN@1D@9KGHJ 56IO ;*VMJ%! %S>*1,\:/CG_ZOE.V7>GK>KO;&>0N5V4B M"P3#GFU#JLM4TSU!_L16 IW-Q'/%> J\VXFZ SJ 8.*%4=1?&'M1.(4'MJ&J M-J@X$YJ$GRANDLQY:TH0>L$T?+\<>(=^!/>M;+*3BKUQ'+0< MO46:>(%_N&=U/(E@*0T3(/=QNW,H#KUH.NDM1#,OBN)=Z)-$U=BS\7^0%EN? MB'+K%'/G38_CP(MF87]AYH6S"=$E_Z3#B<1T+X0=?.!-)_%[JJ=>',_@&NDH M L'9B@MN.+Z7#[SX,-BS.IY,/^ ^\+T@F.W+N?%DTK+/WM+78S[VIN-Q?^&0 MTF[:+=R5<,-4DE,VNK!YCNUSBADK7^@DI>RG XZP34[$ S)(K3?K+)32KHP2;GA$Z-EDYDM"4(F6)U6@M*5/'RC9=IG=@T MJ\U*4NW22:NH0A4K=89*@Y$$;G*NTF\54^;%^DK[S! 6FKXTN-LD15NAKSV@ MDK=%D=)>(;5VQE:5DL_<5K9X@8-HZ-,9+D0ST AFK22M%H055M46O2ZIK<@G MM&BNS9 -I*&_B>M&BR4B:8%62+"\6-5*[Y"WYF5*%A15VUUT34XG")44/"'# M-932O$7:MJ,A+'LH"@US)&G:3%_YW_0L<$TTVN.5JE%AZ65%0D4+"*93V M[.,)I4O&5>$BK6W16XY82=<4*9U2VU!HSK0C7^*:H#9\W513&QB*,7?;K!+' M0T8"QI'7AJSI(6W0=L1]P)4SW0-*$]Z -NV-:,M0V\F3',L0;=0:GM9K12*F MS]B!/PSW\TJ1=8G2Q- T%?2*:9>A#9-;E][I]M[G4:?/L^R1-Z).FY1O['> MK5N[U##-4-JM=B/]HIED=]N;_P'J%6M*56(H(U%_.*4)6C4S M=O-B9.7FVI4T-"6[QYQ^2U#9#?0]D])L7ZR"[D=G_@]02P,$% @ +(/( M5@ 4C (#P UC$ !D !X;"]W;W)K&UL[5MM M;]NV%OXK1'8QK("3V$Z;9DT;P$G3+EO3!7':^YF6:)NK)*JDE-3[]?%:K]8%7=@_>9G+E9JKXD-^9?%KOZ82ZU1E3IM,6+5\ MM3.;O#B=C&D#K_BHU9UK?1T7]#0L/81;2J3.3_%O'Q?K5SM&.B-52EDEQ;>Y^44&@9T0O M,HGC_\6=7WOX;$=$I2M,&C:#@U1G_E-^"8IH;3@:/[!A&C9,F6]_$'/Y6A;R MY*4U=\+2:E"C+RPJ[P9S.B.KS N+NQK[BI/7Y_.SZXNKFXO?WXO?WXB;7\[% MZ8?YQ?OS^5S,WK\6I[/YQ9SN7%V?S\_?W\QXY4]7)M&15N[)R_T"7!"M_2B< M>.I/G#YPXH&X-%FQ=N(\BU7[2">G+*W:N?DQQ\FA^/C 2&>UD(\ M':)^\EJYR.J*FDWBG4YU =X>.'1V55/A)7. WUK9 M3%P"YA*ZWY9[]KS2N3-V.D4J!N5;(AE%368DMAA'1LIW!:$&4O' G=>/U#87PL9!CQ^DKFW)I;'=.!8EDF MB; R6RDROLI6,+RR.EN-:%546@64+D;,=&%+1EOZE:;:$7CS2DH0A M1AH&>H)MD_OM++V*UIF.9,+$ *S8*R@T= 16(!6QF+,[K%06O FT[2<%"CJ+ MDC*F+;3,8L$=*5[0RM4&=*+" "K(+P"RJI')XZRR+I# 6;G5(*NA5 V80@Z, MP60X&NS#H;$[?H_P9=QR;=.N"WO<:Q6_X%.1CG M(%?+T6CIY/FQ"[)"V9#-;AJC8Y>Q!=O1J14I8:_V7L2OER%L8U7*A87V?,K' MR4NMDGB(7./J)MMUD*OE<&OI38[B1KH!LJQ9"DZ6# MP2!%*C>5<_/=EII&B,,$ *MTW(-X622R KM@;J*XC'-3<8NZ,IH3?"2ZYS# MT^,R[R4#.P""N,6G2EQC*L#="$BOL;7.!XLJAX 8[@,?EU9ZS1*-N4G*H%7B MN*!*#B%39H%OBM;.AMIN]RQ; 4XJ,Y2:?7#5D9I$:1NRC4!-U([8$HE8&>@N MXP/9X50,HW4N-_C2AA66ZE+'NW7FN6_ @4K@65T)/!M,WJ?2:4' M:F2PK/ A*V[Q@W& [ Q^ ==@JMC4X/?QXKP&/M@-D0GS$^58-0R2@,&42U-: M@//G4EK*S,&*&R6MH/01BU]EAGL;<3#QM2KR/C)K&_"9E=THY."%3,C]/,,% MLI63D7?\M;Q58J%4)A"YZ HJ/.CPM8> $N\- &WRM)OE-1=BC?' ]M;;D[UEK14 M07D] T:B3_!K((P+/'.1 :\E%3!,KJV"AGV+Y?VN>S83PI?IJ$[GCV(DDFXM MENCBW7>J$S]" D"NYTNP1K1:(U@%-;@TDW? IIYUM\J3(;2A5PC/IT0?V*K##\CS+SQ25;($3H M,$F/*)XF=1>J,$U\MUL8JC$<);RX:EY:%J8^I,9"#Z^>&I5(K$#25=NM^A!Z MYEWMVN^'�_$Y/Q[F\U X&:(L>"&BFCIB@4P,O_+%);(K:3E32.&.1"/A MT4Y+;9OS*G1H6$$2T^U)2^7(_7F$*W9PW4D3/5#-J5"G HE0FYA#GBJT"HNK M9(X36CT',YQMMC:S"B@<*LE"E\QE^:VJ^!XFZ5O@+<*X%W1$(X>6CPS5P8=U M'7PX6)P^LL+]9B+DBY?2PC6:S/ZFMF9K R QBZ6%\D\-/CI _V8V/ZWQ$(F@ MI%3:M_5#3J[;S)[F'^IM=/SN>$IS)N"=]UJ.R>GQN:\1+A4 TL^Q?C70O?B( M-8R#/]T@E")Q,#UX\J)],)FC18XB_D9^$6=P;%V K=!Z@2]7S5VNK.&RS%#A M-4OIJ^]NJ^-O"%""$P4_0 "!/+F1%[V3=$R&[U&(3@8A3ACD@1M4")PX9&PX M"=4@7T5-%8@$]>1KX"E4\=^ "4/N][QVO^?#GG,K=4(U\2[0<'B>,N^LD5^E-56(IC,D.B M2O2?N+T"3#+@C*H"2'TIN(A7T!M-\U)X I!OU-Z%U.OJ00P=0C/&>KS V!I% M94II7;5&90"L-3T,@N6) J6 T+8A':&Y'M$VI+V G)3DN2O$];8/XA8HI;JD M2?)]2<0VF]OYKL(M.I+P2GW)R8E&+ ;-^"(_ZWT@-7ZMTFY7_)T.!3J%N"G- M2T)!X'AQRW0@%W?[+)>CVT%K*32E?FXR_<"4 W&0/F1!'%N:=(LH07_7["8+ M#?I0SXN:**,.952^6^<.UG&L$*#>%+WX>&;BAM,& M)9L)_11U"/X]?;8[\9/)^5GKVC2T)OT:"_/S 52<)AA'9DVH M=IFKQ'%M4SYP+$U^>@AV/1*Q6(8Y65S:CG9##5 C>(OT5_5/B4,D-$KDP[NR MCP1-XJB<\P\*. C]O#9,5A1/:/OBE6> W'DX!0)?XX+(59I"?@13P!X EOY$ MCV>8-TI;][+47=,$\*P_[IQ8DU^H)9%C1Z&!H<[9U0BO:7P+3%P^Z!6/=8#N MI,BG CHN.!]'+&&C'V,[&O-H^#:!.$W(&[4/)#6:Y-\3_1^*_-T4^ M>C-'N2]QCJ9C,1+-/50ETH5G6.(=/9 2$Z[*)I-CY)B\+%PUO.!F ,K[7!KN M2RW/A'7U:D%PKS#$9\2E^K6:C5FX@5R$YT1[X:AIWU%=^D3-Z10^9_MIW>?@ MF%;>Z\]A^E4F9+;K169!PW)&<0)Q^,V"DI6U9@'WXOG. MIKTHA"1P458Z.>A7?VM3.+1&%E\_M./6W&4D69GR0VNH&Q51SVAJN^D_QM5+& RS6;WOY6J_6NY_1(E-, M=_9J?B011E27/53IY"HY^=JI'8IUD,_&@#4J?8!87!+-Q + M7:2H-?L]K@YE][>J@+-N3UN;:SCML=0\-KJQ'*R;,.A@N'U()=/10]*E/N+C M;Q.S&S#]0C[@5&U$C36/?GP/0Q>:AB.X2LT>>W8S6_")O.1&JXH4'PFA:)'6 M\K3#"UIY<-WI5S7I8^:NS>!@VU2A( _5F6>YFHVTGV[YYS,4.R/OD((=LJG[ MW*AYJ+IM;HT"ZK9WM?.T\WOZ=;O@^]>'Q)/^/B6JSV@72W\EYA,IJ-G3P];5\)\ M9O#*X='H\.GS1VV:#>)HGQ7:=*I/V./@^>&CEW_O]1M3R&18/5N<_#7M#-2C M/]?UZ,^#)66=?^;T(*ZO)!W>__^.MW_B\Y_X_#O&YV3>?W&3S;(,+(VK@,[5$WT[?^2'2 MQXMSG_=I6ZXL/6^L!ND];TGZNM1["[^9X4_AU0F]5!%W7T[S#ZK0EG.!0R\E M2;>[Y %#ZSW%^G':_3=86@_?AL3,C$A,ML*>88'I%D1NGDR2_)Y4NQ;=$U?5 M^S9;[]HTS_9HC%2_(-.01ET=^T<"7WM*^7U3__W6J_;\#A_]00$1 S_^K?OZ M:OU'"S/_JGZSW/_%PZ6T*QH[)VJ)K>.]Y\]VA/5_1.!_%";G%_<7IBA,RE_7 M2L;*T@+<7QIT+>$''5#_*&ULU59M;]HP$/XK5CI5F]0V M(:& 6H@$+5695HH(W3Z[R06L.G9F.]#^^YT32!FBJ.OV95]BW]MS+_;YTEU) M]:07 (8\9USHGK,P)K]P71TO(*/Z3.8@4))*E5&#I)J[.E= D](HXZ[O>2TW MHTPX8;?D3538E87A3,!$$5UD&54O ^!RU7,:SH8Q9?.%L0PW[.9T#A&8AWRB MD')KE(1E(#23@BA(>TZ_<3%H6OU2X3N#E=[:$YO)HY1/EA@E/<>S 0&'V%@$ MBLL2KH!S"X1A_%QC.K5+:[B]WZ#?E+EC+H]4PY7D/UAB%CVGXY $4EIP,Y6K M6UCG-RG&AC1A'ICZ_)H!^-(BN93(?1<#SKEYJ?9_21@_[2=0W&8)'<>.UO4/GS MW_ 7D#LIS$*3H4@@^=W>Q=CK!/Q- @/_(& _5VYW8WOM0N_R0!+-.HGF(?0PPMY-"@Y$ MIB1E@HJ844Z8T$85V%%&8S_%4N$)$&I(2IDB2\H+U,<^L;)"*2;F]KXSO2^Y MP^Z/CSJ^%UR2_V7%.\1X?8EJ]E[M8#GH&:EV-*DU@6PE1O>&PO=V]R:W-H965T"8-IW8I@+;DD8V[^_I(4>DS8> M[EZ:V+$_?[9K#W="OJ@"4<-;R;@:.876U97GJ;3 DJ@+42$W+QLA2Z*-*'-/ M51))5CN5S M\O^>5A'(G'M:Z1QD/Q58SRO%1@MJ6)9'O$V1B-W(ZSD&1T+S0 M5N'%PXKDN$"]JAZED;P6):,E**X4T=WL)FLA7BQ MPETVV3 H*6].\K:OPY'# MP/_"(=@[!#7O)E#-\B?1)!Y*L0-IK0V:O=2IUMZ&'.6V*0LMS2LU?CI.9D^S M^]5L 3?)PQRF#_?+9#Q=+N#Y;GD+T]5B^3"?)0OXOB1KANK'T-,FJ'7UTGV M21,@^") "'/!=:%@QC/,/OI[AFS+.#@PG@0G <>5O(#0=R'P@_ $7MA6(*SQ MPO^JP&>)-[C=SW'M-%VIBJ0XY0;?;&I[! MP'>#?@@)5MLUHZDMQIU$1G@&0=<=1+W6]M+M1>$!\!?E>29*Z(1NU(]:FX[O MAE$'IL?E3 [E/#//H=L[,K<:&[__63N]HY$L4>;UXE&F55NNF^ELM>UN&S\68QS(G/*%3#<&%?_HA\Y()METPA:5/6 KX4VZZ*^%F8_H[0&YGTCA#X( M-D"[\>,_4$L#!!0 ( "R#R%8_\*2VX ( #L( 9 >&PO=V]R:W-H M965TVRB30J$A*N.TZSI&=4)9:0;_PW8 2<&R"4\;W" MM&I*D]B<;] OBMJQE@55,!+\&XMT/+".+1+!DN9MC<)@K+9(J&14D+"U'^ESM0R/AV'DGP:T2W$)W252H/*>:!GTIUD2::$0S MDZ+4(AO%L=0?4.> 6>]Z$=V%9XB>MOQS6WJ:SO M=8Z*?D?QOQX!FO3_[/TS@^/#0-@>#NU-Y+*91ZQQHKS?"^0_0[5B*D9C\: M*R,)$=.U.4OQ9>1O(K:X+BA[53(22I,;Y =%+O$551MC3GD.9-:>M,D4(50N M7T@J-*C>/SN";-2_!#]CO>12A'!ZQYM M>PSLQH.>@%P5;4N14.2I+M_VVEMWQF'9$%[#R[9Z2^7*?%0&ULW59M M;]HP$/XK5C9UFX2:=UY:0(*.=9W:JBIT^VR2"['JV)GME':_?K8# 0I%U3[N M2\YWOGON.;^"\KDP,F5*L]<5R8Y%%B>\A*8GLFX*+#2JEBX MLA2 4QM44#?PO+9;8,*<8=_:[L2PSRM%"8,[@615%%B\C('RY<#QG;7AGBQR M90SNL%_B!4Q!/91W0FMN@Y*2 I@DG"$!V< 9^6?CR/A;AY\$EG)KC$PE<\X? MC7*5#AS/$ (*B3((6(LGN !*#9"F\7N%Z30I3>#V>(W^S=:N:YEC"1><_B*I MR@=.UT$I9+BBZIXOO\.JGMC@)9Q*^T7+VK>C,R:55+Q8!6N](*R6^'FU#EL! M7>^-@& 5$%C>=2++\BM6>-@7?(F$\=9H9F!+M=&:'&%F4Z9*Z%FBX]3PZG8V MNKV\&E]/T&@ZG$1_#"IMC0XH7O+?90C35$=!C"W)$S6>($ M!HZ^!!+$$SC#DP]^VSL_0C!J"$;'T(=3?>?2B@+B&4IX46+V\DFBLA))KD]> MB@A3F"V(WA^$I00E6XBK' 12.69HP7FZ))0>JNIXWI,/W< +S]'_(O7!(;0Y M.8WY!V:5[CPH]%]-K.5$*J)ONE[IM>52<"DWN$E2%17=\;C5G?/?O!\D9!5% MUR0#-"IXQ90T4BCR!]N6M65\>W(F< J(X0(VF?T8O0 6&\-'%+6B7F]+#UI! M$._JG>BHOQ][.WH8]="%[5#Z J@EI;,2;G%PWO%8RU[?GO/UN[T]FQ!V'E? M;+QO"]H>FG&%Z7[Z31EQ*_)WEZ'G13MZ[/M'_;M>>T=O>[U#G<#=ZM%ZP1;V M)9+ZENM-K-MU8VT>NU'=XS?N]4MY@\6",(DH9#K4.^W$#A+UZU,KBI>VX\^Y MTKMCA[E^L$$8!SV?<:[6BDG0_ (,_P)02P,$% @ +(/(5@0T3'_6 @ MK 8 !D !X;"]W;W)K&ULA55K3]LP%/TK5QE" M(%7DX?0!M)6 ,8UI917M-NVCF]PV%HZ=V0Z%?S_;:4M'2_F2V#[W'-_K&Y_T MEU(]Z@+1P'/)A1X$A3'511CJK,"2ZC-9H;#(7*J2&CM5BU!7"FGN224/DRCJ MA"5E(ACV_=I8#?NR-IP)'"O0=5E2]7*-7"X'01RL%Q[8HC!N(1SV*[K "9J? MU5C96;A1R5F)0C,I0.%\$%S%%]>IB_9#+K[BJI^WT,LFU?\*RB>UT \AJ;62Y(ML,2B::-WU>G<,6H1>]0TA6A,3G MW6SDL_Q,#1WVE5R"V91)O![YN,Q]U37D=#_9W8L+7=$,!X']\#6J)PR&QY_B3G1Y M(+5TDUIZ2'TXL?I\DUUFWVCHK;W%DCLVY+"B4)W[7-4IW $ M<2M)4P>T=V3B%FE'#NKL@:+NN8.Z.U!"V@[H[0(Q@6F!UH/F!M4.W(O;,)6& M\K?G]S8P;9V3#GQ'K8&556TP!R:L(FJS$TLB F/7?&'@B?+:M^M#_0XAC7Y6 M*^6HE53>C$Z8R'B=^QVM,V6JMD-\ME9K^WFZYY32\QCNI3BH(UYQSNB,<6;8 MMMH1D%:<)ON^V7#+04I4"^^3-FU9"].8R69U8\57C0.]AC<^/J)JP82VAS.W MU.BLVPY -=[83(RLO!_-I+'NYH>%_9V@<@$6GTMIUA.WP>8'-?P'4$L#!!0 M ( "R#R%;%NO5'?00 $T3 9 >&PO=V]R:W-H965TME@I"3)AJ MBA0YS2R$3)BF3[ELJ50BF^=*2=QR;;O32EC$K6$_'YO(85]D.HXX3B2H+$F8 M?+[ 6*P&EF-M!NZB9:C-0&O83]D2IZA_3R>2OEHERCQ*D*M(<)"X&%@CY_RB M8^1S@6\1KE3E'4PD,R$>S,?U? QB&,,= &@='C$<<8QP:(W/ACC6F5)HUB M]7V#?I7'3K',F,*QB+]'UV^1>Z6/[L;'"_<@X"B53?#L!KBVZQW M\\J8O1S/>V/,^T(MD/S]2*9CSE7* AQ8U!(*Y2-:PX\?G([]^8"??NFG?PA] M.*4.G&::YD9L93H&37$1!Q,FZR!3C7[?1/>C $?K++W9P O!.S3T;9;@->R_\N'R"640J:W"F"I M4LUD+"['?I&,:R":VHI-BZ6;R"A N$>9P,DS,JE.X8I%$KZQ.$.XS;32+*^1 M!ESA3&:F0)VBGNCI^W8)^!/X7K/K0[OI=RJ#CMUTG,*!2MQ.5<_K-?VSHY._ M"7@+=N+9IU6+W:;C'@U'.\P"HZIO)TX5S:.@G*/1:@FKM]\V]H;O]*II\YM> MA]+F[:2-5-:QFOW@!9S3<'M.'::[S6J[:;MU.+_[CS78ZU&[U:B];MU=6J5. MT_9WHG8.1.T2C-/;25[WC*)M[T1[UCFP#;3+;:!]]#80A(PO-UR'P+-D1AQ) M$USP3X^H3 45A*U "T@S21K4EFN*- @B(78NN'W?_G#8E_^:1-])]9U4WTGU MG51?)=5.2:J=OT.JU#>:VL;43''ZS7BD]YZC#\/?$SGO<#7]:8N2+*EP]GY2 MIB.NRDR"#'O3&W4W,;G8KL,K3K[I",[GN>B+$_?"$,1C3A#;P[S,Y[6OO5N6*(T&Y MS"]R%#4._2TL;CO*T?*N:%1Y-!Z)G=D.[?[]SDYK"BW5-.U+?'>Y MY_%SN?@\7 KYI H 3595R=7(*[2N![ZOT@(JJLY$#1S?Y$)65*,K%[ZJ)=#, M@JK2CX*@YU>4<2\9VMB]3(:BT27C<"^):JJ*RM\3*,5RY(7>)O# %H4V 3\9 MUG0!,]!?ZWN)GN]8,E8!5TQP(B$?>>-P,.F8?)OPC<%2;=G$5#(7XLDX-]G( M"XP@*"'5AH'B\@Q3*$M#A#)^K3D]MZ4!;ML;]D^V=JQE3A5,1?F=9;H8>7V/ M9)#3IM0/8OD9UO5T#5\J2F6?9-GF=GH>21NE1;4&HX**\7:EJ_5WV +T@W< MT1H06=WM1E;E%=4T&4JQ)-)D(YLQ;*D6C>(8-TV9:8EO&>)TG=[31[' M/ZYGY/B1SDM0)T-?([5)\-,US:2EB=ZABS+#DY8U)1"1F[^TH25A/!45$$U7!%9X !406HF&:[5/ M_&'ZHP_]*(@OR?]:'PL)\*K?!+O%2MNNM\FF?>81N*<+D*0&'&X<61Q?"HI0GFUK M;3_"6[:PV]^)=;O.O#G4U_Y%]U5?H_-XX^\[4O[6B*M +NP@5R0U9Z*==B[J M[HIQ.R)?TMN+YI;*!>.*E) C-#@[[WI$ML.[=;2H[<"<"XWCUYH%WG<@30*^ MSX70&\=LX&[0Y ]02P,$% @ +(/(5CFK",!N P 30D !D !X;"]W M;W)K&ULK59;;]LZ#/XKA#<,+6#$MR1-VR1 T^5@ M>VA7M-WVK-CT!94M'TENNG\_2G;>I.,>2J9&HL:(OJ9 ETR3*S%.U1)98HY)[H>]/O9(5E;.7:;'C+>\1(Y M-T#DQK\=IM,?:0SWUSOT?VSL%,N&*;P4_'N1Z'SAS!Q(,&4-U[=B^PF[>"8& M+Q9NGO8,YCYOS$(.X/0^MT>9+W\R#1; MSJ78@C3:A&86-E1K3W\/GZ\LO5VNX6=_"W:>+VS4< MW;,-1W4\]S0=812]N(-;M7#A;^ BN!*5SA6LJP23E_8>N=;[%^[\6X4' 2]J M.8+(=R'TP^@ 7M3'&UF\Z"_B'0JS11D/HYA*.5,UBW'A4"DHE(_H+#^\"Z;^ M^0$?Q[V/XT/HRSNJO*3A""*%6)1UHYEAL#(R,;"(@54)) 5O-"904>46%>DA MU$CEEC.)0Q$=/G/U1[C 2M%46H%9MZZ1)E.0"D[EK>#(JBDR!)V+1A&@ GR* ML=;M'D(E-!Z?P8=WL]"/SM_L?9]+Q!?L ^).P2UY7BL;,IE'V.][VWH/ MH1OXIWORB3N>3=[,X^^V8YC[>T1)#1"JIMS035.6NUND)JHT76%19=8J",X[ M KS&"B)W'$2_;H_=T\#OQ76:4C.T!V@1/P#;,DGY.0J.!P!_19N%_]/W';4& MO)^,IX/>GX9O=M_70X3^KV"K%VEX#_XHF+X0)\_7_O%5V(>U339HX-A:T9;4 M94MJ?$5J2V)3L8;(KM7?#J=%[>4E08V2!@DIF:'8YH0&HR66K57>)&C1T-+% M&K-*%[UF2QY1MTTI%G26R3(CN"R3F#%M6]=L$KBS:&Q=G$U/W(C6.W+8QD9Q MM5@NC7=5HQW0_,=HJ(5Z>R.N1)G906X.IW;43KM^M_]7N&A'Y+-Z^Z-QQ616 MD.,<4S+U1R<3!V0[O%M!B]H.S(W0-'[M,J?_'91&@;ZG@EI8)Y@#^C^HY4]0 M2P,$% @ +(/(5K*]T./6!0 P1< !D !X;"]W;W)K&ULS5A;;]LV%/XKA%MT"4#4%$F)4IL82-(LZT/;(,FV9\6B;:&2 MZ))TG.[7[U"V93FDO:X#DKV8XB'/C3R7SSQ9*OW5S*2TZ+&N&G,ZF%D[?S<< MFO%,UKEYJ^:R@96)TG5N8:JG0S/7,B]:IKH:4D*289V7S6!TTM*N]>A$+6Q5 M-O):([.HZUQ_/Y>56IX.HL&&<%-.9]81AJ.3>3Z5M]+^/K_6,!MV4HJREHTI M58.TG)P.SJ)WY]SM;S?\4Y(6L M*B<(S/BVECGH5#K&_O=&^J^M[^#+?6[DA:K^+ L[.QVD U3(2;ZH[(U:_B;7 M_L1.WEA5IOU%R_5>,D#CA;&J7C.#!779K,;\<7T./\) UPRTM7NEJ+7R0V[S MT8E62Z3=;I#F/EI76VXPKFS75I\O/=^CF\OK+S=W'SU?H MZ"Z_KZ0Y/AE:D.]V#<=K6>#;7;Q$C&%%"V0%YK'.6M?+8CSH;\G$E@H=%N!QY9^;Y6)X.( F,U ]R,'KS M*DK(^P,&\LY ?DCZZ!9RKEA4$JD)@KS3N2V;*<2^@1@S*&\*-);:0JJA2=GD MS;C,*S17IFP#O(#[=XQV)M&%JN=Y\_T7 \QS!2QPI>A^84"?,25-2'W M#QOXYE5*"7N/7GJ\FVDI=\*M6[I62ZF[V<>F@"32[J Z7E<25/V/.B#ZRJH+ M/W0+=UV.I0E\?($CU^A.V;PRZ$8^R&8!U(VZ6]5,U"E"8Z3K4B*XYCON-@7GV:8QQ&ZT@JB M8Z[5I+3=6H93'G4SA@7?*DE8NE=FQ#&E' ZI@B":8C25#01TU49Q7D I*^%> M3D7R$'F-ZOFS&&(N(>]0(\X1X5$&81Z-A?H+C+(+0@"B0Z*@"IX_11$-( MK'-.-;XI'$=4!!30-/:H1TE\[!-;8WPZ7"MCZQ J^R9AU$C;TT0RLO>PG\Y; M9=EQSR(*LUV/[R7T=+G1:?/'G9A-,(WZ$;KKZ>M='V$:8\[8<<\K0OA&( MW/&S58@TB]%G.+^U>\^EUAU41+(7+Y!G-53]\J\VF%VY*!N;-]/2=?:#929+ M#RX'&3Y(:(70BUI=7K+1U*,Q$DC*4*+Z!8$+=*U=FMKO&,VKO+%M09'?%N7< M]30H+449SF"6^M="XR1XA$]SZQ ]X7X%>.[Q8J%UZ[TQTO9OF$';B+-^[^$, M9WRG&>%L)[,%PUSP/@>-(9NC3DE5YO=E!:<5O2,%P7P?TML2OW)G?0?9=,$TQ@1+=]O>G)]P% M%[1TP7SE"?A"_3@6F(@ -0%3?1EC/G!17'/>M%G+XDK (8*-C+ "N!>0!K/_?XL\ J2I*#ZV&.P]"*^ZD0 M\P",HH$6ZU%20*T_"ZWB@(+85Q%HZD_=/I32SSWN!U6 9H38Z2D"IZ*?QH"Z MDCZH2A/,1)_ N6C_A?X0J!($^DGH8C$+E,,(-H>J=\S]?\@1&$8![?T_054, MQRA\F3R&PPQT(DP#4!P<3*( J (TF4:=[-#CW;#WK%I+/6T?CPT:JT5C5R^L M';5[GSY;/MS_E>EI"XE1R JSDK8@'2*\>C%<3J^;M(^V]LE;5[>=, MYH74;@.L3Y2RFXE3T+W:C_X&4$L#!!0 ( "R#R%92Q>3T00, +<( 9 M >&PO=V]R:W-H965T)8\3>]IF6QC:[DJB25)S^?8>2K*B)8A1H@;Y8Y&CFS!G.H4>3 MHY#?U0% DY69YT,3WQ_T,;@S"85V\,: M]+=J)7'G]"@9+Z!47)1$PFYJS;VKZ]#X-PZ_;13:U7$,( M(8;R',#A#3^Z#"M/J4)'*Y/Z'=-[5C+EBFX$?EO/-.'J958)(,= MJW/])(Y?H:NG(9B*7#6_Y-CZAH%%TEII473!R*#@9?MD+]TY# (2]X, OPOP M&]YMHH;ESTRSV42*(Y'&&]',HBFUB49RO#1-66N);SG&Z=GZVVIU?_MPN]S, M[\G=8CE?WBQPM=[,-XV5+)9WCT\/\\WB<4E^W+!M#NJGB:,QM0%PTB[-=9O& M_R -)0^BU =%;LL,LK_'.TBYY^V?>%_[9P'GE;P@U+6)[_KT#![MSX$V>/0_ M.(>Q\EOT8!S=W*PK5;$4IA9>'07R&:S9YT]>Y'XYPSWHN0?GT&=KO*E9G0,1 M.R+T 20*1THH-6%*@59C?,\C?OZ4^"[]0O[M$[O$\Z9-)\LOK*SQ\A/JV>^\ M32O;GT69B@*(9B_FXM=EIO"9 G\V^B.LS @>8\5X1GCO":H'^H%XD>U3.C2$ M-O5C\L2.>'LT2,YRA<'/>$H"Z;REXOFV%_OOS9Y]Z5*RZI+#"_XWJD'BV$ZB MUZC #@.//#8=>8L4V9Y[.6(-(THV0K-\M).#@@+?IG$T,-#$IC0X(Z>PEU/X MC^7$TE36\%KIF)3.H_W?4IIW%:!,3 FLF04#77@V3?RA(;']),(6B]]Q<&"8 M&AQ[#^_9<12\ET=L!T%"[@''!,DYV_*<:P[OXST[N/1&K&$4?Z 7S[4]+QG3 M:1A%G6+>-FNHEL".PW!HN$2IQF-J<0;#I "Y;T:FPH.H2]W.E=[:3^5Y.XQ> MW=N1_L#DGI>*Y+##4/&PO=V]R:W-H M965TU *^V/7]N$#&PA+56D?@';N>?DGN,;YZ:SX^)9;@ 4^I92)KO. M1JGLWG5ELH$4RQN> =-75ERD6.FI6+LR$X"7%I12-_"\R$TQ84ZO8]>FHM?A MN:*$P50@F:)\-KB$$]95.A9V[)LB0I,$DX M0P)67:?OWP]]"[ 1_Q#8R:,Q,E(6G#^;R639=3R3$5!(E*' ^F\+0Z#4,.D\ MOA:D3GE/ SP>']@?K'@M9H$E##G]0I9JTW5N';2$%%J =08I8?M__*TPX@C@-R\ @@(0_"H@+ "A%;K/S,H:885[ M'<%W2)AHS68&UAN+UFH(,]L8*Z&O$HU3O=$X'LXFT_GD\R/Z_(#F'\=H\!1/ M'L=QC/J/(S3HQY/87)G.QO'X<=ZWD0WT0!AF"<$439A4(M<[JR0R^X)FD.1" M$+9& RR)1&]'H#"A\IV!82+0%M,SE!!?D]#-Q@T+O/0J\(#P#'U;#_\),P_US<%<;6[H;E.X& MEJ]Y@>]OV )%OO8HR]59.95X\PS?RPPGT'7T0RI!;,'IO7GE1]Z'<^)J(CN1 M&I920\L>7I#ZLK.(KQ"6$G0]Z$U$E. %H401D"@%+',!2V3/@,/VFRC&VS$K6;I5K.R,.9<87I6XAX769PY@[<]WP]:S:CC;H^3_S$L MNHV:[3+J)*M6F57KBG)%_Z)/G,%W?=R(9_U"6>47'LE*TFMWI2:R$_U1J3_Z M\S4E6360G;K5+M]J5U3+$^E^O,K2Z&]U9X(7 M%!JZ(VY(7;\-:0RP1IUM/[P?"CGTPO;_Z[CZMK\KZZBI\W_S]5( HY_E7\E_ M;?[N47]J/@X^8;$F3"(**TWOW;2UG6+?;^\GBF>V95UPI1M@.]SH;Q00)D!? M7W&N#A/3!9=?/;W_ %!+ P04 " L@\A6G8>6Q/D" #:" &0 'AL M+W=O<>\]Q3:;H> @2DUB4JAK-:09EYGZ1V7DEL^V@,:,R$FA$0PAW"4PEH]+B/&OI.P<9 MOV/:0*[]!3F6X]84-'@[W*F!#P_#>RE7<*LN^XX:MSH9-^=S_^MDZGPO>)OU MO+J/M$6* ^@:JE$(X&LP_,^?;,_Z5N?91Y(-/XALQ\]FY6?S$+L_@370#%2O M"MB*DE_[?[G"NX+C+.?0+7/MMZS&><=<;WOR,L@[;;B[0<.#U?RCUE:EM?47 MK>IMI1 BG+",2H$63RCE[(=JMHAM*/#:][7U0E;SO&'O:3^8^+W_AX+,V\KH MM*I\.\J]2KEW4'FO%,R6**,I)X$R(8@P70%B/%3"5=,*XDPU'-V]),=4X&(" MY<&UOA09S[>JM.V&M^?+P;+>ZTM-1J?A[#EC;G7]!/@JGYX"!=J HFE6N]6 M[N5S:6^_;[<'Q9S]0U-,_3'F*T(%BF&I**W&J3HP7DS28B%9FL^6!9-J4N6W MD?KX *X#U/,E8_)YH1-4GS/^;U!+ P04 " L@\A6&_=,N9(" #G!0 M&0 'AL+W=OQ,:?91ML-/^H7),,8];*8 M26/Y-N %EA R3+1% M(.:WPQ$R9H$,C3\5IE>GM(''ZP_T!U>[J65%%(X$>Z5KO1EXMQZL,25;IN=B M_XA5/8Y@(IAR7]A7OH$'R59ID5?!AD%.>?DGATJ'HX P_"(@K )"Q[M,Y%C> M$TVBOA1[D-;;H-F%*]5%&W*4VTN)M32GU,3I:#Y^&3\OQS$\S*<3&$V?%_/A M:!'#Z]/B$4;+>#&=C.($Q7C&;$:JW@ M_!XUH4Q=N,@=\BU>'D$TAUW"^%"8VS*X"YI;/Y%"['*1I'2(-9$:3*4(OX8' MJG[W( S"]E70O0I:< :4PX0R9CGT?6WTL57Z2:7%7:E%^(46PT)>0SNX=)"P MC._A_.SB,XQOY*TU#FN-0X?;_B^-F_B6N)UF7-NO/560! >>:4B%]/U; MZR;X>8)UNV;=/H4>C037TNAN'GWRQD0&)!=;KIMHED"W#LA.@5T47/_H^[N& M[)TZ>^??LI\3!07*!+F^:.)0PK6"3R3:7[#HUBRZ)UD&PO M=V]R:W-H965TS#:4A):BM^ *VN>=PCGW!U\,=X[_%&D"BOUE* MQ,9EJK+$UOD''!L0%EJ>XX3VADFU(J&9NR! M1T.VD2FA\,"1V&09YO\N(66[D>5:3P-3DJRE'K"C88X3F(%R*)289 M4$$811Q6(^O"/1^[O@:8B)\$=F*OC;251\9^Z\Y-/+(64[;Y#:2C0 M?$N6"G-%NS+6L=!R(R3+2K!2D!%:W/'?"5 .\0T#L"\$N F3F[ M4&9L76&)HR%G.\1UM&+3#3,W!JW<$*J7<2:Y>DH43D;3R<_)W6(R0]?3^ULT MOK^;3R_&\QGZ=3/_CL:+V?S^=C*=H:_HB@B<)!P2;*:?K= 4MD W(-"G*Y"8 MI.*S"EO,KM"GD\_H!!&*YFNV$9C&8FA+I56_T5Z6NBX+7=X173ZZ952N!9K0 M&.(ZWE8>*Z/>D]%+KY7P(N>GR'>^(,_Q_ 8]X]?#O18Y?C7OON'SC_ =G\ZF MN2JX>LU<^DL_%SE>PLA2G[( O@4K^OC!#9UO348[(JO9[E6V>VWLT9Q)G#9: M+'"AP>E_SS9R'3_L!T-[NR^^*4T[##OPBYM=T16L]VO;/??F7<%+MA+J##P>KV#M'L9-5!9YS=G MW: 2-6@5-85\\YB2I5Z%&PZI^E,V*6PE>>LB=$16\WM6^3WK,/?.NK3=$5G- MMNL\[['..[.O!.XGEM<;!.%!^C6$G87!D?1S]_9^]S6_O1^$)C'+&O6U$KQU M%;IBJ]OUGNUZ'>9?2=:5]8[8ZM:?JPVW=5=ORT#_Y8[J!R_VW:8PQP_<@Q2T M]RK1#'AB"G2!EFQ#95&K5:/5(>#"E+X'XY?Z<& JW&>:XF1QBWE"J$ IK!2E M<]I77P4OBO6B(UENZMU')E7U;)IK=< !K@/4\Q5C\JFC7U =F:+_4$L#!!0 M ( "R#R%9V#TL6%0, .P) 9 >&PO=V]R:W-H965TV ^M_ M/]N!#/K<:)/XDMC./%D 71IBN7H2HEDMR!"A;&G4XO+ CE03IP8P\R'8A*,\KQ08*JBH+(EQMD M8C,,HF W\(4N5]H.A.F@)$NVVP3IZ%^&X[=_DPZ%A!R##3EH&8UQK'R)@E,C)^;#F#9DH+W&_OV#\Z M[\;+,U$X%NP;S?5J&/0#R'%!*J:_B,TM;OUT+5\FF')/V-2QETD 6:6T*+9@ MHZ"@O'Z3G]L\[ $,CQ\0;P'Q:T#O#4"R!23.:*W,V9H03=*!%!N0-MJPV8;+ MC4,;-Y3;*LZU-%^IP>ET/)K?O@?[A.E_CW=/H\_3^Z]S&-U/X.[^:3K_.G/] MDPEJ0IDZA3-XG$_@Y-TIO /*8489,^50@U ;-98SS+8SW]0SQV_,G,!,<+U2 M,.4YYA[\N!T?Q2T$H4E#DXMXEXN;N)5Q5,IS2#KO(>[$B4]0._P3X08>^> ' M":U62#(>!6>L*Y1J# M]-]_HE[G@\_GD<@.7%\TKB_:V--1ELD*<\CIFN;(7K=6>[:I[ 0;]Q MT&\E^N8.,;.8R!JE.9--#7E%F-FW-9I\:9!$HP*Q@/%$P0E10*S9S)3VU&>W MGBV*#M94IQN_6GG^L+CK7WQ7C9FK/]H8=N)] J\\:_[RE;K_QT3G_5?2PKT# MM4"Y=/<,!9FHN*[/UF:TN_@ZO[T$S(I>4*V"X,% CQRQD6=\MZHX6 MI3N>GX4VA[UKKLQU#*4-,-\70NA=QT[07/#27U!+ P04 " L@\A6*^/) MQ&@$ !6$ &0 'AL+W=O%[+31G/G'ZW6+N6_:[(=<(SO):@\C1E\O$4$['J.;[S MM/"=S^;:++C][H+-<(+Z=G$M:>:66F*>8J:XR$#BM.<,_)/3(# "Q8X[CBNU M-0;CRKT0/\SD/.XYGD&$"4;:J&#TL\0A)HG11#A^;I0ZI4TCN#U^TGY6.$_. MW#.%0Y'\Q6,][SG'#L0X97FBOXO5-]PXU#3Z(I&HXB^L-GL]!Z)<:9%NA E! MRK/U+WO8',260*.Y1R#8"!0'X:X-%2A'3+-^5XH52+.;M)E!X6HA3>!X9J(R MT9*^%@\NT S%\8_WE[?C>X&%_=3&!P-8+SJ[OQY.:RF!_"8,EXPNX3 M/*14.)RP!&&"42ZYYJC@\P@U?5=?X!/P#&[F(E02A=P"!%X1P.QG!YT]?+'K# M\N3"0F^X[^28F@/Y",5@_#/G2SJ43-?ZO%;5J%=E*N]$+5B$/8=*2Z%_Y?UA =HH@39LVOOGF4;2JJF((B20%,,ZB&LEK4*)J>5EW_>\KKNLL=PL M+3>MED=XK[>RY* FB6@MBF2.,3S!/ VI1$,$F(,ED4(M!>&$F.NX4(H4C/, MI:23/H")9AJ)(S2(*9SQC+9SEL"U4+RH^;_'#]HP"%FD?,I3E,RL_U/G_P>X MLL%EB5FK/+F6U=RU%!%BK& J10K*5!MY&!L0:@L$>P;";*OSK+43V3UQ;9?H MVE9T@U3DE.@&THR(GP82$HH,$0'E6,*4XE-.(:4N8/8(/:=X1B*EY)Z;<"R1 M2(+FM6C7IILOHSTNT1Y;T=Y.X(8:ELKE(V1"8VV!6E6\LT [)<".E4D&.U'< M"G(=V,XO .M[5 "CN=/:"""E3P!E"UEH,=RZ'7\,,] MEJO.Y%O[2?^KI&*$VXRR/BD 7!3%60LAW(70WF._:CB^O>.<,2Z!NF&.;\N. MQFX@&IWV/CA5%_+MW%W N7L&YY69T7Q39E3D[MO9O0)4:W67KT,O;+?V6*U( MV[>S]B7/>)JG\!^\BA'MVM[+,A5I^\7S&W!%V8&=LB_9PUM";]?VSN,,*C8/_(\+?6#M#._%6I%\\ +)OROT M+R@-]X?>W7KJT75V5CQH%75BNI"M7WWE:OEH'JR?BM7V]8O[DLF9N;PE."51 M[ZA-/"?7C]CU1(M%\7"\%YJ>H<5P3@]_E&8#?9\*2J#-Q!@H_Y70_Q]02P,$ M% @ +(/(5M]OPW@A @ 04 !D !X;"]W;W)K&ULK531;ML@%/T5Q*JIE;;@V$V79;:EQ.FT3NL6)4OW3)R;!!6#!SCN M_GZ '2N3W*H/>S%S"'N);J41\ #'HJN- )/AA33@C1^0$*J@>R!&%W M=E(5U-A0[8DN%="M!Q6:6-+%JP[:!@HAGI M4WL.9X#A/4QGWV[1Y1P,95Q?H?=HO9JCRXLK=(&80/>, MJ-.;_02 M>SKEUJU4Y("L[U$E[*WQ/MIPL$;*925,[T]M6,>>U;T'QW0X&,?D>*ZK+^=C ME].T2\XNJ'L<[JG:,Z$1AYU%!8,/(XQ48[@F,++T=W8CC76 GQ[L&P7*)=C] MG93F%#@;=*]>^A=02P,$% @ +(/(5AQV7:7@ P >1 !D !X;"]W M;W)K&ULM5A=;]LV%/TKA%8,";!&HKYL9[8 QTF[ M#&D0U,GV,.R!L:YMHA*IDG3<[M>/E!39LFD%2=V76*3N.3KW2CR7S'#-Q1>Y M!%#H6YXQ.7*62A7GKBMG2\B)/.,%,'UGSD5.E!Z*A2L+ 20M07GF^IX7NSFA MS$F&Y=R=2(9\I3+*X$X@NOX6I,ZS3,-XU0)?9=JG$JN;^_' MMQ^O+VZNT'@ZO;J?HO=HPO.",V!*(CY'UTP1MJ"/&:"QE* G3RY!$9K)4QW[ M,+U$)^].T3M$&;I?\I4D+)5#5VEMY@GNK-9Q4>GP#^@(T"?.U%*B*Y9"VL:[ M.J+\AW_,#BYY)-_Q/PC0BU+$$_@)+_^@F/O M=UOF1R)KU2%LZA!VL2S5;[*B-(O2.L3BOY'C-/81%9,T=;S_8$7[HBT!/6]V"XR;D3& MG2)OM;%W%"_>JXL?8;RC*][7%7L#NZY>HZO7J>M>D!30+LPY'(6G48-'48=+[N*ZEH7JZ4!PGS589NZ!S0B6X!WX$( M>6I+OIL11Q74EFDG\HV98F_3(+T?0>$^ANA_H\X5XUN69??V[74.JJE+0@/%7'3FW%GRTLF MY3X+A-Z79F7UY)(6=IE';<3'8FNGO6G%./R9;H8[._VK:W$DMG8M-LT?=W?_ MMSC:"Y38.VQIW="W9KO91>#N;<3+GK:_DQC@>'>U!$6'9&YV KBSP;[H9_U]/PMZN\HL0?&NT[I;ASOM48ORS"O1 MS#RZ.NER>)MU->'4H_T3$@C*),IAKJ'?6TS41U3FW&BA>E$?%1ZZT M(9:72] [.V$"]/TYY^IY8![0_+&ULM5=M;]HP$/XK5E9- MG;22D/#:021*NHZIJU"AVV=##F+5L3/;0/?O9R=I!&O(:)5^(7ZYY_'=X[MP M&>RX>)01@$)/,65R:$5*)9>V+9<1Q%@V> ),[ZRXB+'24[&V92( ARDHIK;K M.!T[QH19_B!=FPI_P#>*$@93@>0FCK'XN"?K2)D%VQ\D> TS M4 _)5.B97;"$) 8F"6=(P&IHC9J70=_8IP8_">SDWAB92!:\8W$+)0#6VF7#+&]S(^_RHYWCQP_2D0#>%M=)5D&E%Z^-T=[K#4TC_P.+-6$245AI>J?1U:4N MLN8XFRB>I.WB@BO=?*;#2']/@# &>G_%N7J>F ZT^$+Q_P)02P,$% @ M+(/(5@JV)Z&Q P L1( !D !X;"]W;W)K&UL MK9CO;]HX&,?_%2LWG5KI1GX *>T!$B7MUM-@%=RVUV[R -8<.V<;:*7[X\]. MTC290FY,Y@7$B;_?)_[P/+'C\9&+[W('H-!S2IF<.#NELAO7E?$.4BQ[/ .F MKVRX2+'23;%U928 )[DHI6[@>:&;8L*I+]BATRZU<$I("DX0S)& S<6;^3>3WC2#O M\97 4=:.D1G*$^??3>,AF3B>N2.@$"MC@?7/ >9 J7'2]_%/:>I4,8VP?OSJ M?I\/7@_F"4N8<_J-)&HW<48.2F"#]U2M^/$CE ,:&K^84YE_HV/1-]2=X[U4 M/"W%^@Y2PHI?_%R"J G\P0E!4 J"GQ7T2T'_9P6#4C#(R11#R3E$6.'I6/ C M$J:W=C,'._1E':&+=Y?H'2(,+0BE^O^28U?IZ,;#C;=\EFEYWSLIC[KE?V&FY7Z;W-7(*FY!Q2W(_08G_%9PX/1 V!;- M!21$H7L<$TK42QN83BM3V3J-;'Z-OG9-(LLF37X#2I^@\X4G"4Z[W0M M8HIBGJ9$&7X(IWS/5!O%PBW,W,G&%%:"+]>?[U64;PLZ@YR:B3;/(DED#=EC!#BT5 M^J,UD?F +MJI PV:>77UL]T1;+*A F4\WY-IR%K>_7 M2MKK>7[X0U5W1C\7E"6S!JA1!6KTRU5]]YP1'=%P6^"7UZE^T(:M,\BY66C3 M++)DUH![7<&]ME3%US;YV32++)DU^/G>VU+:ZTS/6RZTQA#$![UXQD\4T)XE M(-"F8HO_AVT9HCY+#W^+BU[0&SF;/(5Q@2 M4=AH#Z]WI1>/HM@?*1J*9_F.P1-7BJ?YX0ZP?I"9#OKZAG/UVC";$-4NU?0_ M4$L#!!0 ( "R#R%;N "88% 0 'L1 9 >&PO=V]R:W-H965TQC%F/R<0T?W(*?$/:\=(T4E26E/]3-IV!D.2HBB& E% 26/SN80A0I)!G' MOSFH5?A4AN7K5_0'35Z266(.4QI]#P.Q'5D#"P6PQFDDOM']1\@)=17>BD9< M_T?[;&RW9Z%5R@6-_Y$*4#"1.LX&7&WC'!IT3!GYNX/^N025\()M^&TDZ,IU_G\T]/\_=_ M/RW0-?H"4D*.WLY X##B[^2CY\4,O7WS#KU!(4%/6YIR3 (^M(5TKB#L5>YH MDCGR3CCRT9P2L>7H/0D@J-K;,N@B8>,7\^!KO,X)O*\),"Q"LD&1GH,K1!.5&!P)BN!% F: M-#>#"I9"DS)&*U5I[GB"5S"R9"GAP'9@C?_\P^TY?S7I="&PBFJ=0K7.^:H) M8#)AL&B28&+&/26S&G9[C#.U=626CZ[8J-7@[7Y:[-;[^FR>!XS,P8T9E\ M!P7?@9'O=[W90X#P3A+?0$Y;U8,FRF:P;@_%>N-JJ@=&T[8K_1=Q#!KCJ AT M6PATVTZ@(.0KFA*!V(ERF>&Y;FG.G1O'[Q^M#*/;MGK\TF>%N^L<.A['R/XA M%2D#U4R%<1I7'7X=R#N&8D_$R[K'U^'H_ MD2R)^M!$5H#H,@HW6/<-C4)X-2&ZCOH[EL(81-O5?RFTJF2'=M0UMXX?'A?H M/_0@^R>R"G&$-BEFF AH7BJ7;"BG%T6;70JMJN.A077-G>2'3#?*2JM,G=]T MZ9'91[FL18V:=NI5I]YJF;VWUNJB+:E=.I7&P#;Z=,^1WFBR8U[QM/B"<*_/ MS4?/)^[=-/L.<(#)/DO,,=N$LMN/8"TAG9N^3%*6G?2S&T$3??9=4B%/TOIR M"S@ I@;(]VM*Q>N-"\;5U%MI75[ZOLI64!!U(4K@9F4A9$&TF93D2E&>7P*)&JBH+(W]? Q&;J8>_EQE>Z7&E[PT\G)5G"$^AO MY:,T,[]5R6D!7%'!D83%U+O"E]=X8 /J)[Y3V*B],;*IS(7X:2>?\ZD76$? M(--6@IC+&FZ ,:MD?/S:BGHMTP;NCU_4/];)FV3F1,&-8#]HKE=3;^2A'!:D M8OJKV'R";4*UP4PP5?^B3?-L,O905BDMBFVP<5!0WES)\[80>P%AU!$0;@/" MVG<#JEW>$DW2B10;).W31LT.ZE3K:&..[N\^SNP_WL M"9VCCY6N)%@.+:H",3#YHI+\-J]!*W1Z"YI0IL[0":(MU0PP[J52DO4!2\0V$01NC;TRTZ/3E[+>.;1-ILPC:;L-:-.G0?2I!$ M4[Y$7ZQUI[-&(78KV$UPJ4J2P=0S_W(%<@U>^O8-3H+W/?ZBUE_4IYZ:=&-T M*L%NEQSDF#GON<*>T>Z(7%*NS Y9&.7@8FA LCGV M-!,MROJH,1?:'%SJX&PO=V]R:W-H965T(D]XSEGSDPT$S=2/>D2P* C9T(GN#2F6@2!SDO@1(]D!<*^[*7BQ%A3'0)= M*2"%!W$61&$X#SBA J>Q]VU4&LO:,"I@HY"N.2?J905,-@D>XY/CGAY*XQQ! M&E?D %LP/ZJ-LE;0LQ24@]!4"J1@G^#E>+&:NW@?\)-"H\_NR%6RD_+)&7=% M@D,G"!CDQC$0>SS#&AAS1%;&KXX3]RD=\/Q^8O_B:[>U[(B&M62/M#!E@C]B M5,">U,S:V-Y!W8*N!4M"\ANOSUL MT7OT2)0BPE#0Z,T-&$*9?AL'QN9QT4'><:Y:SN@*YP1E4IA2HUM10/$W/K#Z M>I'12>0J&B1<5FJ$)N$[%(719(!OTA<]\7S3*WP9%937_%)E@T W(0M=D1P2 M;$= @WH&G+Y^-9Z'GP=D37M9TT%97?=?4 6*RN*2O&&"S:=L0,:LES$;[@XY M7NO.(/ ?NS/O9K$]P=GT<% 'OR,TRF4M3#M(O;=?0\MV^OZ$ MMSLL(^I A48,]A8:CC[8AJEV+[2&D96?Q9TT=K+]M;2K%)0+L.][*G= M]*5B"_#$MCA)A/#M*]G&8",$SG%OX@>T?^W^O%IMU-L0^L*6&'/P%D<)ZQM+ MSE=WILG\)8X1:Y 53L0OF@ M1]8\"A,\I8"MXQC1[0A'9-,WH+%[\1@NEER^, >]%5K@&>;_KJ94/)F%2A#& M.&$A20#%\[XQA'<>[$J#=,37$&_8P3V0H3P3\B(?/@=]PY(>X0C[7$H@<7G% M8QQ%4DGX\3T7-8HYI>'A_4[]4QJ\".89,3PFT;4@#@QL]X2!G1O8EQHXN8%3 M-6B>,'!S S)1M Y6BA)F]2F*FU"#],Y'>?<2I^#84='\R> M)N-_;D?#V;T'QI.'Z?V7V?#I\^0+N 6S+!4 F8.A_#HAWX)U$F *QB1>H63[ M.P,S3OP7,%FEWW :H82!#Q[F*(S81R'Q*S !6R**V>X2)N!I2=8,)0'KF5Q$ M(/TP_=S;4>:M?<);!SR0A"\9N!=^! I[3V\/;8V *= 5_.P=OY&M51RN: ,X MU@VP+=M1.#2^W-Q6Q:,W_QLEPARJ9B]%XQ39X*1Z3LUL4'VI3,E5*\ER=<=6 MR,=]0]0CANDK-@:__0);UA\J2M<4\ZXD5B+H%@1=G?I@EJ;Y#9BL.>,BR<-D M<0-&>!$FB;@5)4JL$1^K>&:ZS5175NO7 71=JV>^'G+23EZ7TY7$2IR:!:?F M19S^I"CARJ4\:AX#J>+0SE$7QY7$2CA:!8[613CNWS#U0Z8&TCH" [-_#)AV MW\G%2\A@IP'M*C*M$[6174FMC&S?"4-MFW@>F79CRL7+62:69;5FZ9VHC>QG M=+YPW_I"?>];K[J=W[KRZ4H07;?AM*H0W>,2Z!ZEIZ<:5JJ4Y;#WG2S4M[*7 M+JY3FULN7W&_4PU2/:I=#?)G=+%PW\9"?1][Q.(1R\,G^:&?,(W!A_\PHNQC M*1643/33-,%6Z@ 7Q-F_\UT0H*WJ0&%\1JF5*T'WE()WH2_-G2^PJ9 J\]PW MP5#?!5_,\UR.Z:?9Q= ^C?$R@=8.PDDE3Z_TW@S==]%0WT8?$?V$0@J^HFB- MSV=EYV@-0JLA3U[*2U4]#%:7JG(8A"?JT;ZEAOJ>6AOAN3SIJGQRCXJ17#*&6.Z2$^+&?#).N'9@5WQMCB1'J;GL)7W(W@WSLZ5]S+9,?<# MHJ+E9B#"&PO=V]R:W-H965T M-VD:3;N?9 MA9. "C9CFV3FWX\QE!!":8IV\Q"P.;?/EV.?Z9ZR9QX""/0SB0F?::$0Z96N MX(AHWE3UK9@WI9F((P(K MAGB6))C]6D!,]S/-U%XZOD7;4.0=NC=-\1;6(/Y-5TRV],I*$"5 >$0)8K"9 M:7/S:FDZN8*2>(Q@SVOO*$=YHO0Y;WP)9IJ11P0Q^"(W@>5C!TN(X]R2C.-' M:52K?.:*]?<7ZQ\5O(1YPAR6-/X>!2*<:6,-!;#!62R^T?UG*(%4@#Z-N?I' M^U+6T)"?<4&34EE&D$2D>.*?Y4#4%*2==@6K5+":"L-7%.Q2P5:@160*ZQH+ M[$T9W2.62TMK^8L:&Z4M:2*23^-:,/DUDGK"6S_<+[]>+N;KFVNTO+]=W=RM MYP]?[N_0)5H7,XOH!BU#3+: (H+NLN0)6-YW1\GE(W ! ;I/\RGA2%"TRI@? MRF%%ZQ SX$J9)HF2 M+X]2]TN61<%BO<)BHUM*1,C1#0D@.-;7Y;A4@V.]#,["ZC0X3]D V<8%L@S+ M;HEG>;ZZU1&.7S9[YRKMI$J+ W;+>6YX8JGV(>9)C<_![8#S?OK#W-D M_-.&^1\9.X(>5M##+NM>L8XNU'+;J>5V@1:PC0B)R%;NX!@3']I&H##K*+-Y M,MMYYF0XU7=UL$[7/<&<"LPY"^P3PT0TEVN!X)PB& V"3A\]"485P>@L@B(+ MM &,3@ N7:=!T.FC)X%;$;AG$<@380.1R&2C#<,]Q3 ;%)U^>E*,*XKQN[>( M3(%O[(_QZ>*RQ@VJ3K\]J285U>2=5&T4DS,H3F4L>U+)' 5G&H=ST^@,[[NZ M(,C#;[X#)B\\Z"..&'K$<08]DE7IS*W%Z XLMP'2'5+/^3!K5P6S/W)'&BO- MFE:-;CPPS4G]UT3M#*4OJG5 M?JCOI[O2JM'I*/!R&K"=3KO"W>X1IB=!W8W MW!NIL#1]1.@,1LTMUQU!7\+#G<'LOC23.G_<94P#W<) ML_LR<29P*Z#3DGI.^=JDADXCB^JU0B0!ME7U&4<^S8@H:I*JMZH!YZKRT0_B M10%YBYG,FQS%L)&JQL"5 ;"B)BL:@J:JK'FB0A9)ZC64=2RP7$!^WU J7AJY M@ZHR]GX#4$L#!!0 ( "R#R%87+7 1+@0 1 9 >&PO=V]R:W-H M965T/'N 1&EWKUJUH-+= M_;"Z#X88$C6)6=N![7]_8R>$5YI2KBO=%_*:&<]O9FR/Z:X9?Q(^I1)^16$L M>H8OY?+2-,7,IQ$1-;:D,7Z9,QX1B8]\88HEI\332E%H.I;5-",2Q$:_J]^- M>;_+$AD&,1US$$D4$?Y\14.V[AFVL7GQ$"Q\J5Z8_>Z2+.B$RJ_+,<,P;VY=!N*@4M\2V@:[%S#PIERMB3>KCU>H:E/*(AG4EE@N!E M18H"^S9X@B0,IX.*: M2A*$XB/J/6Q%)EKDJQ:IP@ZID0>Y94YRWR_2GUW M7O#=A3L62U_ 3>Q1;U_?Q#CDP7 VP;AR2@T.EKP&KE4!QW+< G^&IZL[)>ZX M>6Y<;<]]*3#->%>!6Y^ M)H%\AML84Y*H#P)&TJ<<)&841DME3E3@GL4KS!I%C?LDFN)W3/HDS=&/!Q:& M@'-&6?RG*$LI1;V80JU#EV))9K1GX$(C*%]1H__G'W;3^JLHQ.]D;"_@]3S@ M]3+K_5$BA<1:#.)%!:[H(HACO,5E(B3QC,(%EFM:N!^+PI#:;FC;:O5<]5W; MZIJK7;K2\<^D:^1TC5(Z71)8(J]@-(XP.LT#BM)QSJ1HYA3-4HI;(9+7(9I' M$%6W<4!1.LZ9%*V.0 I'>I,D'8.TCY]RMSHZZGS MI7T\7]2RN8=6.OB9:)TRMI^&G2;* M_B\;AP[*2@?E8HR1U9546$C9.*W=2K)J[8-2*O?F7%IG2^N=0KDSY\)N.QZ[O.79@]VE M6Y;3-8_7DB*X8S&G4W,/MR9SYXP94;[01V\!,Y;$,CUNYF_SX_U 'VK-K7CZ MW\ =X;A""@CI'%6M6@O#R]/C=OH@V5*?6*=,XOE7W_J4>)0K ?P^9TQN'M0 M^9\>_7\!4$L#!!0 ( "R#R%;U [^090@ (=# 9 >&PO=V]R:W-H M965T$Q3);6Q:$%"T^H__E83 MT3 0.-T&3FW@/#7P=ABXM8'[7 .O-O!*9JJNE#P$F./I69X]H%R6%FCRH"2S MM!;=IZF\[@N>BU^IL./3Q:?K^1_O+F:+#P&:7U_=?/BXF'VZO/Z(WJ%9%%%Y M;7",+M-JA,DK]28@'-.8O15%/B\"].;'M^A'1%/T:945#*<1.QMRT3*)/PSK M5EQ4K7!VM,)%5UG*5PQ]2",2Z?9#T:-MMYS';ETX1L#9.C]!KO4S9:(.<^J:S'+ M7KV@/.HZXI457K=54IW\YZM<4C.!\*?,))OR&#Z MTP_VR/JEBTY(L (3*/:VU+MF="G<\Q6**(;&A$QDH4'$>1&:(UIA 3?3!+< M.;XK5+]$E;YV,[5=:W0VW#19,E;=ER4@,(TE?\N2;V3IAN2A&%SBQH!N2514 M+OQ2N@""9LME3I:8$_0KICGZ@N."H.M[M.!9^!5=KV79+@:K&FV[0:%U,IGX M3S@T-JPOAT!@&H>C+8G6^Y. MC7V\3'E.13@:HDWI<;)[Q(4W8N4LRTJOPP2GPG%1]C3$J#@\;8VU<6NH&=O0 MERX@,(TNVU*!G]67,*$+&!<1'$V7.G&=$9W5NN6Y;HLP09E-FM(288:U%F;$1ORH#0=,H<19FS+U(0+@L5,B05&@*%. Z+ M&.^FR SG[_9D9LO>M &AZ;2I@-\V!KG3*YK2I$@Z&0(-W$'1 B@TG345N]O> MZ^LD&S)JGX.B!5!H.M]*!=A[94"_R6V&,X0I9LO>M!TB[K=5X&^;(_\K_&WG MY 8*SVO6(-$"*#2=-:4=[/$1)C>D=IB#H@50:#K?2HO89M'0>W*;X4QW;E 1 M H6FTZ9DB&W6(7+)#]W$N'.-PVS;>[B!JA$H-'V]5LD1QWK]Z>U JH\Y*%H MA:;SK;2,8]8R'XODCN12PE2+FO(HS))$KG*6.J:NM)K\E+$"IV'GTI2YHMXD M@ZJ?&JTI4GW+:FHNG3ZE:QRS$&FN9K)ROC/TUQ61G/[=21*D.IF#H@50:#J5 M2NLX1\AN.* J"10M@$+3^58JR3&G."Y3RBF.T88P+E=ZUMO%_$XBO:YU>5?\ M/5FV,-?:FZ-#*!M'*1OG6!-9=1.J$TQ// M&;>X ]4K4&@Z=TJO.'OU2KE)00RH^B8A:N$Y#;DXK-@KA.?KU"YFZ-YW"U ] M X6FTZKTC'-ZA+LSJ X"10N@T/2='DH'N>:TC$RAIT_=0.DIY:POTDC\T#VP M*W<@SD5%+N_K,OVU.V/HMM,WHW8NHJ.4-VX5"\Q]>BEG2LNX9BWS >>IZ#&3 MW:THDTC5O MX+;#+;_#'<#N\SJ$#G*5#G+WZ*#%-1M^%!_HOWISTJYE.S-0[P$**I2@T'02 ME5!R_2,X!$A-- =%"Z#0=+Z5PG+-"NLRE5J=;O3=!M5DE_N"96));AVB>749 M#%/>7)%M[=:L9M/>C!Y"<[E*<[EFS76KW&?E!3[OC M DT6@: $4FDZB$E_N MY AN %25@:(%4&@ZWTJ5N>8LTZR^N;^ACYN2WW8R>-JZK9]V1?F@ @H*3=^_ MK024MV]?&Y2'W%.185'/;-E[I_4!Q4UH&@!%)K.IQ(UWN@(4QYT*QTH6@"%IO.M)(]GECRO-N7;:2C/;S\C MT%',[YKTAY XGI(XGCF_M" IS7*9" X+&5[*9:/GYISVKC"9Z^X]6$&E#A2: MSKN2.MX1$E >: (*%"V 0M.?[%3ZR3?+FKY;'_; &522V;+WLYR'4$F^4DF^ M624U'HFM'SU[U)JU?Y4)>WF:XWQ)>-O_UIZUD^+Z&7Y+VX/3>C(65&9!H55T M#AMO*$B(($"^Z8&A,"M27CW5OSV[?9O$K'R'PI/S%_;[>?5." 53O:+B2O!* M4X9B&ULK9;?4]LX$,?_%8VOQ7V.M;5EGR20NA_WY5LC'&$R\.]))*\^_5GURNMEGLA?Z@<0).GLN!JY>5: M5Z>^KY(<2JI.1 4&G7;F6\%#M= M, ZWDJA=65+Y\QP*L5]Y(^]YX8YMA/AA)M?IR@L,$120:"-!\>\1UE 41@DY M_FM$O?:=QK$[?E:_LL%C, ]4P5H4?[-4YRMO[I$4,KHK])W8?X8FH(G12T2A M["_9-[:!1Y*=TJ)LG)&@9+S^IT]-(CH.J.-V"!N'L.\P?L,A:APB&VA-9L.Z MH)K&2RGV1!IK5#,#FQOKC=$P;C[C1DM\RM!/Q]=?UE]O+LG]V3^7&_*)7/-$ ME$#NZ1.Y?,)244#N(!$\806C-N]'%Z I*]0Q6G_;7)"C#\?D V&0II*_]?0RHC2I\CNH\'!0\J^0)B8*/ M) S"R,&S?K][.( 3M4F.K%[TCB2[LE-[C]W>9B.?JHHFL/)PIRJ0C^#%?_XQ MF@9_N4+[G\1>!3IN QT/J<=7D(*D!4F$K(2D&K P;$%I+"@[/Z**5" 3X/K8 ME8I:'X\%\P)S!CW&P4DX6OJ/W1A_9_4*?M+"3P;AUZ*L=AI2 ECYB1ETX*'> M#2[D6G7:89E&?>!#FS 8+]R\TY9W.LB[T:\3#.HCX7CPBXQDS7>PY%F&T;C M:_E)!VH^[G$?FHRBL1M[UF+/!K$O( ,I,;L&CBJ%Q#3]%T\Z; [:>7C,#B#" M,.B!'MI,IV[.>=)'/[293-SDH^"E^P2# M[-?OVF&-2'?[S!>3'I[#* QG48_0[[3*$N36WB 4'E@[KNO^TJZVMY0SVYM[ MZ^?F]F);\(M,??6YH7++N"(%9"@9G,PP9;*^3=03+2K;D!^$QO9NASG>P$ : M WR>":&?)^8%[9TN_@502P,$% @ +(/(5N#OV&W/ @ - D !D !X M;"]W;W)K&ULK59A;]HP$/TK5E9-K;21D #M.HA$ MH=,ZC;8JZ[:O)CG JF-GMH'VW^_LA RV-&LEOH#MW'OG]WSRN;^1ZD$O 0QY MS+C0 V]I3'[N^SI90D9U2^8@\,M 40E('HI MH%,".LZ90HKS84P-C?M*;HBRT7&.AW>2@J&%B0;Y*KB["1L)A MKEHD"MZ1, BCFOV,FN%?J$!XV\';-?#QR^%!@YJH.IW(\44O.)TZ"1K4&KSX[9MV+_A8Y\PAR<8'(MMSK5.YUFEBCZ]$@C>@!EN: MW)9P4I4PEC:3*<'KDB2@L)J+"*@MW>8L7?($5-4!1XW USIY(+(])[N5D]U& MC6.9@38L(0+O!5G="_NFUEG72/O:PCPDV;@@.W-DMB>NX^A#J]OWUS4V]2J; M>O\K.#2*&/J(G3 !MJ8S#G6V--*\UI;>/TK:8>NT4E+(/5#&PA9_I\]DH!:N M7V,ER)4P1/&>F%"U8$(3#G.$!JU3/!=5].AB8F3NNM9, M&NR!;KC$9PTH&X#?YU*:[<0FJ!Y*\6]02P,$% @ +(/(5E%D&[^K @ M7@< !D !X;"]W;W)K&ULK55=;YLP%/TK%JNF M5MH*@816'4%*DU;+I&Y5TVY[=>$F6 6;V2;I_OVN#6&TI6BJ]@+^N.?XG&O[ M.MH)^: R $T>BYRKJ9-I79ZYKDHR**@Z%B5PG%D+65"-7;EQ52F!IA94Y*[O M>:%;4,:=.+)CUS*.1*5SQN%:$E45!96_SR$7NZDS2^RY+4O*"N"*"4XDK*?.;'0V#TV\#?C.8* //T OP'XSP'C M5P!! PBLT5J9M;6@FL:1%#LB332RF8;-C46C&\;-+JZTQ%F&.!TOO\Z_75V0 MV]G/BQ7Y2&Y 95)1BA/R0*VN,LE[IDFM_21S"6D3"MRN !-6:Z.$'"W6I## M@R-R0!@GMYFH%")5Y&K49E9PDT;'>:W#?T5'0*X$UYDB%SR%]"G>14^M,7]O M[-P?))R5\I@$W@?B>W[0HV<^#/]".<)'?? GJI E,';RK"N06G/C]NU'H?>JS]I_(GA@=MT;'0^SQ):0@:4YD]R2EG9.D M\20E]4GJ2T3-'EIV4X*V\>34\R)WVS4X*.&-!B>MP3T/O5H4OMFH4^D'P MS&!/U"3P3]JH6KG;*6$%R(VM[(HDHN*ZKF;M:/MXS&S-=/^&UR_/%94;QA7) M88U0[_@$4RSK:EYWM"AM0;P7&LNK;6;X ((T 3B_%D+O.V:!]DF-_P!02P,$ M% @ +(/(5F>&J!E% P @0P !D !X;"]W;W)K&ULM5=K;]LV%/TKA%84";!&LN0HC]H"'"O%/#1M4+=;@6$?&.G:TDJ1 M&DG;R;_?)25K?BA:,ZA?(I*ZY_">0^KF>K01\IO* #1Y+!A78R?3NKQV795D M4%!U)DK@^&8A9$$U3N725:4$FEI0P5S?\T*WH#EWHI%=NY?12*PTRSG<2Z)6 M14'ETPTPL1D[ V>[\"E?9MHLN-&HI$N8@_Y2WDN=H!?@WP#P'#9P!!#0B^%S"L 4/K3"7%^A!3 M3:.1%!LB332RF8$UTZ)1?L[-L<^UQ+'=+/D^^WL[)&S(7C$IR MRT$NG\B]%'_A\2@RX2F9K\J2 1ZXIHQ,J:I&KL:FJ YOL#R M!<_P?<#",.-K4-J<# X340#YXSV&D9F&0OW99GG%.6SG-(7F6I4T@;&#E42! M7(,3O?YI$'IOV_SJDRSNB6S/RV'CY;"+/=KQD2:)6.'S@3+*$VB]MQ59:,E, M<5U'@X'GC=SUKCF=.[[4G)8=_9T=]T2?-Z+/.T7?/I;XB4-*6+X (A;XN6Y= M:!/=31:2)Z"RS:UI)_"E1O1$MF=8V!@6=FI\+Y3Z;Y_"HZ-Z$_@'=^,X)AP< MW)^X,Y?_J?2B47K1J?2CSD"B3EM23@ O"E=PVJ:VD^>E]:1/LK@GLCW_+AO_ M+G] ;;[LT\L^R>*>R/:\O&J\O.KAJ[LZ+I!'%?DX)CR,B3MS>:E2=Z/!^LW@>EJUP__25,WY'97+G"O"8(&4WMD%%DA9 M-;S51(O2MH /0F-#:8<9_D8 :0+P_4((O9V8#9I?'=$_4$L#!!0 ( "R# MR%;-@Z0.. , &$) 9 >&PO=V]R:W-H965TVC#^)#&,)ST5.1=_)I"RO7%4'*/4@(K<]3VOY1:(4"?JF=@]CWIL+7-"\3T'L2X*Q'\/<!XV7<&C:M15^>;A!\$;\7!&+23 M1\:>].0F[3N>%H1SG$C-@-3?!H]PGFLB)>/7CM.I7ZF!A^,]^[7QKKP\(H%' M+/])4IGUG8X#*5ZB=2YG;#O!.S]-S9>P7)A?V.YR/0>2M9"LV(&5@H+0ZA\] M[^IP % \=H"_ _C'@/ -0+ #!,9HI ;SR6 6PV"QF-T,'Q:#X?<8%E-83&*8+Z:C M;Y/I]W$\F\/T&@:SKX,[.!]CB4@N+N S/,S'<'YV 6?@@L@0QP((A0=*I/AT M$%AD;"T0357P[,6\YTIE2,MRDYWX827>?T-\ +>,RDQ 3%.J;1&:L +;;%;8EL'J[K2) M_(;7[;F;0_FOD]IAIUDGO9#5K&4U3\KZ:9H!3@%M,%>]#>BZ>,0>DBZ%>>CA7?2UE>8ZX@%)Y, 8N;%(KMO:!".^R<:S4EO3&)]VM M=79/ZAQ7U?L'I=WW*+4E'2MU#TZK O.5.<0%)&Q-9=6JZVA]3QB8X_$H/E3W MA^JX_TM373YN$5\1*B#'2T7I7;;5*O/J0*\FDI7F3'QD4IVP9IBI.Q#F.D$] M7S(F]Q/]@OI6%?T!4$L#!!0 ( "R#R%86ODN4=P( -8% 9 >&PO M=V]R:W-H965T6.WPH0Y46CG5B(* M^4Y1PF ED-Q5%1:_ID#Y8>(,G.-$2K:E,A-N%-9X"VM0]_5*Z,CM6 I2 9.$ M,R1@,W'BP>5L:/)MPG<"!WDR1L;) ^>/)E@4$\WB0H6Z)LGJ!UMIQ]FR]OKI)TC9;7*$Z_QG?H,XJ+@I@+P101UKPJ MS4_]-PK@69RCP/B'?\X,>/;._A_MOR FZLP\L7_ /9]]W2@W+L)_%E/FE MK'$.$T?7L02Q!R=Z_VXP]K[T6?Q/9,\,#SO#P[?8HY@I4A"Z,Y6+4#=;-><8EN3+^:GNFDU/>8/3=/Q;K'8$B81A8VF],[.M2C1=)$F4+RVA?C ME2YK.RQUXP5A$O3ZAG-U#,P&72N/?@-02P,$% @ +(/(5H5AG1]S P M-@\ !D !X;"]W;W)K&ULK5=K;YLP%/TK%INF M5MH"@?!HER"E0-1JZD-AW3Z[X 2K@)GM)-N_GPV4I2EA9.-+8AN?Y MTQVASRQ!B(.?69JSF9)P7ERJ*HL2E$$V(@7*Q9,5H1GD8DK7*BLH@G$)RE)5 MUS1+S2#.%7=:KCU0=THV/,4Y>J" ;;(,TE]7*"6[F3)67A:6>)UPN:"ZTP*N M48CX8_% Q4QM6&*$;1CNV-P;R)$^$/,O)33Q3 M-)D02E'$)0,47UODH3251"*-'S6GTH24P/WQ"_NB/+LXRQ-DR"/I=QSS9*8X M"HC1"FY2OB2[:U2?QY1\$4E9^0EV]5Y- =&&<9+58)%!AO/J&_ZL==@#C"=' M 'H-T/L"C!I@] 5,:L#D$& > 9@UP.P;P:H!5JE])5:IM \Y=*>4[ "5NP6; M')1VE6@A,,[EBQ5R*IYB@>.N-P^O@7_S[<8/[OP0S.]\X-W?WM[?@?#KO?<% M+(.'QZ5W/0^#$)SYB$. Q6P!%+$ ,[!8XXY^R@6Q?AK M0C8,YC&;JEPD*L.I49U44"6E'TG* +%0=L3JF_G/)*[R2< M%W0$=.SN$JTW*:0@@BP!,=[B&.6QJ-V16$0Q*)!X1+),7!*B5D7/;99W M!CC5\HK,+LGDK;EUM9%N3M7MOI5#1@SZ1%S\9=,KZK-3>F]/5W&)%QL: M)>(29>!,E->JZ)ZWZ=W)>JK>0Y+Y0Y(%%9FY)_F%;IG6@3%O=]ECS;$OVJVQ M&FNL?[$F;K.CD^E4.X8D\X\3,1@RXF(@LLH>=>__?H;HNNS,F-!YD_/J3W&SVC1_\[+G M.5@/1%-8]7!_:*J.\A;2-W4[J7]$>[>':0\IN"5KB%D2RKW2/ORV MSY8R>4FG0F3DVRR*T_/6-,OFI^UV.IZ*69 >R;F(U9,GF\N&9S)11:%L;A+2+J8S8+D^Z6(Y/*\Y;7>;HS" MYVF6WV@/SN;!L[@7V=?Y7:*NVA7*))R). UE3!+Q=-ZZ\$XYZ^4!18H_0K%, MUWZ3O"J/4K[D%U>3\U8G+Y&(Q#C+(0+U[U4,113E2*H<_Y:@K2K//'#]]QOZ MYZ+RJC*/02J&,OHSG&33\U:_12;B*5A$V4@NOXBR0L#%/CHC?^870#O4M!1KN'DYM]7&' M_Q[$*MRSY6[4QJ]:SR_PV*;6*UN&#&4\%G&6!(681F'Z0OZZ%K-'D?Q-_B,7 MX[%GL5O3V4#'M( I%@' 1F$-BO".PC9-C?*D-G-DT9>9^=9Y?A257- M$X0,KX-_I$KSEO@V%OO,G,XB->UQ2# . C.:PNOHM\P.2K0E$HA#*!I'H9DL MKKVK>\XN?2>2G#SEQW+USHJ>6VF8J(M4/"M/EMEY+8U 9TUBG2._5Q.UNPB- M";-GVK5+VZ.:"7IX<6^?@=VE:-P7D6@G@]3--1/0-$X"LUD45L* MS_G"O:>BF4UQL$K:V!Y_8&'Q/TPU+N,UN[R]2X8T)M"0K- M; _M8;PN3-Y0GP)%XR@TDT5M53SGB_R>\N[9E.;5U0WU)1ORI!ODK2V'Y_8< M$'GO,%\C+4*A MF6V@318]ADD?:HV@:!R%9K*HK1%UK^_L)_WN%GF5A$%=$ K-)$R[(+K%!ZTG[R/[')O]NOR]^:K,?,9-Q=T@\RX6LSY&\Q M0]MUO>.LOXNPW85IO"L%:K)0:&9#:)/E>RAA^U!C!$7C*#2316V,?/>:TH[K MXB7*^DIU39=#2Y+:9SON+LM'Z[JV;VR+?8%)U[W$MI.PL=O-L/O-#K$\Y&O3 MY,.VG/E0VP-%XR@TDT5M>WSWVM)>,W:)O>VCG3T9Z]=E?PCKXFOKXF^Q+H>2 M?>U+_4ZRARX;0=$X"LUL)FV8?-@6-Q]J=Z!H'(5FLJCMCN]><]I/]GVK[-_- M]%!G@T(S"=/.QM_B; XV.M2_XNTT/D!7H:!H'(5F[D/7QHO!=M,QJ&N"HG$4 MFLFB=DWL@+OIF'5CV[OQP5V$QH0=PB Q;9"8VR =;'SX+!?)CJ."NXB-^S-T M20J%9C:/]G0,MB./02T7%(VCT$P6UP[Y''!''K-NCO/J&^?=16A,V"'<%=/N MBKG=534>I&_C ?)SOCOSQCT5N@Z%0C.)UV:.P;;H,:C7@J)Q%)K)HO9:[(!; M])AUNQP]J>O=GJRVZ,?=)6W*1'OM4+"JRW-QN#HEQ3Z:U7G9ZFYU@/NB.+9< MNW_IG0Y7Q[ US.I4^'60/(=Q2B+QI" [1STEB&1UT'IUD0)U/,G*;.WBSR#ZKC[X']02P,$% @ +(/(5O&&ULM9QO;]LX$H>_BN!;'%J@ MK27^E7I)@-;J]GI NT'2O7MQN!>*S23"VI)7DI/V/:I;5[\JY*O1?[LMJ MEC7Z8_4PK.>5RB9=H]ET2,)0#&=97@RN+KK?75=7%^6BF>:%NJZ">C&;9=7/ MCVI:/E\.HL'++V[RA\>F_<7PZF*>/:A;U?P^OZ[TI^':RR2?J:+.RR*HU/WE MX$/T/I6\;=!9_#-7S_7&ST$KY:XL_V@_?)E<#L(V(C55XZ9UD>G_GM1(3:>M M)QW'GRNG@_5WM@TW?W[Q_FLG7HNYRVHU*J?_RB?-X^4@'@03=9\MILU-^?QW MM1+4!3@NIW7W;_"\M.5D$(P7=5/.5HUU!+.\6/Z?_5@E8J,!#7'-&NRJXNJ? ZJUEI[:W_HDMFUUO+SHNWWVZ;2 M?\UUN^;J]M/GKY^^?0]N/EW_=O/]R[?/P:M4-5D^K5\'OP1Y$7Q_+!=U5DSJ MBV&COZ]M-1RO?']<^B8[?-/@:UDTCW7PJ9BHR7;[H8YS'2QY"?8C01U^F%?O M AJ^"4A(:/#[;1J\^N5U4*L'/1 ;(+[1X>[(BSO 38J[^4=6:#?1=E2(6KKN M&MKYI;NZ9JDKN%'SLFKRXB'X4BPGNIXP4&\LW3'877L!>5_/L[&Z'.@K1*VJ M)S6X^NM?(A'^#4I=G\[2GIQMI9&MT\@P[U>_S565=>E;#93@?\B0^;ATQCMG M[47SZ2JZ&#YM9@;]NF,STY.SK MLJ/04$N(7]2;1U5I/-F0_R8H%#CH5ZXV];P5Q)JV(\"*)W9?XU'YJMY@M>B( M[KY3F@;42Q*:[ <\UE<^M_H\#.TY#U@EDMMS'H_/5S\Q^LDA^K74E]D-"B; MU=R^<0%&A$A[D./Q^.HU !BA8'3U3:_[EMT+ZJ2NA"ATQK5K)5GL#.QS$%ID M$"W"&>W#K"7<_W;7K?9>G1=-5CSD=],=0]J%M"2V=0,@)X0M^QSX%1G^BG M2Y5V.\YW OVJ^=8UB4E;J&L4VZ,@Q0/Q%6H0+,(9[+IJ;TO-SS?!?)II F]O MU^K/13[O>#R;3/*==ZS(I2[!G-GL&A$'6/ 8?7-@T"S"V6RTJ*I.;5VK!I;J M@AZ[W9,4P"@ M$D(39P0#=K$@DMEZ7#N]Y.8AW:''4%2$8]3GLIP\Y],I*,*E(1*'#C,=9I;N M-=O>%S$\1' >^EXV+07O'%K$I1L]8D1B8P!DEY X"BT=*[NMH:673+'<(<0@ M#L$19PEV__ZJ9G>J^@\HI2<&60GNTUO:E[?MY!D^(J3?'2/2$]^LD$0-I!(>T8Y::Q&6Q5KC-Y("9#6QX4+ZB#; 1'-B\5IK$I;"WG#FW2LB, M,&+O&>(1^F; X!K!<6T?FQ-@E\P6NMV5X.+YR#><1G/,.Y%;B0EK$J+WF@*ST:+<5GV.?C!HNI*=Q(75Y3PIF MKY-'@%DL1&1?J?%@?,4:=J0X.UZ7S_I*_:68+/0=^F=PJ[\@'ZL:I4GB*]0PXH49\5#JFW4Y3ZAU\#V!18PXTEHFZ5X0+Z"#1Y2' _WE=PHP'HQ MLU$!L(I88A-SBL?BJ]50(<6I\-0U$77)C[O+ LA*1$ZWGP,/J<%#BN/AT6LB M"FS:13;TC@"KA"3.'#\'-5)#C12GQF-61!3:LTM"6[9KQ6-G\)\#'JF!1WI, MK?7 )1%U(5&0R.EUH.(:QS9*XO'YGJ(Q*,EPE-RW(&(N(T;$KLI 1HQ80O% M?(4:C&1[,-*_6,& 6FMLK_X!(^ZDX!SHQPSZ,;S0NG]=R-SZ*=7WYL2F%LB. M)%+:ES0\(%_!AL\8SF<'K@R9RV Z!"[L6QAD)T/A7-+PJ'Q5;YR,PV$-JWLP MH'X:,X=*#S-+\4!\A1I(8SBD[5L&,Q>_* VEO14Y@NPXY=(NC^#A^,HUG,;V M[=YU2^!<:WY9!(.J>T*H56[Z]);VY6T[@P;OF.QW[YX*=O(Z$-2( 9(=PNC*=X(+Y"#2&R/=N+!ZQ]&5 %EP06S"P MN1B+V+G.G ,)N4%"CB/AOK4O=VF/2N?P!F05$[MO\5!\I1HHY#@4GKKTY2[T M14S8ZR#(2G*;E?!0?5-AX) ?= KO\*4OA\[:V4?01I!5:$^,%(_-5[OA1(YS MHM#>OR @WJ C7M0#P_+5_;&@Q*G'=3C !B*]00X[\; ?U.' &C]L #1A%]G,6*1ZC;PX,^_%3#^IQ8"^/ M)LP1ZYH1&4MG2I\#S[C!,][+83X.(%A"B*,9.,M'J'L9.P>I<4-JW/_ 'PO66]N5M.\,&_$3/!6'1 M:T&X5V]I7]ZV#A0N A'.; MGB"KV'YT,<7#\95K.%&<5@P6+@(*^SF%$6 4A:%=#<(C\56Z\5#M>4O!P@5! M:6L<04;"+@3C@?HFPM"BZ+D0+%PJ?&N+&@%&[@,M>&2^R@TXBO[*P+BKH^\$ M (O:N3D'8 H#F.(,Q6+A,B4P,H -1&;O"^+1^3Z$;KA3GE8JED 5V#D& AD1 MNYOQ0'R%&N:49RL5XYZ/G1$2*#S;%\J^OG$[5X8>Y:DU90G4BA-GGPRRXLY= M 0_&5ZS!.]E+/5D"=>+(WB 805;">807C\A7L2$]Z5]+EL VH+WU?8!-BH?@ M*]'0G3RMBKQJOOE0G REO9J&K(A=%$GQ4(Z5.MQX0=1,50_=B[;J8%PNBF;Y M^J7U;]&PO=V]R:W-H965T5:(KI%(6=Z8IH@3R*FX9"44^&7!>$XE M3OG2%"4'.M>D/#,=RPK,G*:%$77TVHA'';:265K B!.QRG/*WVXA8YNN81N[ MA7&Z3*1:,*-.29

9E1 MGV5_TKE,NL:50>:PH*M,CMGF)]1^?!4O9IG03[*IL99!XI60+*_)J"!/B^I- MMW4=]@BV]P'!J0G._Q+N.2AIU.-L0KM 830UT;30;W:2%VL6) MY/@U19Z,)B^CT>/]T_UPVGLD#X-A;]@?X&@R[4WU*AD,'Y['3[WIX'E(OI-G MF0 G_17G4$C2$P*D(.=W(&F:B0L$O$SNR/G9!3DC:4&F"5L)6LQ%QY2H564T MXUK7;:7+^4!7K^27Q+6^$<=RW!9Z_S3]%RV0;K?13:Q04R:G*9.CX[F?4*8V MLU5TKSVZ.JDWHJ0Q= T\B@+X&HSHZQ<[L'ZT6?^D8.\*X3:%<$]%CP9%S'(@ MDF[5&5[AWN([AG1-9QD0W&N"24N:SG'_=TAHW?\J3Z#SJ%ZSCNS <7&SUOM> M6U"^ZX0-ZIT)KS'AG30QIAL\0Q)X2C.!0M?X,S/^UJ:R"N3OYW?LT#E0V8*R MKRVW7:7?J/1/JAS5A80MMFS17D3_*'%X%1RJ.P9YOF>WBPL:<<%)<;H1M"D* MCI(%MG5]H*@%Y ] J+G7?M75]T3Y,BT$R6"!/.LR1*.\NDZJB62E[L@S)K&_ZV&"-S!P M!<#O"\;D;J*:?'.G1_\ 4$L#!!0 ( "R#R%8-T#'"P0( *X' 9 M>&PO=V]R:W-H965TFW 0KTZ M(ZEZO*5+4H.>%&)E;'0@M8XC653VS['9IX M0NTO95147[1M;!T+I6LA6=Z(%4%.BOJ/7YL\[ G=.-*C>56D5#"KV+4\G5+%$ZF4R?)Y/[NX>[\:Q_CX:C M<7\\&*G6=-:?5:-H-!X^/CWT9Z/',?J*^FG*U[! =Z_J& D0Z/P6)"947*C) MY^DM.C^[0&>(%&B6L;7 Q4)T;:DX]6IVVC#=U$S>.TS]DE\BW_F"/,?S#?+! M:?D/7"BY:Y+;*CMMBKPV15[ES_^ %)F"K;T'9N_ZEEZ+$J?0L]0U%, W8"6? M/[F1\\T4^@Y,(OTV$?\I[LMO\E.5Z][&^AZ: :R]1Y457D4WBNG['Z]J; M_4@,5AVO$[56;Q"#%C$XB3CA[+&T?! =NQE1L'0U#E!E&"YX022<#(%QZO'%RY!W@&HS"*S7112Q>=I'N4&7 3472\ MF..ZG0,D@Y471N_L9MPRQ2>99DQBJBI]?>R@J3DFR/CH, 5!'(8'D :KJ\Y1 MXNR]:JI?L@?,5Z00B,)2Z9S+6$7)Z]>A[DA65@5VSJ0JUU4S4P\J<&V@YI>, MR5U'U^SVB4[^ 5!+ P04 " L@\A6?)'ZD\T" "R!P &0 'AL+W=O MQ_?5\18R+%L\!Z9W4BXRK/14;%R9"\")!674]3VOYV:8,"?LV[6Y"/N\ M4)0PF LDBRS#XGD(E.\'3MLY+-R3S5:9!3?LYW@#"U"K?"[TS*U9$I(!DX0S M)" =.%'[:M0S]M;@)X&]/!HCHV3-^8.93)*!XQF'@$*L# /6OQV,@%)#I-UX MK#B=^D@#/!X?V,=6N]:RQA)&G/XBB=H.G$L')9#B@JI[OO\!E9ZNX8LYE?:+ M]I6MYZ"XD(IG%5A[D!%6_O%3%8".B^!Y0L^("\-W@Y+]DXSNRD-5S+',0P<_?8EB!TXX>=/[9[WO4GZ!Y&] M"$2G#D3G%'NX8@)BO@.!UQ106K!$(ISQ@JDFV257SW*9 K8+=3)VQUI.GO9. M+=U:2_>DEKG@*4A9OI\4H.G>#TN*RR,)7LM_)>+D,>\4T:M%]/Z1D$(6VG\N M] M.!3P6YF$3!1G:""XEHOK3).PD[?]>R=Y?40J.HE0*VS?-&Z'I5D+=KM@S 2K7,AR M1!;&%!_"L)PM6$[+"U4P:9%,Z9P:V]7SL"PTHVD)I%R$O4XG#G/*)1D/Y3*_ MSDT9S-12FA&)FU#@;I_3$>G&[TG@Y"8J92-R?_;VQU*9JS>!NY^\.SGIW)]? M[%2/GHX*[K09'5.CF72E>Y70;W/:V'[P&;'ACD0C0&>\0%QL."&L.TO+:= M:G 5? (%=?MN75B'-HRZ865G3(A;> *_9SO:JZRU;QW8-=DTK:&ZZ612:2K:IFWM'_(JO]IQ=/FO+%>_5?8->SW6K]5#-]D_!I/Q,9@\BIH<'(/) MY/!-1H?I,:P/&:V3S,XYIHD&<%X)HR^>0X8^4- MG=H_4W;T[?B4970IS%T#CLBV_96E?)DGS:@;6(AZU+;]!:;7C9O#JLW%9 6! M3'^VUOANXQ7R?!U@>_I+?;2P/,+!=P&H'\OOS M0$WY.5$$NXIYPYY@'$D2#(%:]-=H'".K$\/'OS_84Q)%2>)' /,[B"(,@:<1 M1S 'X %#HJAZ#^Z]C\+->RK<_N]N_ M02P,$% @ +(/(5I>*NQS M$P( L !?3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:(7->=I3W;+T]!;X"O.DQQ M0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'D$WDKA"JH0TME6+!2L)LF];8QB,*KI0(V$[^?IM228[LG'7OK1Y ETLCGJL M/CW3^O)8JN]W9?F=/>5944T&N[K>7PZ'U7HGYE 4>VIZO$JS M6BI?U/):E8=]6MPWEX&[&&JWT<;A^-D%\5+]GS"6VVVZEGZY/N2RJ+LX*IDU M@$6U2_?5@!4BEY/!\10FB@WC10U!8D'170K.;>X4?CK8='== ZX60W69P@$5 M;%IP.DAO'L;S6>"["?=9G,#'+0^3F,VO&'>C4(,T$4CS'2&G[LP-/<[B&\Z3 M6 .T$$#K;(#LPT)HD#8":9]MJ.-D[FF0#@+IG W2<^,;#7*,0(YI(7T>>U&P M2()YV( E-YQ-EW$0\CAF;NAKD!\1R(^TD!%?\7#)8W85S6\9Q#6)7 \B^2U( M;IBWU" _(9"?B(<;QO3W=F09_VL9K-Q9.]H01!:$*ZY!?D8@/]-"NIXW7S98 M$? \-\X9!+([&#G]>3-T8 M4C)$;L'#V&URG\Z'*<,@=D80 A5GB?MW/V:8(0QB180\8<]<"QY!+>!&O:2! MB<$@-D.;;OU@%?@\]+MDVSP0(+-VI'5,3 T&M1N6@',+P8.'PN.-OII_NMX( M8U(PB*T0\^LF@8 4%O.H>6CU6AES@DGLA'BY6,S:? L)Y3D/P[=C,:5C8H8P MB0V!%E'_F#HF.O4@5@6.:>F8F#Y,8GV@U5X_FIA*3.HY"%;O]3$QHYCD1GE1 M5K$/B0"$ZC>=$/.+2>P7K8(YR8;YQ23VRUOUPC.HCHGYQ23VBUXVG(PA9A>3 MV"ZGZH=3D!9F&HO:-"\5>)(0DXQ%+!G4A;U\8V&2LYSBH9W846 M)AF+6#(X9B^:F&0L8LG@F(Z.B9G&HC8-JNS>H&/2L=YA4O,V9F_0,>E8Q-(Y ML9;$/OBR%FG6SYJ8?"QB^;PN?RZ85^;[LH"_JYB^G(WIQW[OQ2_ =#>;M#E1 M9#U,S$'V69;"?HVZCHDYR'Z_-3&(XTR*2E8G_S5M3$$V>:=%I[PZU ]VM)&6RWDO18=\YM02A1U^BN@.B:F()M806]6ZA8]+:9N2AM3D$VL( 2SR9XZ)B8AFUQ"VO3L@@7%NLPE2\03XT]P M6;U=B4G((9=0#S.$GYGOI8(3BWLV*W5,3$(.L81>8$:RDD*M=^V[";Y\T#$Q M"3G$$GJ!&9>94(P74MW_8 O5BR9F(8?80B=GYVZ21,%TF;A3'1.SD$-L(12S MES<=M.5/W?/'^A%]3,Q"#O5$Z'0_XE@CZ9B8A1QJ"[U>E#E1Q#F8@1QJ Z&K M,KHH'NL(8\Q X^X5N>-[<1NY30NY">$G*MB_ M%MEZH5CST77O;:?IOFT/6>;!OGDQ*\7F^)K=\17!K_\"4$L#!!0 ( "R# MR%;U29+, 0( %XD : >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'/- MVDMNHT 4A>&M6"P@Y?LB22O.J">91MD @'O0DJC-" M!>+RB\$G!#P\YT,W[?M3V>V'LO@X'DYEU>RF:?B54EGO\K$K-_V03^5\WX]"I-JAVD$*3U@PR" MK'Z00Y#7#PH(BOI!+02U]8-N(>BV?M =!-W5#[J'H/OZ0;)$&9<$23.L";06 MY%H(O!8$6PC$%B1;",P61%L(U!9D6PC<%H1;".06I%L([!;$6PCT5M1;"?16 MU%L)]-;9PS:!WHIZ*X'>BGHK@=Z*>BN!WHIZ*X'>BGHK@=Z*>BN!WHIZ*X'> MAGH;@=Z&>AN!WH9Z&X'>-GM90J"WH=Y&H+>AWD:@MZ'>1J"WH=Y&H+>AWD:@ MMZ'>1J"WH]Y.H+>CWDZ@MZ/>3J"WH]Y.H+?/7G83Z.VHMQ/H[:BW$^CMJ+<3 MZ.VHMQ/H[:BW$^@=J'<0Z!VH=Q#H':AW$.@=J'<0Z!VH=Q#H';./E01Z!^H= M!'H'ZAT$>@?J'01Z!^H=!'JWJ'=+H'>+>K<_J7>9/@^Y7'N^UGC]GZ1Z.I^; MKY>_++]VSF["!><$OQ,]_@502P,$% @ +(/(5M9,P)+@ 0 XR, !, M !;0V]N=&5N=%]4>7!E&ULS=K+3L,P$ 707XFR18WK5WF(L@&VT 4_ M8)()C9K$EFV@_#U."I5 I:(J$G?3J+4]=^*1SJJ7#V^.0K;NVC[,\V6,[H*Q M4"ZI,Z&PCOJT4EO?F9B^^B?F3+DR3\3$=#ICI>TC]7$2AQKYU>4-U>:YC=GM M.OT<&MO/^^I8R^4@HTLEQ3U@V+IRD#3G; MF3"L_!SP<>[^A;QO*LH6QL<[TZ5=;-VR$-]:"L7^$CMZM'7=E%39\KE+1XK@ M/)DJ+(EBUQ:;HB?[DV.Z8=I\\J/SQS+[ M/.A;@8V/X^_XZXRW]0_L0X#T(4'Z4"!] M:) ^9B!]G(+T<0;2QSE('WR*T@B*J!R%5(YB*D=!E:.HRE%8Y2BNNCM:L_CA^?16>:_C.? MC?_MN7H'4$L! A0#% @ +(/(5@=!36*! L0 ! M ( ! &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4 " L@\A6)(D2@>\ M K @ $0 @ &O 9&]C4')O<',O8V]R92YX;6Q02P$" M% ,4 " L@\A6F5R<(Q & "<)P $P @ '- 0 >&PO M=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( "R#R%;WW-E7P@4 -P> 8 M " @0X( !X;"]W;W)K&PO M=V]R:W-H965T&UL4$L! A0#% @ +(/(5O(+RS+!!@ M9QL !@ ("!1A, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ +(/(5N7B.C/Q!@ R!P !@ M ("!224 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ +(/(5DZ$ABT;!P *!, !@ ("!_DX 'AL+W=O&UL4$L! M A0#% @ +(/(5H%H"P_' P 1PH !D ("!1UH 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ +(/( M5C06\:RS @ @8 !D ("!8&X 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ +(/(5M"L#[1= P .PD M !D ("!P88 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ +(/(5J)M8FYE!P HAL !D M ("!]I$ 'AL+W=O&PO=V]R:W-H965T M !X;"]W;W)K&UL4$L! A0# M% @ +(/(5A[9RB[3 @ *P@ !D ("!&JX 'AL+W=O M5:L" #] M!0 &0 @($DL0 >&PO=V]R:W-H965T&UL4$L! A0#% @ +(/(5@^O M"&#J @ #@@ !D ("!';< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ +(/(5OK\H*KB @ 30< !D M ("!_\$ 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ +(/(5E+%Y/1! P MP@ !D ("! MRLX 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ +(/(5AOW3+F2 @ YP4 !D ("!_=@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ +(/(5BOCR<1H M! 5A !D ("!A.( 'AL+W=O"$" !!0 &0 M@($CYP >&PO=V]R:W-H965T&UL4$L! A0#% @ +(/(5I;BRT+2 @ K0P !D M ("!DNT 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ +(/(5NNXBD(N P B H !D ("!SO@ M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M+(/(5GVRA]BJ P )0\ !D ("!=P,! 'AL+W=O&PO=V]R:W-H965TP: 0!X;"]W;W)K&UL4$L! A0#% @ +(/(5F>&J!E% P @0P !D M ("!SAT! 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ +(/(5H5AG1]S P -@\ !D ("!9R&PO=V]R:W-H965T&UL4$L! A0#% @ +(/( M5L4W*M+> @ WP< !D ("!7SP! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ +(/(5H@'Z@LR P R!, M T ( !<$4! 'AL+W-T>6QE&PO=V]R:V)O;VLN>&UL4$L! A0#% @ +(/(5O5)DLP! @ 7B0 !H M ( !_DX! 'AL+U]R96QS+W=O XML 75 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 76 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 77 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.1 html 143 286 1 false 55 0 false 6 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.arganinc.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - CONSOLIDATED STATEMENTS OF EARNINGS Sheet http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings CONSOLIDATED STATEMENTS OF EARNINGS Statements 2 false false R3.htm 00200 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://www.arganinc.com/role/StatementConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 3 false false R4.htm 00205 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 4 false false R5.htm 00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Sheet http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Statements 5 false false R6.htm 00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 10101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION Sheet http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentation DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION Notes 7 false false R8.htm 10201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers REVENUES FROM CONTRACTS WITH CUSTOMERS Notes 8 false false R9.htm 10301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments CASH, CASH EQUIVALENTS AND INVESTMENTS Notes 9 false false R10.htm 10401 - Disclosure - ACCOUNTS RECEIVABLE Sheet http://www.arganinc.com/role/DisclosureAccountsReceivable ACCOUNTS RECEIVABLE Notes 10 false false R11.htm 10501 - Disclosure - INTANGIBLE ASSETS Sheet http://www.arganinc.com/role/DisclosureIntangibleAssets INTANGIBLE ASSETS Notes 11 false false R12.htm 10601 - Disclosure - FINANCING ARRANGEMENTS Sheet http://www.arganinc.com/role/DisclosureFinancingArrangements FINANCING ARRANGEMENTS Notes 12 false false R13.htm 10701 - Disclosure - COMMITMENTS Sheet http://www.arganinc.com/role/DisclosureCommitments COMMITMENTS Notes 13 false false R14.htm 10801 - Disclosure - LEGAL CONTINGENCIES Sheet http://www.arganinc.com/role/DisclosureLegalContingencies LEGAL CONTINGENCIES Notes 14 false false R15.htm 10901 - Disclosure - STOCK-BASED COMPENSATION Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensation STOCK-BASED COMPENSATION Notes 15 false false R16.htm 11001 - Disclosure - INCOME TAXES Sheet http://www.arganinc.com/role/DisclosureIncomeTaxes INCOME TAXES Notes 16 false false R17.htm 11101 - Disclosure - NET INCOME PER SHARE Sheet http://www.arganinc.com/role/DisclosureNetIncomePerShare NET INCOME PER SHARE Notes 17 false false R18.htm 11201 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES Sheet http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchases CASH DIVIDENDS AND COMMON STOCK REPURCHASES Notes 18 false false R19.htm 11301 - Disclosure - CUSTOMER CONCENTRATIONS Sheet http://www.arganinc.com/role/DisclosureCustomerConcentrations CUSTOMER CONCENTRATIONS Notes 19 false false R20.htm 11401 - Disclosure - SEGMENT REPORTING Sheet http://www.arganinc.com/role/DisclosureSegmentReporting SEGMENT REPORTING Notes 20 false false R21.htm 11501 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION Notes 21 false false R22.htm 20102 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies) Sheet http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies) Policies 22 false false R23.htm 30103 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Tables) Sheet http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationTables DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Tables) Tables http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentation 23 false false R24.htm 30203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables) Tables http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers 24 false false R25.htm 30303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables) Tables http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments 25 false false R26.htm 30503 - Disclosure - INTANGIBLE ASSETS (Tables) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsTables INTANGIBLE ASSETS (Tables) Tables http://www.arganinc.com/role/DisclosureIntangibleAssets 26 false false R27.htm 30703 - Disclosure - COMMITMENTS (Tables) Sheet http://www.arganinc.com/role/DisclosureCommitmentsTables COMMITMENTS (Tables) Tables http://www.arganinc.com/role/DisclosureCommitments 27 false false R28.htm 30903 - Disclosure - STOCK-BASED COMPENSATION (Tables) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationTables STOCK-BASED COMPENSATION (Tables) Tables http://www.arganinc.com/role/DisclosureStockBasedCompensation 28 false false R29.htm 31003 - Disclosure - INCOME TAXES (Tables) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesTables INCOME TAXES (Tables) Tables http://www.arganinc.com/role/DisclosureIncomeTaxes 29 false false R30.htm 31103 - Disclosure - NET INCOME PER SHARE (Tables) Sheet http://www.arganinc.com/role/DisclosureNetIncomePerShareTables NET INCOME PER SHARE (Tables) Tables http://www.arganinc.com/role/DisclosureNetIncomePerShare 30 false false R31.htm 31403 - Disclosure - SEGMENT REPORTING (Tables) Sheet http://www.arganinc.com/role/DisclosureSegmentReportingTables SEGMENT REPORTING (Tables) Tables http://www.arganinc.com/role/DisclosureSegmentReporting 31 false false R32.htm 31503 - 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 32 false false R33.htm 40101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION - Financial Instruments on a Recurring Basis (Details) Sheet http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION - Financial Instruments on a Recurring Basis (Details) Details 33 false false R34.htm 40201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Details) Sheet http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails REVENUES FROM CONTRACTS WITH CUSTOMERS (Details) Details http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables 34 false false R35.htm 40202 - 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 35 false false R36.htm 40203 - 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 40301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) Sheet http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails CASH, CASH EQUIVALENTS AND INVESTMENTS (Details) Details http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables 37 false false R38.htm 40302 - 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 38 false false R39.htm 40401 - Disclosure - ACCOUNTS RECEIVABLE (Details) Sheet http://www.arganinc.com/role/DisclosureAccountsReceivableDetails ACCOUNTS RECEIVABLE (Details) Details http://www.arganinc.com/role/DisclosureAccountsReceivable 39 false false R40.htm 40501 - Disclosure - INTANGIBLE ASSETS - Components of Intangible Assets (Details) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails INTANGIBLE ASSETS - Components of Intangible Assets (Details) Details 40 false false R41.htm 40502 - Disclosure - INTANGIBLE ASSETS - Additional Information (Details) Sheet http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails INTANGIBLE ASSETS - Additional Information (Details) Details 41 false false R42.htm 40601 - Disclosure - FINANCING ARRANGEMENTS (Details) Sheet http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails FINANCING ARRANGEMENTS (Details) Details http://www.arganinc.com/role/DisclosureFinancingArrangements 42 false false R43.htm 40701 - Disclosure - COMMITMENTS - Leases (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails COMMITMENTS - Leases (Details) Details 43 false false R44.htm 40702 - Disclosure - COMMITMENTS - Future minimum lease payments (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails COMMITMENTS - Future minimum lease payments (Details) Details 44 false false R45.htm 40703 - Disclosure - COMMITMENTS - Warranties (Details) Sheet http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails COMMITMENTS - Warranties (Details) Details 45 false false R46.htm 40901 - 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 46 false false R47.htm 40902 - 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 47 false false R48.htm 40903 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details) Details 48 false false R49.htm 40904 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details) Sheet http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails STOCK-BASED COMPENSATION - Additional Information (Details) Details 49 false false R50.htm 41001 - Disclosure - INCOME TAXES - Income Tax Expense Reconciliation (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails INCOME TAXES - Income Tax Expense Reconciliation (Details) Details 50 false false R51.htm 41002 - Disclosure - INCOME TAXES - Net Operating Loss Carryback (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails INCOME TAXES - Net Operating Loss Carryback (Details) Details 51 false false R52.htm 41003 - Disclosure - INCOME TAXES - Research and Development Tax Credits (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails INCOME TAXES - Research and Development Tax Credits (Details) Details 52 false false R53.htm 41004 - Disclosure - INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details) Sheet http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details) Details 53 false false R54.htm 41101 - Disclosure - NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN (Details) Sheet http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN (Details) Details 54 false false R55.htm 41102 - Disclosure - NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN - Additional information (Details) Sheet http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganAdditionalInformationDetails NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN - Additional information (Details) Details 55 false false R56.htm 41201 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details) Sheet http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details) Details http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchases 56 false false R57.htm 41301 - Disclosure - CUSTOMER CONCENTRATIONS (Details) Sheet http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails CUSTOMER CONCENTRATIONS (Details) Details http://www.arganinc.com/role/DisclosureCustomerConcentrations 57 false false R58.htm 41401 - Disclosure - SEGMENT REPORTING (Details) Sheet http://www.arganinc.com/role/DisclosureSegmentReportingDetails SEGMENT REPORTING (Details) Details http://www.arganinc.com/role/DisclosureSegmentReportingTables 58 false false R59.htm 41501 - 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 59 false false R60.htm 41502 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details) Details 60 false false R61.htm 41503 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details) Sheet http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details) Details 61 false false All Reports Book All Reports [dq-0542-Deprecated-Concept] Concept TreasuryStockShares in us-gaap/2022 used in 2 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. agx-20230430x10q.htm 11 [dq-0542-Deprecated-Concept] Concept TreasuryStockMember in us-gaap/2022 used in 7 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. agx-20230430x10q.htm 12 [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 12 fact(s) appearing in ix:hidden were eligible for transformation: agx:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRatePeriodForMonthlyClosingPrices, agx:WarrantyPeriodForConstructionContracts, dei:EntityRegistrantName, us-gaap:CommonStockDividendsPerShareCashPaid, us-gaap:CommonStockSharesIssued, us-gaap:DebtSecuritiesAvailableForSaleTerm, us-gaap:PreferredStockSharesIssued, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1, us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage - agx-20230430x10q.htm 9 [ix-0514-Hidden-Fact-Not-Referenced] WARN: 2 fact(s) appearing in ix:hidden were not referenced by any -sec-ix-hidden style property: us-gaap:CommitmentsAndContingencies - agx-20230430x10q.htm 9 agx-20230430x10q.htm agx-20230430.xsd agx-20230430_cal.xml agx-20230430_def.xml agx-20230430_lab.xml agx-20230430_pre.xml agx-20230430xex31d1.htm agx-20230430xex31d2.htm agx-20230430xex32d1.htm agx-20230430xex32d2.htm agx-20230430x10q001.jpg http://fasb.org/us-gaap/2022 http://xbrl.sec.gov/dei/2022 true true JSON 80 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "agx-20230430x10q.htm": { "axisCustom": 0, "axisStandard": 25, "baseTaxonomies": { "http://fasb.org/us-gaap/2022": 601, "http://xbrl.sec.gov/dei/2022": 29 }, "contextCount": 143, "dts": { "calculationLink": { "local": [ "agx-20230430_cal.xml" ] }, "definitionLink": { "local": [ "agx-20230430_def.xml" ] }, "inline": { "local": [ "agx-20230430x10q.htm" ] }, "labelLink": { "local": [ "agx-20230430_lab.xml" ] }, "presentationLink": { "local": [ "agx-20230430_pre.xml" ] }, "schema": { "local": [ "agx-20230430.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd", "https://xbrl.sec.gov/country/2022/country-2022.xsd", "https://xbrl.sec.gov/dei/2022/dei-2022.xsd" ] } }, "elementCount": 449, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2022": 15, "http://www.arganinc.com/20230430": 3, "http://xbrl.sec.gov/dei/2022": 6, "total": 24 }, "keyCustom": 37, "keyStandard": 249, "memberCustom": 20, "memberStandard": 34, "nsprefix": "agx", "nsuri": "http://www.arganinc.com/20230430", "report": { "R1": { "firstAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "00090 - Document - Document and Entity Information", "menuCat": "Cover", "order": "1", "role": "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation", "shortName": "Document and Entity Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "agx:TradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10401 - Disclosure - ACCOUNTS RECEIVABLE", "menuCat": "Notes", "order": "10", "role": "http://www.arganinc.com/role/DisclosureAccountsReceivable", "shortName": "ACCOUNTS RECEIVABLE", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "agx:TradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10501 - Disclosure - INTANGIBLE ASSETS", "menuCat": "Notes", "order": "11", "role": "http://www.arganinc.com/role/DisclosureIntangibleAssets", "shortName": "INTANGIBLE ASSETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10601 - Disclosure - FINANCING ARRANGEMENTS", "menuCat": "Notes", "order": "12", "role": "http://www.arganinc.com/role/DisclosureFinancingArrangements", "shortName": "FINANCING ARRANGEMENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10701 - Disclosure - COMMITMENTS", "menuCat": "Notes", "order": "13", "role": "http://www.arganinc.com/role/DisclosureCommitments", "shortName": "COMMITMENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10801 - Disclosure - LEGAL CONTINGENCIES", "menuCat": "Notes", "order": "14", "role": "http://www.arganinc.com/role/DisclosureLegalContingencies", "shortName": "LEGAL CONTINGENCIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10901 - Disclosure - STOCK-BASED COMPENSATION", "menuCat": "Notes", "order": "15", "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensation", "shortName": "STOCK-BASED COMPENSATION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11001 - Disclosure - INCOME TAXES", "menuCat": "Notes", "order": "16", "role": "http://www.arganinc.com/role/DisclosureIncomeTaxes", "shortName": "INCOME TAXES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11101 - Disclosure - NET INCOME PER SHARE", "menuCat": "Notes", "order": "17", "role": "http://www.arganinc.com/role/DisclosureNetIncomePerShare", "shortName": "NET INCOME PER SHARE", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "agx:PaymentOfSpecialCashDividendsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11201 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES", "menuCat": "Notes", "order": "18", "role": "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchases", "shortName": "CASH DIVIDENDS AND COMMON STOCK REPURCHASES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "agx:PaymentOfSpecialCashDividendsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11301 - Disclosure - CUSTOMER CONCENTRATIONS", "menuCat": "Notes", "order": "19", "role": "http://www.arganinc.com/role/DisclosureCustomerConcentrations", "shortName": "CUSTOMER CONCENTRATIONS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00100 - Statement - CONSOLIDATED STATEMENTS OF EARNINGS", "menuCat": "Statements", "order": "2", "role": "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings", "shortName": "CONSOLIDATED STATEMENTS OF EARNINGS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-3", "lang": null, "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11401 - Disclosure - SEGMENT REPORTING", "menuCat": "Notes", "order": "20", "role": "http://www.arganinc.com/role/DisclosureSegmentReporting", "shortName": "SEGMENT REPORTING", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11501 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION", "menuCat": "Notes", "order": "21", "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConsolidationPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "20102 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies)", "menuCat": "Policies", "order": "22", "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies", "shortName": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConsolidationPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "agx:TreasuryStockPolicyTextBlock", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30103 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Tables)", "menuCat": "Tables", "order": "23", "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationTables", "shortName": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "agx:TreasuryStockPolicyTextBlock", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)", "menuCat": "Tables", "order": "24", "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30303 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)", "menuCat": "Tables", "order": "25", "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30503 - Disclosure - INTANGIBLE ASSETS (Tables)", "menuCat": "Tables", "order": "26", "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsTables", "shortName": "INTANGIBLE ASSETS (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30703 - Disclosure - COMMITMENTS (Tables)", "menuCat": "Tables", "order": "27", "role": "http://www.arganinc.com/role/DisclosureCommitmentsTables", "shortName": "COMMITMENTS (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30903 - Disclosure - STOCK-BASED COMPENSATION (Tables)", "menuCat": "Tables", "order": "28", "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables", "shortName": "STOCK-BASED COMPENSATION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31003 - Disclosure - INCOME TAXES (Tables)", "menuCat": "Tables", "order": "29", "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesTables", "shortName": "INCOME TAXES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00200 - Statement - CONSOLIDATED BALANCE SHEETS", "menuCat": "Statements", "order": "3", "role": "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets", "shortName": "CONSOLIDATED BALANCE SHEETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31103 - Disclosure - NET INCOME PER SHARE (Tables)", "menuCat": "Tables", "order": "30", "role": "http://www.arganinc.com/role/DisclosureNetIncomePerShareTables", "shortName": "NET INCOME PER SHARE (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31403 - Disclosure - SEGMENT REPORTING (Tables)", "menuCat": "Tables", "order": "31", "role": "http://www.arganinc.com/role/DisclosureSegmentReportingTables", "shortName": "SEGMENT REPORTING (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31503 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)", "menuCat": "Tables", "order": "32", "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationTables", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "agx:TreasuryStockPolicyTextBlock", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_4hQjVj60qUiQvDZqz8eOlA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AssetsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION - Financial Instruments on a Recurring Basis (Details)", "menuCat": "Details", "order": "33", "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails", "shortName": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION - Financial Instruments on a Recurring Basis (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "agx:TreasuryStockPolicyTextBlock", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_4hQjVj60qUiQvDZqz8eOlA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AssetsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2022_To_1_31_2023_zT5OgKFZXEiu-2e-XFlEyw", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS (Details)", "menuCat": "Details", "order": "34", "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2022_To_1_31_2023_zT5OgKFZXEiu-2e-XFlEyw", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_agx_cnst_date_20230501_PB09cmkvYEa97AvKWo04gw", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40202 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details)", "menuCat": "Details", "order": "35", "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS - Remaining Unsatisfied Performance Obligations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_agx_cnst_date_20230501_PB09cmkvYEa97AvKWo04gw", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40203 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details)", "menuCat": "Details", "order": "36", "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS - Disaggregation of Revenues (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_srt_StatementGeographicalAxis_country_US_Zm4npULCx0mRbOUT5gsswA", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "p", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-5", "first": true, "lang": null, "name": "agx:AccruedInvestmentIncomeDividendReceivable", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS (Details)", "menuCat": "Details", "order": "37", "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-5", "first": true, "lang": null, "name": "agx:AccruedInvestmentIncomeDividendReceivable", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "p", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40302 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details)", "menuCat": "Details", "order": "38", "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS - Available-for-Sale Securities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "p", "agx:TradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:AllowanceForNotesAndLoansReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40401 - Disclosure - ACCOUNTS RECEIVABLE (Details)", "menuCat": "Details", "order": "39", "role": "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails", "shortName": "ACCOUNTS RECEIVABLE (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "agx:TradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:AllowanceForNotesAndLoansReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "Unit_Divide_USD_shares_EVII8NBZ7kebcPBHuOE2-A", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00205 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)", "menuCat": "Statements", "order": "4", "role": "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical", "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "Unit_Divide_USD_shares_EVII8NBZ7kebcPBHuOE2-A", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40501 - Disclosure - INTANGIBLE ASSETS - Components of Intangible Assets (Details)", "menuCat": "Details", "order": "40", "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails", "shortName": "INTANGIBLE ASSETS - Components of Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "agx:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40502 - Disclosure - INTANGIBLE ASSETS - Additional Information (Details)", "menuCat": "Details", "order": "41", "role": "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "shortName": "INTANGIBLE ASSETS - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_us-gaap_BusinessAcquisitionAxis_agx_RobertsCompanyIncMember_jDXmNcAuJkqkhGaSsbWoQw", "decimals": "-5", "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_3_6_2023_To_3_6_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_Qk5nyt9VfUWxUpM-jkBj2w", "decimals": "-5", "first": true, "lang": null, "name": "agx:LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40601 - Disclosure - FINANCING ARRANGEMENTS (Details)", "menuCat": "Details", "order": "42", "role": "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails", "shortName": "FINANCING ARRANGEMENTS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_3_6_2023_To_3_6_2023_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_Qk5nyt9VfUWxUpM-jkBj2w", "decimals": "-5", "first": true, "lang": null, "name": "agx:LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40701 - Disclosure - COMMITMENTS - Leases (Details)", "menuCat": "Details", "order": "43", "role": "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "shortName": "COMMITMENTS - Leases (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40702 - Disclosure - COMMITMENTS - Future minimum lease payments (Details)", "menuCat": "Details", "order": "44", "role": "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails", "shortName": "COMMITMENTS - Future minimum lease payments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R45": { "firstAnchor": null, "groupType": "disclosure", "isDefault": "false", "longName": "40703 - Disclosure - COMMITMENTS - Warranties (Details)", "menuCat": "Details", "order": "45", "role": "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "shortName": "COMMITMENTS - Warranties (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R46": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_1_31_2023_qhtdSKJfR0GFAqASCh8t2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "reportCount": 1, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40901 - Disclosure - STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details)", "menuCat": "Details", "order": "46", "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails", "shortName": "STOCK-BASED COMPENSATION - Summary of Activity under Company's Stock Option Plans (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-3", "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_1_31_2023_qhtdSKJfR0GFAqASCh8t2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40902 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details)", "menuCat": "Details", "order": "47", "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails", "shortName": "STOCK-BASED COMPENSATION - Summary of Change in Number of Non-Vested Options to Purchase Shares of Common Stock (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_1_31_2023_qhtdSKJfR0GFAqASCh8t2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_1_31_2023_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember_ieUo2SIuUkSP3JoVPZhylw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40903 - Disclosure - STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details)", "menuCat": "Details", "order": "48", "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails", "shortName": "STOCK-BASED COMPENSATION - Summary of Change in restricted stock units (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_1_31_2023_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember_ieUo2SIuUkSP3JoVPZhylw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockDividendsShares", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40904 - Disclosure - STOCK-BASED COMPENSATION - Additional Information (Details)", "menuCat": "Details", "order": "49", "role": "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "shortName": "STOCK-BASED COMPENSATION - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockDividendsShares", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_1_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DWoKQL_orUOg0ucHQxBcyg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "menuCat": "Statements", "order": "5", "role": "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity", "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_1_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_DWoKQL_orUOg0ucHQxBcyg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_QcMQsxriPkGjMYEVp4pf0Q", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41001 - Disclosure - INCOME TAXES - Income Tax Expense Reconciliation (Details)", "menuCat": "Details", "order": "50", "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails", "shortName": "INCOME TAXES - Income Tax Expense Reconciliation (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_QcMQsxriPkGjMYEVp4pf0Q", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "agx:IncreaseInLossCarrybackPeriodForCertainLosses", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41002 - Disclosure - INCOME TAXES - Net Operating Loss Carryback (Details)", "menuCat": "Details", "order": "51", "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails", "shortName": "INCOME TAXES - Net Operating Loss Carryback (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "agx:IncreaseInLossCarrybackPeriodForCertainLosses", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:IncomeTaxReconciliationTaxCreditsResearch", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41003 - Disclosure - INCOME TAXES - Research and Development Tax Credits (Details)", "menuCat": "Details", "order": "52", "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails", "shortName": "INCOME TAXES - Research and Development Tax Credits (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:IncomeTaxReconciliationTaxCreditsResearch", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:EquityMethodInvestments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41004 - Disclosure - INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details)", "menuCat": "Details", "order": "53", "role": "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails", "shortName": "INCOME TAXES - Solar Energy Projects And Supplemental Cash Flow Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:EquityMethodInvestments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41101 - Disclosure - NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN (Details)", "menuCat": "Details", "order": "54", "role": "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails", "shortName": "NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-3", "lang": null, "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41102 - Disclosure - NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN - Additional information (Details)", "menuCat": "Details", "order": "55", "role": "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganAdditionalInformationDetails", "shortName": "NET INCOME PER SHARE ATTRIBUTABLE TO THE STOCKHOLDERS OF ARGAN - Additional information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_z6FgkreQgUirKSm72NwHyw", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "p", "agx:PaymentOfSpecialCashDividendsTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_4_10_2023_To_4_10_2023_JUeP-Gt1oUSlU9GMwR28LA", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unique": true, "unitRef": "Unit_Divide_USD_shares_EVII8NBZ7kebcPBHuOE2-A", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41201 - Disclosure - CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details)", "menuCat": "Details", "order": "56", "role": "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "shortName": "CASH DIVIDENDS AND COMMON STOCK REPURCHASES (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "agx:PaymentOfSpecialCashDividendsTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_4_10_2023_To_4_10_2023_JUeP-Gt1oUSlU9GMwR28LA", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unique": true, "unitRef": "Unit_Divide_USD_shares_EVII8NBZ7kebcPBHuOE2-A", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_Qfbgk28V6EOcRbOGRQjZCw", "decimals": "INF", "first": true, "lang": null, "name": "agx:NumberOfMajorCustomers", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_customer_EiAR2m-zKUK7mzQQEpX5RQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41301 - Disclosure - CUSTOMER CONCENTRATIONS (Details)", "menuCat": "Details", "order": "57", "role": "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "shortName": "CUSTOMER CONCENTRATIONS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_Qfbgk28V6EOcRbOGRQjZCw", "decimals": "INF", "first": true, "lang": null, "name": "agx:NumberOfMajorCustomers", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_customer_EiAR2m-zKUK7mzQQEpX5RQ", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_segment_jmSlTNyLmkChJ8YBbqGiPQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41401 - Disclosure - SEGMENT REPORTING (Details)", "menuCat": "Details", "order": "58", "role": "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "shortName": "SEGMENT REPORTING (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_segment_jmSlTNyLmkChJ8YBbqGiPQ", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "agx:IncomeTaxRefundsAndPrepaidIncomeTaxes", "reportCount": 1, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41501 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details)", "menuCat": "Details", "order": "59", "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Other Current Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfOtherCurrentAssetsTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "lang": null, "name": "us-gaap:InventoryRawMaterials", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "menuCat": "Statements", "order": "6", "role": "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": "-3", "lang": null, "name": "us-gaap:IncreaseDecreaseInAccruedInterestReceivableNet", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AccruedEmployeeBenefitsCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41502 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details)", "menuCat": "Details", "order": "60", "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Accrued Expenses (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "As_Of_4_30_2023_DfGEnhZBNkmcFg_fidlxog", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AccruedEmployeeBenefitsCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "p", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_3_7_2023_To_3_7_2023_us-gaap_UnusualOrInfrequentItemAxis_agx_FraudulentlyInducedPaymentMember_uDIkSyD3c0ag2C3XKQ56kQ", "decimals": "-5", "first": true, "lang": null, "name": "agx:UnusualOrInfrequentItemUnrecoverableFundsAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41503 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details)", "menuCat": "Details", "order": "61", "role": "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:AdditionalFinancialInformationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_3_7_2023_To_3_7_2023_us-gaap_UnusualOrInfrequentItemAxis_agx_FraudulentlyInducedPaymentMember_uDIkSyD3c0ag2C3XKQ56kQ", "decimals": "-5", "first": true, "lang": null, "name": "agx:UnusualOrInfrequentItemUnrecoverableFundsAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_sDmEkh4TjUezXdgP6UHKCg", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10101 - Disclosure - DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION", "menuCat": "Notes", "order": "7", "role": "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentation", "shortName": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10201 - Disclosure - REVENUES FROM CONTRACTS WITH CUSTOMERS", "menuCat": "Notes", "order": "8", "role": "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers", "shortName": "REVENUES FROM CONTRACTS WITH CUSTOMERS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10301 - Disclosure - CASH, CASH EQUIVALENTS AND INVESTMENTS", "menuCat": "Notes", "order": "9", "role": "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments", "shortName": "CASH, CASH EQUIVALENTS AND INVESTMENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "agx-20230430x10q.htm", "contextRef": "Duration_2_1_2023_To_4_30_2023_SptEU9qggkWsSU_WWyL5CA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 55, "tag": { "agx_AccruedInvestmentIncomeDividendReceivable": { "auth_ref": [], "crdr": "debit", "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" } } }, "localname": "AccruedInvestmentIncomeDividendReceivable", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "monetaryItemType" }, "agx_AccruedLeaseLiabilitiesCurrent": { "auth_ref": [], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "order": 3.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "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" } } }, "localname": "AccruedLeaseLiabilitiesCurrent", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails" ], "xbrltype": "monetaryItemType" }, "agx_AccruedProjectCostsCurrent": { "auth_ref": [], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "order": 2.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "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": "Project costs" } } }, "localname": "AccruedProjectCostsCurrent", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails" ], "xbrltype": "monetaryItemType" }, "agx_AvailableForSaleSecuritiesPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for available-for-sale securities.", "label": "Available-For-Sale Securities [Policy Text Block]", "terseLabel": "Available-For-Sale Securities" } } }, "localname": "AvailableForSaleSecuritiesPolicyTextBlock", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "xbrltype": "textBlockItemType" }, "agx_CommitmentDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "No definition available.", "label": "COMMITMENTS" } } }, "localname": "CommitmentDisclosureAbstract", "nsuri": "http://www.arganinc.com/20230430", "xbrltype": "stringItemType" }, "agx_DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearOneToTwo": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year to second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year One to Two", "terseLabel": "Amortized cost, Due in one to two years" } } }, "localname": "DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearOneToTwo", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "agx_DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearTwoToThree": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second fiscal year though third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year Two to Three", "terseLabel": "Amortized Cost, Due in two to three years" } } }, "localname": "DebtSecuritiesAvailableForSaleAmortizedCostMaturityAllocatedAndSingleMaturityDateYearTwoToThree", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "agx_DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearOneToTwo": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year to second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One to Two", "terseLabel": "Fair value, Due in one to two years" } } }, "localname": "DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearOneToTwo", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "agx_DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearTwoToThree": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second fiscal year through Third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year Two to Three", "terseLabel": "Fair Value, Due in two to three years" } } }, "localname": "DebtSecuritiesAvailableForSaleFairValueMaturityAllocatedAndSingleMaturityDateYearTwoToThree", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "agx_DocumentAndEntityInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Document and entity information.", "label": "Document And Entity Information" } } }, "localname": "DocumentAndEntityInformationAbstract", "nsuri": "http://www.arganinc.com/20230430", "xbrltype": "stringItemType" }, "agx_DomesticNetOperatingLossCarryback": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of domestic net operating loss carryback.", "label": "Domestic Net Operating Loss Carryback", "terseLabel": "Domestic net operating loss carryback" } } }, "localname": "DomesticNetOperatingLossCarryback", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails" ], "xbrltype": "monetaryItemType" }, "agx_EarningsPerSharePerformanceBasedRestrictedStockUnitsMember": { "auth_ref": [], "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" } } }, "localname": "EarningsPerSharePerformanceBasedRestrictedStockUnitsMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_EffectiveIncomeTaxRateReconciliationStockAwardValuationAllowances": { "auth_ref": [], "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "order": 4.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to stock award valuation allowances.", "label": "Effective Income Tax Rate Reconciliation, Stock Award Valuation Allowances", "negatedLabel": "Deferred tax asset adjustments" } } }, "localname": "EffectiveIncomeTaxRateReconciliationStockAwardValuationAllowances", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "agx_FraudulentlyInducedPaymentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information relating to fraudulently induced outbound wire transfer to third party of complex criminal scheme.", "label": "Fraudulently Induced Payment" } } }, "localname": "FraudulentlyInducedPaymentMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_GemmaPowerSystemLlcMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The Gemma Power System, LLC.", "label": "GPS." } } }, "localname": "GemmaPowerSystemLlcMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_GemmaPowerSystemsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Gemma power systems.", "label": "GPS" } } }, "localname": "GemmaPowerSystemsMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "domainItemType" }, "agx_IncentiveStockOptionsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents Incentive Stock Options.", "label": "ISOs/NSOs" } } }, "localname": "IncentiveStockOptionsMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_IncomeTaxRefundsAndPrepaidIncomeTaxes": { "auth_ref": [], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_OtherAssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "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" } } }, "localname": "IncomeTaxRefundsAndPrepaidIncomeTaxes", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails", "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails" ], "xbrltype": "monetaryItemType" }, "agx_IncreaseInLossCarrybackPeriodForCertainLosses": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the increase in loss carryback period for certain losses.", "label": "Increase In Loss Carryback Period For Certain Losses", "terseLabel": "Increase in loss carryback period for certain losses" } } }, "localname": "IncreaseInLossCarrybackPeriodForCertainLosses", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails" ], "xbrltype": "durationItemType" }, "agx_IndustrialFabricationAndFieldServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Industrial fabrication and field services.", "label": "Industrial Services" } } }, "localname": "IndustrialFabricationAndFieldServicesMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "agx_IndustryServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Industry services.", "label": "Industry services" } } }, "localname": "IndustryServicesMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "agx_InvestmentMaturityPeriod": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the maturity period of investments.", "label": "Investment Maturity Period", "terseLabel": "Maturity period" } } }, "localname": "InvestmentMaturityPeriod", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "durationItemType" }, "agx_InvestmentsTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Term of investment, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Investments, Term", "terseLabel": "Expected life of investment" } } }, "localname": "InvestmentsTerm", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "xbrltype": "durationItemType" }, "agx_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": { "auth_ref": [], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due 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": "Lessee, Operating Lease, Liability, to be Paid, after Year Four", "terseLabel": "Thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "agx_LettersOfCreditExpireOnMay312024Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to letters of credit expire on May 31, 2024.", "label": "Expires on May 31, 2024" } } }, "localname": "LettersOfCreditExpireOnMay312024Member", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "domainItemType" }, "agx_LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity": { "auth_ref": [], "crdr": "credit", "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" } } }, "localname": "LineOfCreditFacilityContingentIncreaseAdditionalBorrowingCapacity", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "monetaryItemType" }, "agx_MajorCustomerFourMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Major customer four.", "label": "Major Customer Four" } } }, "localname": "MajorCustomerFourMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "agx_MajorCustomerOneMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Major customer one.", "label": "Major Customer One [Member]" } } }, "localname": "MajorCustomerOneMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "agx_MajorCustomerThreeMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Major customer three.", "label": "Major Customer Three [Member]" } } }, "localname": "MajorCustomerThreeMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "agx_MajorCustomerTwoMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Major customer two.", "label": "Major Customer Two [Member]" } } }, "localname": "MajorCustomerTwoMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "agx_NPricedChangeOrdersIncludedInTransactionPrices": { "auth_ref": [], "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" } } }, "localname": "NPricedChangeOrdersIncludedInTransactionPrices", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "xbrltype": "decimalItemType" }, "agx_NumberOfMajorCustomers": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of major customers.", "label": "Number Of Major Customers", "terseLabel": "Number of customers" } } }, "localname": "NumberOfMajorCustomers", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "integerItemType" }, "agx_NumberOfSharesIssuableUnderRestrictedStockUnitsAwardedDuringPeriod": { "auth_ref": [], "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" } } }, "localname": "NumberOfSharesIssuableUnderRestrictedStockUnitsAwardedDuringPeriod", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "agx_OperatingLeaseRightOfUseAssetAndOtherAssets": { "auth_ref": [], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "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" } } }, "localname": "OperatingLeaseRightOfUseAssetAndOtherAssets", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "agx_PaymentOfSpecialCashDividendsTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Payment of special cash dividends.", "label": "Payment Of Special Cash Dividends Text Block", "verboseLabel": "CASH DIVIDENDS AND COMMON STOCK REPURCHASES" } } }, "localname": "PaymentOfSpecialCashDividendsTextBlock", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchases" ], "xbrltype": "textBlockItemType" }, "agx_PercentageOfMaximumSharesForTargetNumberOfSharesAwarded": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the percentage of the maximum shares for the target number of shares awarded.", "label": "Percentage Of Maximum shares For The Target Number Of Shares Awarded", "terseLabel": "Percentage of the maximum shares for the target number of shares awarded" } } }, "localname": "PercentageOfMaximumSharesForTargetNumberOfSharesAwarded", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "percentItemType" }, "agx_PercentageReductionInAggregateFairValueOfStockOption": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the percentage reduction in the aggregate fair value of stock option", "label": "Percentage Reduction In The Aggregate Fair Value Of Stock Option" } } }, "localname": "PercentageReductionInAggregateFairValueOfStockOption", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "percentItemType" }, "agx_PerformanceBasedRestrictedStockUnitsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to performance-based restricted stock units.", "label": "Performance-based restricted stock units" } } }, "localname": "PerformanceBasedRestrictedStockUnitsMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_Plan2020Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the 2020 plan.", "label": "2020 Plan" } } }, "localname": "Plan2020Member", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_PowerIndustryServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Power industry services.", "label": "Power Industry Services [Member]" } } }, "localname": "PowerIndustryServicesMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "agx_RemainingBondedPerformanceObligations": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to remaining bonded performance obligations.", "label": "Remaining Bonded Performance Obligations", "terseLabel": "Unsatisfied bonded performance obligations" } } }, "localname": "RemainingBondedPerformanceObligations", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "monetaryItemType" }, "agx_RenewablePerformanceBasedRestrictedStockUnitsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Renewable Performance Based Restricted Stock Units.", "label": "Renewable Performance-Based Restricted Stock Units" } } }, "localname": "RenewablePerformanceBasedRestrictedStockUnitsMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_RetainedAmountUnderConstructionContracts": { "auth_ref": [], "crdr": "debit", "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" } } }, "localname": "RetainedAmountUnderConstructionContracts", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "xbrltype": "monetaryItemType" }, "agx_RobertsCompanyIncMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The Roberts Company Inc.", "label": "TRC." } } }, "localname": "RobertsCompanyIncMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock": { "auth_ref": [], "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" } } }, "localname": "ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsIssuedInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [], "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)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsIssuedInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "perShareItemType" }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionExercisableWeightedAverageGrantDateFairValue": { "auth_ref": [], "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 Fair Value, Exercisable" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionExercisableWeightedAverageGrantDateFairValue", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "perShareItemType" }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionOutstandingWeightedAverageGrantDateFairValue": { "auth_ref": [], "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 Fair Value, Outstanding" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsStockOptionOutstandingWeightedAverageGrantDateFairValue", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "perShareItemType" }, "agx_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRatePeriodForMonthlyClosingPrices": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The period of monthly closing prices used for the estimated measure of the maximum percentage by which a share price is expected to fluctuate during a period. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Volatility Rate Period For Monthly Closing Prices", "terseLabel": "Period used for calculations" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRatePeriodForMonthlyClosingPrices", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "durationItemType" }, "agx_ShortTermRentalAgreementsExpense": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount short-term rental agreements expenses.", "label": "Short Term Rental Agreements Expense", "terseLabel": "Short-term rentals expense" } } }, "localname": "ShortTermRentalAgreementsExpense", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "monetaryItemType" }, "agx_StockPlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "n/a", "label": "Stock Plan [Member]", "terseLabel": "Stock Plan" } } }, "localname": "StockPlanMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_SupplementalFinancialStatementInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Na", "label": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION" } } }, "localname": "SupplementalFinancialStatementInformationAbstract", "nsuri": "http://www.arganinc.com/20230430", "xbrltype": "stringItemType" }, "agx_TelecommunicationsInfrastructureServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Telecommunications infrastructure services.", "label": "Telecommunications Infrastructure Services [Member]" } } }, "localname": "TelecommunicationsInfrastructureServicesMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "agx_TimeBasedRestrictedStockUnitsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Time based Restricted Stock Units.", "label": "Time Based Restricted Stock Units" } } }, "localname": "TimeBasedRestrictedStockUnitsMember", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "agx_TradeAndOtherReceivablesDisclosureTextBlock": { "auth_ref": [], "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" } } }, "localname": "TradeAndOtherReceivablesDisclosureTextBlock", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivable" ], "xbrltype": "textBlockItemType" }, "agx_TreasuryStockPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for treasury stock.", "label": "Treasury Stock [Policy Text Block]", "terseLabel": "Treasury Stock" } } }, "localname": "TreasuryStockPolicyTextBlock", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "xbrltype": "textBlockItemType" }, "agx_Unrecognizedtaxbenefitsincreaseresultingfromresearchanddevelopmenttaxcredit": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in unrecognized tax benefits\n resulting from research and development tax credit.", "label": "UnrecognizedTaxBenefitsIncreaseResultingFromResearchAndDevelopmentTaxCredit", "terseLabel": "Development tax credit" } } }, "localname": "Unrecognizedtaxbenefitsincreaseresultingfromresearchanddevelopmenttaxcredit", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "xbrltype": "monetaryItemType" }, "agx_UnusualOrInfrequentItemUnrecoverableFundsAmount": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of loss for an event or transaction that is unusual in nature or infrequent in occurrence, or both.", "label": "Unusual Or Infrequent Item, Unrecoverable Funds Amount", "terseLabel": "Unrecoverable funds amount" } } }, "localname": "UnusualOrInfrequentItemUnrecoverableFundsAmount", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "agx_WarrantyPeriodForConstructionContracts": { "auth_ref": [], "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" } } }, "localname": "WarrantyPeriodForConstructionContracts", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails" ], "xbrltype": "stringItemType" }, "agx_WeightedAverageRateDepositCertificatesOfDeposit": { "auth_ref": [], "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)" } } }, "localname": "WeightedAverageRateDepositCertificatesOfDeposit", "nsuri": "http://www.arganinc.com/20230430", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "percentItemType" }, "country_GB": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "United Kingdom" } } }, "localname": "GB", "nsuri": "http://xbrl.sec.gov/country/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "xbrltype": "domainItemType" }, "country_IE": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Republic of Ireland" } } }, "localname": "IE", "nsuri": "http://xbrl.sec.gov/country/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "xbrltype": "domainItemType" }, "country_US": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "United States" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "xbrltype": "domainItemType" }, "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag", "terseLabel": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date", "terseLabel": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus", "terseLabel": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus", "terseLabel": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date", "terseLabel": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r546" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r547" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type", "terseLabel": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r544" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key", "terseLabel": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding", "terseLabel": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r544" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r544" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category", "terseLabel": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r548" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r544" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name", "terseLabel": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r544" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r544" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r544" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "employerIdItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r543" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r545" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.arganinc.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "tradingSymbolItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r174", "r209", "r221", "r222", "r223", "r224", "r225", "r227", "r231", "r287", "r288", "r289", "r290", "r292", "r293", "r295", "r297", "r298", "r581", "r582" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsDomain": { "auth_ref": [ "r174", "r209", "r221", "r222", "r223", "r224", "r225", "r227", "r231", "r287", "r288", "r289", "r290", "r292", "r293", "r295", "r297", "r298", "r581", "r582" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "srt_ExecutiveOfficerMember": { "auth_ref": [ "r569" ], "lang": { "en-us": { "role": { "label": "Senior executives" } } }, "localname": "ExecutiveOfficerMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r237", "r523", "r585", "r631" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "stringItemType" }, "srt_MaximumMember": { "auth_ref": [ "r283", "r284", "r285", "r286", "r342", "r474", "r489", "r508", "r509", "r520", "r533", "r542", "r583", "r623", "r624", "r625", "r626", "r627", "r628" ], "lang": { "en-us": { "role": { "label": "Maximum", "terseLabel": "Maximum" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r283", "r284", "r285", "r286", "r342", "r474", "r489", "r508", "r509", "r520", "r533", "r542", "r583", "r623", "r624", "r625", "r626", "r627", "r628" ], "lang": { "en-us": { "role": { "label": "Minimum", "terseLabel": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r237", "r523", "r585", "r631" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r233", "r476", "r521", "r540", "r579", "r580", "r585", "r630" ], "lang": { "en-us": { "role": { "label": "Products and Services [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r233", "r476", "r521", "r540", "r579", "r580", "r585", "r630" ], "lang": { "en-us": { "role": { "label": "Products and Services [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r283", "r284", "r285", "r286", "r335", "r342", "r371", "r372", "r373", "r450", "r474", "r489", "r508", "r509", "r520", "r533", "r542", "r578", "r583", "r624", "r625", "r626", "r627", "r628" ], "lang": { "en-us": { "role": { "label": "Range [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r283", "r284", "r285", "r286", "r335", "r342", "r371", "r372", "r373", "r450", "r474", "r489", "r508", "r509", "r520", "r533", "r542", "r578", "r583", "r624", "r625", "r626", "r627", "r628" ], "lang": { "en-us": { "role": { "label": "Range [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "srt_ScenarioUnspecifiedDomain": { "auth_ref": [ "r188", "r343", "r549", "r564" ], "lang": { "en-us": { "role": { "label": "Scenario, Unspecified [Domain]" } } }, "localname": "ScenarioUnspecifiedDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [ "r234", "r235", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r522", "r541", "r585" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r234", "r235", "r497", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r522", "r541", "r585" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "xbrltype": "stringItemType" }, "srt_StatementScenarioAxis": { "auth_ref": [ "r188", "r343", "r549", "r550", "r564" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "localname": "StatementScenarioAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r569", "r620" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]" } } }, "localname": "TitleOfIndividualAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Title of Individual [Domain]" } } }, "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r13", "r539" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable, Current", "terseLabel": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableMember": { "auth_ref": [ "r498" ], "lang": { "en-us": { "role": { "documentation": "Due from customers or clients for goods or services that have been delivered or sold.", "label": "Accounts Receivable [Member]" } } }, "localname": "AccountsReceivableMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r239", "r240" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, Net, Current", "verboseLabel": "Accounts receivable, net" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedEmployeeBenefitsCurrent": { "auth_ref": [ "r16" ], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "order": 1.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "Accrued Employee Benefits, Current", "terseLabel": "Accrued compensation" } } }, "localname": "AccruedEmployeeBenefitsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r16" ], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Liabilities, Current", "terseLabel": "Accrued expenses", "totalLabel": "Total accrued expenses" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r24", "r25", "r26", "r149", "r485", "r494", "r495" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r23", "r26", "r109", "r443", "r490", "r491", "r554", "r555", "r556", "r561", "r562", "r563" ], "lang": { "en-us": { "role": { "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.", "label": "Accumulated Other Comprehensive Loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdditionalFinancialInformationDisclosureTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The entire disclosures of supplemental information, including descriptions and amounts, related to the balance sheet, income statement, and/or cash flow statement.", "label": "Additional Financial Information Disclosure [Text Block]", "terseLabel": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION" } } }, "localname": "AdditionalFinancialInformationDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformation" ], "xbrltype": "textBlockItemType" }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "auth_ref": [ "r8" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.", "label": "Additional Paid in Capital, Common Stock", "terseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapitalCommonStock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r379", "r380", "r381", "r561", "r562", "r563", "r615" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r98", "r99", "r345" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.", "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition", "terseLabel": "Stock compensation expense" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "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 used in operating activities" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForNotesAndLoansReceivableCurrent": { "auth_ref": [ "r150", "r241", "r250" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on financing receivable, classified as current.", "label": "Financing Receivable, Allowance for Credit Loss, Current", "terseLabel": "Allowance for uncollectible accounts" } } }, "localname": "AllowanceForNotesAndLoansReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureAccountsReceivableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r47", "r73", "r78" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Amortization of Intangible Assets", "terseLabel": "Amortization of intangibles", "verboseLabel": "Amortization of intangible assets" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r199" ], "lang": { "en-us": { "role": { "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.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "verboseLabel": "Antidilutive common stock" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_Assets": { "auth_ref": [ "r122", "r128", "r148", "r171", "r217", "r223", "r229", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r405", "r409", "r422", "r539", "r581", "r582", "r621" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "terseLabel": "Total assets", "totalLabel": "TOTAL ASSETS" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "ASSETS" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r143", "r153", "r171", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r405", "r409", "r422", "r539", "r581", "r582", "r621" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "terseLabel": "Current assets", "totalLabel": "TOTAL CURRENT ASSETS" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "CURRENT ASSETS" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsFairValueDisclosure": { "auth_ref": [ "r115" ], "calculation": { "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Fair Value Disclosure", "totalLabel": "Totals" } } }, "localname": "AssetsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsTotalMember": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Contract Asset" } } }, "localname": "AssetsTotalMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": { "auth_ref": [ "r66" ], "crdr": "debit", "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).", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax", "terseLabel": "Gross Unrealized Losses" } } }, "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis": { "auth_ref": [ "r243", "r256" ], "crdr": "debit", "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).", "label": "Debt Securities, Available-for-Sale, Amortized Cost", "terseLabel": "Amortized Cost" } } }, "localname": "AvailableForSaleDebtSecuritiesAmortizedCostBasis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AvailableForSaleSecuritiesDebtSecurities": { "auth_ref": [ "r65", "r242", "r256", "r480" ], "calculation": { "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails": { "order": 1.0, "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of 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", "terseLabel": "Available-for-sale-securities", "verboseLabel": "Fair Value" } } }, "localname": "AvailableForSaleSecuritiesDebtSecurities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent": { "auth_ref": [ "r64", "r256" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current.", "label": "Debt Securities, Available-for-Sale, Current", "terseLabel": "Available-for-sale securities" } } }, "localname": "AvailableForSaleSecuritiesDebtSecuritiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract": { "auth_ref": [], "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" } } }, "localname": "AvailableForSaleSecuritiesFairValueToAmortizedCostBasisAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374" ], "lang": { "en-us": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Basis of Presentation and Significant Accounting Policies" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r403", "r531", "r532" ], "lang": { "en-us": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.", "label": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r102", "r103", "r403", "r531", "r532" ], "lang": { "en-us": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CASH, CASH EQUIVALENTS AND INVESTMENTS" } } }, "localname": "CashAndCashEquivalentsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r49", "r145", "r510" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. 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.", "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "auth_ref": [], "calculation": { "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails": { "order": 2.0, "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Cash and Cash Equivalents, Fair Value Disclosure", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Cash and Cash Equivalents [Line Items]", "verboseLabel": "Cash and Cash Equivalents" } } }, "localname": "CashAndCashEquivalentsLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock": { "auth_ref": [ "r69" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of the components of cash, cash equivalents, and short-term investments. Short-term investments may include current marketable securities.", "label": "Cash, Cash Equivalents, and Short-term Investments [Text Block]", "verboseLabel": "CASH, CASH EQUIVALENTS AND INVESTMENTS" } } }, "localname": "CashCashEquivalentsAndShortTermInvestmentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestments" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r44", "r49", "r50" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "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" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r44", "r120" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r18", "r124", "r132" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Commitments and Contingencies", "terseLabel": "COMMITMENTS AND CONTINGENCIES (see Notes 7 and 8)" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "LEGAL CONTINGENCIES" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsDisclosureTextBlock": { "auth_ref": [ "r81" ], "lang": { "en-us": { "role": { "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.", "label": "Commitments Disclosure [Text Block]", "terseLabel": "COMMITMENTS" } } }, "localname": "CommitmentsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitments" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": { "auth_ref": [ "r19" ], "lang": { "en-us": { "role": { "documentation": "Aggregate number of common shares reserved for future issuance.", "label": "Common stock allocated for issuance", "terseLabel": "Number of shares of common stock reserved for issuance" } } }, "localname": "CommonStockCapitalSharesReservedForFutureIssuance", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockDividendsPerShareCashPaid": { "auth_ref": [ "r88" ], "lang": { "en-us": { "role": { "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding.", "label": "Common Stock, Dividends, Per Share, Cash Paid", "terseLabel": "Regular cash dividend paid per common stock" } } }, "localname": "CommonStockDividendsPerShareCashPaid", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockDividendsPerShareDeclared": { "auth_ref": [ "r88" ], "lang": { "en-us": { "role": { "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding.", "label": "Common Stock, Dividends, Per Share, Declared", "terseLabel": "Regular cash dividend declared per common stock", "verboseLabel": "CASH DIVIDENDS PER SHARE" } } }, "localname": "CommonStockDividendsPerShareDeclared", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockDividendsShares": { "auth_ref": [ "r87" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock issued as dividends during the period. Excludes stock splits.", "label": "Common Stock Dividends, Shares", "terseLabel": "Cash dividends deemed paid on shares" } } }, "localname": "CommonStockDividendsShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r561", "r562", "r615" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "terseLabel": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r7" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r7" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r7" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r7", "r87" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock, shares outstanding" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r7", "r539" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "terseLabel": "Common stock, par value $0.15 per share - 30,000,000 shares authorized; 15,828,289 shares issued; 13,414,404 and 13,441,590 shares outstanding at April 30, 2023 and January 31, 2023, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r28", "r159", "r161", "r165", "r481", "r486" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "COMPREHENSIVE INCOME" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r54", "r55", "r117", "r118", "r237", "r498" ], "lang": { "en-us": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.", "label": "Concentration Risk Benchmark [Domain]" } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r54", "r55", "r117", "r118", "r237", "r496", "r498" ], "lang": { "en-us": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r54", "r55", "r117", "r118", "r237", "r498", "r632" ], "lang": { "en-us": { "role": { "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.", "label": "Concentration Risk Type [Axis]" } } }, "localname": "ConcentrationRiskByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskDisclosureTextBlock": { "auth_ref": [ "r57" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.", "label": "Concentration Risk Disclosure [Text Block]", "terseLabel": "CUSTOMER CONCENTRATIONS" } } }, "localname": "ConcentrationRiskDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrations" ], "xbrltype": "textBlockItemType" }, "us-gaap_ConcentrationRiskLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Concentration Risk [Line Items]", "terseLabel": "Customer Concentrations" } } }, "localname": "ConcentrationRiskLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r54", "r55", "r117", "r118", "r237" ], "lang": { "en-us": { "role": { "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.", "label": "Concentration Risk, Percentage", "verboseLabel": "Percentage of major customers or segments" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTable": { "auth_ref": [ "r51", "r54", "r55", "r56", "r117", "r119", "r498" ], "lang": { "en-us": { "role": { "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.", "label": "Concentration Risk [Table]" } } }, "localname": "ConcentrationRiskTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r54", "r55", "r117", "r118", "r237", "r498" ], "lang": { "en-us": { "role": { "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.", "label": "Concentration Risk Type [Domain]" } } }, "localname": "ConcentrationRiskTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConsolidationPolicyTextBlock": { "auth_ref": [ "r108", "r512" ], "lang": { "en-us": { "role": { "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.", "label": "Consolidation, Policy [Policy Text Block]", "terseLabel": "Description of the Business" } } }, "localname": "ConsolidationPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ConsolidationVariableInterestEntityPolicy": { "auth_ref": [ "r110", "r111", "r112" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for consolidation to describe the significant judgments and assumptions made in determining whether a variable interest held by the entity requires the variable interest entity to be consolidated and (or) disclose information about its involvement with the variable interest entity; the methodology used by the entity for determining whether or not it is the primary beneficiary of the variable interest entity; and the significant factors considered and judgments made in determining that the power to direct the activities that significantly impact the economic performance of the variable interest entity are shared (as defined).", "label": "Consolidation, Variable Interest Entity, Policy [Policy Text Block]", "verboseLabel": "Variable Interest Entity" } } }, "localname": "ConsolidationVariableInterestEntityPolicy", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "auth_ref": [ "r316", "r318", "r331" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.", "label": "Contract with Customer, Asset, Net, Current", "terseLabel": "Contract assets" } } }, "localname": "ContractWithCustomerAssetNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r316", "r317", "r331" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer, Liability, Current", "terseLabel": "Contract liabilities" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r332" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Revenue Recognized", "terseLabel": "Revenue recognized" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CorporateNonSegmentMember": { "auth_ref": [ "r61", "r222", "r223", "r224", "r225", "r231", "r568" ], "lang": { "en-us": { "role": { "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.", "label": "Other [Member]" } } }, "localname": "CorporateNonSegmentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostOfRevenue": { "auth_ref": [ "r33", "r171", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r422", "r581" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.", "label": "Cost of Revenue", "terseLabel": "Cost of revenues" } } }, "localname": "CostOfRevenue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_CreditFacilityAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Axis]" } } }, "localname": "CreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Domain]" } } }, "localname": "CreditFacilityDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r52", "r237" ], "lang": { "en-us": { "role": { "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.", "label": "Customer Concentration Risk [Member]" } } }, "localname": "CustomerConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r105" ], "lang": { "en-us": { "role": { "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.", "label": "Customer relationships" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "FINANCING ARRANGEMENTS" } } }, "localname": "DebtDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r86", "r170", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r308", "r309", "r310", "r312" ], "lang": { "en-us": { "role": { "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.", "label": "Debt Disclosure [Text Block]", "verboseLabel": "FINANCING ARRANGEMENTS" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangements" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "Interest rate margin on referred rate", "verboseLabel": "Interest rate margin on referred rate" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent": { "auth_ref": [ "r244", "r256", "r257" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current", "terseLabel": "Interest receivable" } } }, "localname": "DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrentStatementOfFinancialPositionExtensibleList": { "auth_ref": [ "r257" ], "lang": { "en-us": { "role": { "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.", "label": "Debt Securities, Available-for-Sale, Accrued Interest, after Allowance for Credit Loss, Current, Statement of Financial Position [Extensible Enumeration]" } } }, "localname": "DebtSecuritiesAvailableForSaleAccruedInterestAfterAllowanceForCreditLossCurrentStatementOfFinancialPositionExtensibleList", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "enumerationSetItemType" }, "us-gaap_DebtSecuritiesAvailableForSaleTerm": { "auth_ref": [ "r616" ], "lang": { "en-us": { "role": { "documentation": "Period between issuance and maturity of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Debt Securities, Available-for-Sale, Term", "terseLabel": "Available-for-sale securities term" } } }, "localname": "DebtSecuritiesAvailableForSaleTerm", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "durationItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r383", "r384" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.", "label": "Deferred Income Tax Assets, Net", "terseLabel": "Deferred taxes, net" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r47", "r101", "r390", "r395", "r396", "r560" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Income Tax Expense (Benefit)", "verboseLabel": "Deferred income tax expense" } } }, "localname": "DeferredIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxesAndOtherTaxReceivableCurrent": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Deferred Income Taxes and Other Tax Receivable, Current", "terseLabel": "Income tax receivable" } } }, "localname": "DeferredIncomeTaxesAndOtherTaxReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesNetOperatingLossCarrybackDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r47", "r79" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Depreciation", "terseLabel": "Depreciation" } } }, "localname": "Depreciation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Disaggregation of Revenues" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r330", "r521", "r522", "r523", "r524", "r525", "r526", "r527" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenues [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r585" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Schedule of consolidated revenues disaggregated by geographical area" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r348", "r375", "r376", "r378", "r382", "r534" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Disclosure of Compensation Related Costs, Share-based Payments [Text Block]", "verboseLabel": "STOCK-BASED COMPENSATION" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "STOCK-BASED COMPENSATION" } } }, "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_DividendsCommonStockCash": { "auth_ref": [ "r88" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.", "label": "Dividends, Common Stock, Cash", "negatedLabel": "Cash dividends" } } }, "localname": "DividendsCommonStockCash", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "NET INCOME PER SHARE", "terseLabel": "NET INCOME PER SHARE" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r166", "r180", "r181", "r182", "r183", "r184", "r189", "r191", "r196", "r197", "r198", "r202", "r413", "r414", "r482", "r487", "r513" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Earnings Per Share, Basic", "terseLabel": "Basic (in dollars per share)", "verboseLabel": "Basic (in Dollars per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r166", "r180", "r181", "r182", "r183", "r184", "r191", "r196", "r197", "r198", "r202", "r413", "r414", "r482", "r487", "r513" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Earnings Per Share, Diluted", "verboseLabel": "Diluted (in dollars per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r199", "r200", "r201", "r203" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]", "verboseLabel": "NET INCOME PER SHARE" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r425" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "verboseLabel": "EFFECTS OF EXCHANGE RATE CHANGES ON CASH" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "auth_ref": [ "r172", "r386", "r397" ], "lang": { "en-us": { "role": { "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).", "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "verboseLabel": "Federal corporate income tax rate (as percent)" } } }, "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r377" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.", "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized", "terseLabel": "Unrecognized compensation cost" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r377" ], "lang": { "en-us": { "role": { "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.", "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition", "terseLabel": "Compensation expense recognize, period" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_EmployeeStockOptionMember": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Stock Options Plans [Member]" } } }, "localname": "EmployeeStockOptionMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CASH DIVIDENDS AND COMMON STOCK REPURCHASES" } } }, "localname": "EquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r87", "r139", "r162", "r163", "r164", "r175", "r176", "r177", "r179", "r185", "r187", "r204", "r249", "r315", "r379", "r380", "r381", "r391", "r392", "r412", "r427", "r428", "r429", "r430", "r431", "r432", "r443", "r490", "r491", "r492" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_EquityMethodInvestments": { "auth_ref": [ "r70", "r218", "r551" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Equity Method Investments", "terseLabel": "Investment account balances" } } }, "localname": "EquityMethodInvestments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "terseLabel": "Fair value of assets and liabilities measured on recurring and nonrecurring basis" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "auth_ref": [ "r415", "r416", "r420" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.", "label": "Fair Value, Recurring and Nonrecurring [Table]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "auth_ref": [ "r115", "r116" ], "lang": { "en-us": { "role": { "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).", "label": "Fair Value, Assets Measured on Recurring Basis [Table Text Block]", "terseLabel": "Schedule of financial instruments recorded at fair value on a recurring basis" } } }, "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r307", "r336", "r337", "r338", "r339", "r340", "r341", "r416", "r447", "r448", "r449", "r518", "r519", "r528", "r529", "r530" ], "lang": { "en-us": { "role": { "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.", "label": "Fair Value Hierarchy and NAV [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "auth_ref": [ "r415", "r416", "r417", "r418", "r421" ], "lang": { "en-us": { "role": { "documentation": "Information by measurement frequency.", "label": "Measurement Frequency [Axis]" } } }, "localname": "FairValueByMeasurementFrequencyAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r307", "r336", "r341", "r416", "r447", "r528", "r529", "r530" ], "lang": { "en-us": { "role": { "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.", "label": "Level 1 Inputs" } } }, "localname": "FairValueInputsLevel1Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r307", "r336", "r341", "r416", "r448", "r518", "r519", "r528", "r529", "r530" ], "lang": { "en-us": { "role": { "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.", "label": "Level 2 Inputs" } } }, "localname": "FairValueInputsLevel2Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementFrequencyDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Measurement frequency.", "label": "Measurement Frequency [Domain]" } } }, "localname": "FairValueMeasurementFrequencyDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.", "label": "Fair Value Measurement, Policy [Policy Text Block]", "terseLabel": "Fair Values" } } }, "localname": "FairValueMeasurementPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r307", "r336", "r337", "r338", "r339", "r340", "r341", "r447", "r448", "r449", "r518", "r519", "r528", "r529", "r530" ], "lang": { "en-us": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.", "label": "Fair Value Hierarchy and NAV [Domain]" } } }, "localname": "FairValueMeasurementsFairValueHierarchyDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsRecurringMember": { "auth_ref": [ "r419", "r421" ], "lang": { "en-us": { "role": { "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.", "label": "Fair value, recurring" } } }, "localname": "FairValueMeasurementsRecurringMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancialGuaranteeMember": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Financial guarantee" } } }, "localname": "FinancialGuaranteeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancialInstrumentAxis": { "auth_ref": [ "r245", "r246", "r251", "r252", "r253", "r254", "r255", "r258", "r259", "r260", "r311", "r314", "r411", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r516", "r571", "r572", "r573", "r633", "r634", "r635", "r636", "r637", "r638", "r639" ], "lang": { "en-us": { "role": { "documentation": "Information by type of financial instrument.", "label": "Financial Instrument [Axis]" } } }, "localname": "FinancialInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Finite-Lived Intangible Asset, Useful Life", "verboseLabel": "Estimated Useful Life (in years)" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r147", "r275" ], "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "terseLabel": "Accumulated Amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r273", "r274", "r275", "r276", "r477", "r478" ], "lang": { "en-us": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r77", "r478" ], "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Gross Amounts" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Finite-Lived Intangible Assets" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r74", "r76" ], "lang": { "en-us": { "role": { "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.", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r77", "r477" ], "calculation": { "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Net", "totalLabel": "Net Amounts" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r146", "r263", "r479", "r517", "r539", "r576", "r577" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "terseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "INTANGIBLE ASSETS" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r32", "r171", "r217", "r222", "r228", "r231", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r422", "r515", "r581" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross Profit", "terseLabel": "Gross profit", "totalLabel": "GROSS PROFIT" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_GuaranteeObligationsByNatureAxis": { "auth_ref": [ "r85" ], "lang": { "en-us": { "role": { "documentation": "Information by nature of guarantee.", "label": "Guarantor Obligations, Nature [Axis]" } } }, "localname": "GuaranteeObligationsByNatureAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GuaranteeObligationsMaximumExposure": { "auth_ref": [ "r84" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Guarantor Obligations, Maximum Exposure, Undiscounted", "terseLabel": "Guarantor obligation maximum exposure" } } }, "localname": "GuaranteeObligationsMaximumExposure", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GuaranteeObligationsNatureDomain": { "auth_ref": [ "r83" ], "lang": { "en-us": { "role": { "documentation": "Represents a description of the nature of the guarantee or each group of similar guarantees.", "label": "Guarantor Obligations, Nature [Domain]" } } }, "localname": "GuaranteeObligationsNatureDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_HeldToMaturitySecuritiesCurrent": { "auth_ref": [ "r64", "r570", "r575" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before allowance for credit loss, of investment in debt security measured at amortized cost (held-to-maturity), classified as current.", "label": "Held-to-maturity Securities, Current", "terseLabel": "Short-term investments" } } }, "localname": "HeldToMaturitySecuritiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_HeldtomaturitySecuritiesMember": { "auth_ref": [ "r247" ], "lang": { "en-us": { "role": { "documentation": "Investments in debt securities classified as held-to-maturity.", "label": "Held-to-maturity Securities" } } }, "localname": "HeldtomaturitySecuritiesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r29", "r121", "r126", "r135", "r217", "r222", "r228", "r231", "r483", "r515" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Extraordinary Items, Noncontrolling Interest", "totalLabel": "INCOME BEFORE INCOME TAXES", "verboseLabel": "Income (loss) before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromEquityMethodInvestments": { "auth_ref": [ "r30", "r47", "r70", "r125", "r133", "r214" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) for proportionate share of equity method investee's income (loss).", "label": "Income (Loss) from Equity Method Investments", "negatedLabel": "Equity in loss (income) of solar energy investments", "terseLabel": "Loss of investment" } } }, "localname": "IncomeLossFromEquityMethodInvestments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF EARNINGS" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r278", "r280" ], "lang": { "en-us": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r280" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "INCOME TAXES" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r172", "r387", "r388", "r389", "r393", "r398", "r400", "r401", "r402" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]", "verboseLabel": "INCOME TAXES" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r173", "r186", "r187", "r215", "r385", "r394", "r399", "r488" ], "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "totalLabel": "Income tax expense", "verboseLabel": "Income tax expense" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": { "auth_ref": [ "r613" ], "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "order": 2.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).", "label": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount", "verboseLabel": "Foreign tax rate differential" } } }, "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "auth_ref": [ "r386" ], "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "order": 1.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount", "verboseLabel": "Computed expected income tax expense" } } }, "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationNondeductibleExpenseOther": { "auth_ref": [ "r613" ], "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "order": 5.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other nondeductible expenses.", "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Other, Amount", "verboseLabel": "Other permanent differences and adjustments, net" } } }, "localname": "IncomeTaxReconciliationNondeductibleExpenseOther", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "auth_ref": [ "r613" ], "calculation": { "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails": { "order": 3.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).", "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount", "terseLabel": "State income taxes, net of federal tax effect" } } }, "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesIncomeTaxExpenseReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationTaxCreditsResearch": { "auth_ref": [ "r613" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to research tax credit.", "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount", "terseLabel": "Federal research and development tax credits" } } }, "localname": "IncomeTaxReconciliationTaxCreditsResearch", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesResearchAndDevelopmentTaxCreditsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "auth_ref": [ "r46" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.", "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities", "terseLabel": "Accounts payable and accrued expenses" } } }, "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r46" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedInterestReceivableNet": { "auth_ref": [ "r46" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the amount due from borrowers for interest payments.", "label": "Increase (Decrease) in Accrued Interest Receivable, Net", "negatedLabel": "Changes in accrued interest on investments" } } }, "localname": "IncreaseDecreaseInAccruedInterestReceivableNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r557" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "Increase (Decrease) in Contract with Customer, Asset", "negatedLabel": "Contract assets" } } }, "localname": "IncreaseDecreaseInContractWithCustomerAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r475", "r557" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Increase (Decrease) in Contract with Customer, Liability", "verboseLabel": "Contract liabilities" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in operating assets and liabilities" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "auth_ref": [ "r46" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in operating assets classified as other.", "label": "Increase (Decrease) in Other Operating Assets", "negatedLabel": "Other assets" } } }, "localname": "IncreaseDecreaseInOtherOperatingAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r192", "r193", "r194", "r198", "r347" ], "calculation": { "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails": { "order": 2.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements", "terseLabel": "Effects of stock awards" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_InformationByCategoryOfDebtSecurityAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by category of debt security, either available-for-sale or held-to-maturity.", "label": "Debt Security Category [Axis]" } } }, "localname": "InformationByCategoryOfDebtSecurityAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r277" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for all or part of the information related to intangible assets.", "label": "Intangible Assets Disclosure [Text Block]", "terseLabel": "INTANGIBLE ASSETS" } } }, "localname": "IntangibleAssetsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssets" ], "xbrltype": "textBlockItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r72", "r75" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Intangible Assets, Net (Excluding Goodwill)", "terseLabel": "Intangible assets, net" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_IntangibleAssetsNetIncludingGoodwillAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Intangible Assets, Net (Including Goodwill) [Abstract]", "terseLabel": "Indefinite-Lived Intangible Assets" } } }, "localname": "IntangibleAssetsNetIncludingGoodwillAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_InterestReceivable": { "auth_ref": [ "r552" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of interest earned but not received. Also called accrued interest or accrued interest receivable.", "label": "Interest Receivable", "terseLabel": "Accrued interest" } } }, "localname": "InterestReceivable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryRawMaterials": { "auth_ref": [ "r553" ], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_OtherAssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory, Raw Materials, Gross", "terseLabel": "Raw materials inventory" } } }, "localname": "InventoryRawMaterials", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LegalMattersAndContingenciesTextBlock": { "auth_ref": [ "r82" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for legal proceedings, legal contingencies, litigation, regulatory and environmental matters and other contingencies.", "label": "Legal Matters and Contingencies [Text Block]", "verboseLabel": "LEGAL CONTINGENCIES" } } }, "localname": "LegalMattersAndContingenciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureLegalContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend": { "auth_ref": [ "r437" ], "lang": { "en-us": { "role": { "documentation": "Indicates (true false) whether lessee has option to extend operating lease.", "label": "Lessee, Operating Lease, Existence of Option to Extend [true false]", "terseLabel": "Operating leases, options to extend" } } }, "localname": "LesseeOperatingLeaseExistenceOfOptionToExtend", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "booleanItemType" }, "us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate": { "auth_ref": [ "r437" ], "lang": { "en-us": { "role": { "documentation": "Indicates (true false) whether lessee has option to terminate operating lease.", "label": "Lessee, Operating Lease, Existence of Option to Terminate [true false]", "terseLabel": "Operating leases, options to terminate" } } }, "localname": "LesseeOperatingLeaseExistenceOfOptionToTerminate", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "booleanItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r619" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.", "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Schedule of future minimum lease payments for the operating leases" } } }, "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r442" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "Lessee, Operating Lease, Liability, Payments, Due", "totalLabel": "Total lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r442" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Operating Leases, Future Minimum Payments Due, Next Twelve Months", "terseLabel": "2025" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r442" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in 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": "Lessee, Operating Lease, Liability, Payments, Due Year Four", "terseLabel": "2028" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r442" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three", "terseLabel": "2027" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r442" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two", "terseLabel": "2026" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r619" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails": { "order": 6.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Remainder of Fiscal Year", "terseLabel": "2024 (remainder)" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r442" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "terseLabel": "Less imputed interest" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LetterOfCreditMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit).", "label": "Letter of Credit" } } }, "localname": "LetterOfCreditMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LettersOfCreditOutstandingAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.", "label": "Letters of Credit Outstanding, Amount", "terseLabel": "Letters of credit outstanding amount" } } }, "localname": "LettersOfCreditOutstandingAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r15", "r171", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r406", "r409", "r410", "r422", "r514", "r581", "r621", "r622" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities", "totalLabel": "TOTAL LIABILITIES" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r12", "r123", "r130", "r539", "r559", "r574", "r617" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "TOTAL LIABILITIES AND EQUITY" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r17", "r144", "r171", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r406", "r409", "r410", "r422", "r539", "r581", "r621", "r622" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "terseLabel": "Current liabilities", "totalLabel": "TOTAL CURRENT LIABILITIES" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "CURRENT LIABILITIES" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesNoncurrent": { "auth_ref": [ "r1", "r2", "r3", "r4", "r5", "r171", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r406", "r409", "r410", "r422", "r581", "r621", "r622" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer.", "label": "Liabilities, Noncurrent", "terseLabel": "Noncurrent liabilities" } } }, "localname": "LiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Line of Credit Facility [Line Items]", "terseLabel": "Financing Arrangements" } } }, "localname": "LineOfCreditFacilityLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r14" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.", "label": "Line of Credit Facility, Maximum Borrowing Capacity", "terseLabel": "Borrowing available under financing arrangements" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityTable": { "auth_ref": [ "r14", "r558" ], "lang": { "en-us": { "role": { "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line.", "label": "Line of Credit Facility [Table]" } } }, "localname": "LineOfCreditFacilityTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditMember": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Line of Credit [Member]" } } }, "localname": "LineOfCreditMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MoneyMarketFundsMember": { "auth_ref": [ "r586" ], "lang": { "en-us": { "role": { "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.", "label": "Money market funds" } } }, "localname": "MoneyMarketFundsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r169" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash used in financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "CASH FLOWS FROM FINANCING ACTIVITIES" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r169" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash provided by (used in) investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "CASH FLOWS FROM INVESTING ACTIVITIES" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r44", "r45", "r48" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash used in operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "CASH FLOWS FROM OPERATING ACTIVITIES" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r31", "r48", "r127", "r134", "r142", "r158", "r160", "r164", "r171", "r178", "r180", "r181", "r182", "r183", "r186", "r187", "r195", "r217", "r222", "r228", "r231", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r414", "r422", "r515", "r581" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 3.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "netLabel": "Net income", "totalLabel": "NET INCOME" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Accounting Policies" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NoncontrollingInterestMember": { "auth_ref": [ "r106", "r315", "r561", "r562", "r563" ], "lang": { "en-us": { "role": { "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest.", "label": "Non-controlling Interests" } } }, "localname": "NoncontrollingInterestMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_NumberOfOperatingSegments": { "auth_ref": [ "r567" ], "lang": { "en-us": { "role": { "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.", "label": "Number of Operating Segments", "terseLabel": "Operating segment" } } }, "localname": "NumberOfOperatingSegments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "integerItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r217", "r222", "r228", "r231", "r515" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "INCOME FROM OPERATIONS", "verboseLabel": "Income (loss) from operations" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r438", "r538" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.", "label": "Operating Lease, Cost", "terseLabel": "Future minimum lease payment" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseExpense": { "auth_ref": [ "r618" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of operating lease expense. Excludes sublease income.", "label": "Operating Lease, Expense", "terseLabel": "Operating lease expense", "verboseLabel": "Lease expense" } } }, "localname": "OperatingLeaseExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Lease Liabilities, Payments Due [Abstract]", "terseLabel": "Operating Leases" } } }, "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r434" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Operating Lease, Liability", "totalLabel": "Present value of lease payments" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r434" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "order": 1.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating Lease, Liability, Current", "verboseLabel": "Less current portion (included in accrued expenses)" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "auth_ref": [ "r435" ], "lang": { "en-us": { "role": { "documentation": "Indicates line item in statement of financial position that includes current operating lease liability.", "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]", "terseLabel": "Less current portion (included in accrued expenses)" } } }, "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "enumerationSetItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r434" ], "calculation": { "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetailsCalc2": { "order": 2.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Operating Lease, Liability, Noncurrent", "verboseLabel": "Non-current portion (included in noncurrent liabilities)" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": { "auth_ref": [ "r435" ], "lang": { "en-us": { "role": { "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability.", "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]", "terseLabel": "Non-current portion (included in noncurrent liabilities)" } } }, "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsFutureMinimumLeasePaymentsDetails" ], "xbrltype": "enumerationSetItemType" }, "us-gaap_OperatingLeasePayments": { "auth_ref": [ "r436", "r439" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.", "label": "Operating Lease, Payments", "terseLabel": "Operating lease payments" } } }, "localname": "OperatingLeasePayments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r433" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating lease, right-of-use assets" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r441", "r538" ], "lang": { "en-us": { "role": { "documentation": "Weighted average discount rate for operating lease calculated at point in time.", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Weighted average discount rate" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r440", "r538" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Operating Lease, Weighted Average Remaining Lease Term", "terseLabel": "Weighted average lease term" } } }, "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails" ], "xbrltype": "durationItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "auth_ref": [ "r0", "r114" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.", "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]", "verboseLabel": "DESCRIPTION OF THE BUSINESS AND BASIS OF PRESENTATION" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentation" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "auth_ref": [ "r16" ], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails": { "order": 4.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.", "label": "Other Accrued Liabilities, Current", "terseLabel": "Other" } } }, "localname": "OtherAccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAccruedExpensesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsCurrent": { "auth_ref": [ "r152", "r539" ], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current assets classified as other.", "label": "Other Assets, Current", "terseLabel": "Other current assets", "totalLabel": "Total other current assets" } } }, "localname": "OtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails", "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsMiscellaneousCurrent": { "auth_ref": [], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "order": 4.0, "parentTag": "us-gaap_OtherAssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of other miscellaneous assets expected to be realized or consumed within one year or operating cycle, if longer.", "label": "Other Assets, Miscellaneous, Current", "terseLabel": "Other" } } }, "localname": "OtherAssetsMiscellaneousCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax": { "auth_ref": [ "r22", "r24", "r423", "r424", "r426" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Gain (Loss), before Reclassification and Tax", "terseLabel": "Foreign currency translation gain (loss)" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossBeforeReclassificationAndTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "auth_ref": [ "r154", "r155", "r156" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax", "terseLabel": "Net unrealized losses on available-for-sale securities" } } }, "localname": "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "auth_ref": [ "r22" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "terseLabel": "Foreign currency translation adjustments" } } }, "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax": { "auth_ref": [ "r24", "r27", "r68", "r157" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "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" } } }, "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNoncashIncomeExpense": { "auth_ref": [ "r48" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.", "label": "Other Noncash Income (Expense)", "negatedLabel": "Other" } } }, "localname": "OtherNoncashIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r37" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "Other Nonoperating Income (Expense)", "terseLabel": "Other income (loss), net", "verboseLabel": "Other (loss) income, net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpenseMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing other nonoperating income (expense).", "label": "Other income (expense)" } } }, "localname": "OtherNonoperatingIncomeExpenseMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCategoriesOfInvestmentsDomain": { "auth_ref": [ "r67" ], "lang": { "en-us": { "role": { "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.", "label": "Other than Temporary Impairment, Credit Losses Recognized in Earnings, Categories of Investments [Domain]" } } }, "localname": "OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCategoriesOfInvestmentsDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "auth_ref": [ "r43" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow to reacquire common stock during the period.", "label": "Payments for Repurchase of Common Stock", "negatedLabel": "Common stock repurchases" } } }, "localname": "PaymentsForRepurchaseOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsOfDividendsCommonStock": { "auth_ref": [ "r43" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.", "label": "Payments of Ordinary Dividends, Common Stock", "negatedLabel": "Payments of cash dividends" } } }, "localname": "PaymentsOfDividendsCommonStock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireAvailableForSaleSecuritiesDebt": { "auth_ref": [ "r40", "r63", "r167" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "Payments to Acquire Debt Securities, Available-for-Sale", "negatedLabel": "Purchases of available-for-sale securities" } } }, "localname": "PaymentsToAcquireAvailableForSaleSecuritiesDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireHeldToMaturitySecurities": { "auth_ref": [ "r40", "r63" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow through purchase of long-term held-to-maturity securities.", "label": "Payments to Acquire Held-to-maturity Securities", "negatedLabel": "Purchases of short-term investments" } } }, "localname": "PaymentsToAcquireHeldToMaturitySecurities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r41" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchases of property, plant and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r587", "r588", "r589", "r590", "r591", "r592", "r593", "r594", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612" ], "lang": { "en-us": { "role": { "documentation": "Information by plan name for share-based payment arrangement.", "label": "Plan Name [Axis]" } } }, "localname": "PlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [ "r587", "r588", "r589", "r590", "r591", "r592", "r593", "r594", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612" ], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement.", "label": "Plan Name [Domain]" } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r6", "r313" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred Stock, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r6" ], "lang": { "en-us": { "role": { "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.", "label": "Preferred Stock, Shares Authorized", "terseLabel": "Preferred stock, shares authorized" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r6", "r313" ], "lang": { "en-us": { "role": { "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.", "label": "Preferred Stock, Shares Issued", "terseLabel": "Preferred stock, shares issued" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r6" ], "lang": { "en-us": { "role": { "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.", "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock, shares outstanding" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r6", "r539" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable 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.", "label": "Preferred Stock, Value, Issued", "terseLabel": "Preferred stock, par value $0.10 per share - 500,000 shares authorized; no shares issued and outstanding" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseCurrent": { "auth_ref": [ "r151", "r261", "r262", "r511" ], "calculation": { "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails": { "order": 3.0, "parentTag": "us-gaap_OtherAssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.", "label": "Prepaid Expense, Current", "terseLabel": "Prepaid expenses" } } }, "localname": "PrepaidExpenseCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationOtherCurrentAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt": { "auth_ref": [ "r39", "r63", "r167" ], "crdr": "debit", "lang": { "en-us": { "role": { "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).", "label": "Proceeds from Sale of Debt Securities, Available-for-Sale", "terseLabel": "Proceeds from sale of debt securities, available-for-sale" } } }, "localname": "ProceedsFromSaleOfAvailableForSaleSecuritiesDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfHeldToMaturitySecurities": { "auth_ref": [ "r39", "r63" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Proceeds from Sale of Held-to-maturity Securities", "terseLabel": "Maturities of short-term investments" } } }, "localname": "ProceedsFromSaleOfHeldToMaturitySecurities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromStockOptionsExercised": { "auth_ref": [ "r42", "r97" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.", "label": "Proceeds from Stock Options Exercised", "terseLabel": "Proceeds from the exercise of stock options" } } }, "localname": "ProceedsFromStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductConcentrationRiskMember": { "auth_ref": [ "r53" ], "lang": { "en-us": { "role": { "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.", "label": "Product Concentration Risk [Member]" } } }, "localname": "ProductConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProfessionalFees": { "auth_ref": [ "r137", "r138" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "A fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer.", "label": "Professional Fees", "terseLabel": "Professional fees" } } }, "localname": "ProfessionalFees", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r142", "r158", "r160", "r168", "r171", "r178", "r186", "r187", "r217", "r222", "r228", "r231", "r248", "r287", "r288", "r290", "r291", "r292", "r294", "r296", "r298", "r299", "r404", "r407", "r408", "r414", "r422", "r483", "r515", "r536", "r537", "r556", "r581" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Net income", "verboseLabel": "Net income" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAdditions": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of acquisition of long-lived, physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.", "label": "Property, Plant and Equipment, Additions", "terseLabel": "Property, plant and equipment additions" } } }, "localname": "PropertyPlantAndEquipmentAdditions", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r80", "r131", "r484", "r539" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Net", "verboseLabel": "Property, plant and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ACCOUNTS RECEIVABLE" } } }, "localname": "ReceivablesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_RestrictedStockUnitsRSUMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.", "label": "Restricted Stock Units" } } }, "localname": "RestrictedStockUnitsRSUMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r9", "r88", "r129", "r493", "r495", "r539" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r139", "r175", "r176", "r177", "r179", "r185", "r187", "r249", "r379", "r380", "r381", "r391", "r392", "r412", "r490", "r492" ], "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "REVENUES FROM CONTRACTS WITH CUSTOMERS" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r208", "r209", "r221", "r226", "r227", "r233", "r234", "r237", "r329", "r330", "r476" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "netLabel": "Revenues", "terseLabel": "Totals", "verboseLabel": "REVENUES" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersDisaggregationOfRevenuesDetails", "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r319", "r320", "r321", "r322", "r323", "r324", "r327", "r328", "r333", "r334" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "REVENUES FROM CONTRACTS WITH CUSTOMERS" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomers" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r325" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "Revenue, Remaining Performance Obligation", "terseLabel": "Contract backlog amount" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "REVENUES FROM CONTRACTS WITH CUSTOMERS" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r326" ], "lang": { "en-us": { "role": { "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "terseLabel": "Performance period" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r326" ], "lang": { "en-us": { "role": { "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "auth_ref": [ "r584" ], "lang": { "en-us": { "role": { "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Percentage", "terseLabel": "Contract backlog (as percent)" } } }, "localname": "RevenueRemainingPerformanceObligationPercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureRevenuesFromContractsWithCustomersRemainingUnsatisfiedPerformanceObligationsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving Credit Facility" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RisksAndUncertaintiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CUSTOMER CONCENTRATIONS" } } }, "localname": "RisksAndUncertaintiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_SalesRevenueNetMember": { "auth_ref": [ "r237", "r566" ], "lang": { "en-us": { "role": { "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.", "label": "Revenue [Member]" } } }, "localname": "SalesRevenueNetMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCustomerConcentrationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of accrued liabilities.", "label": "Schedule of Accrued Liabilities [Table Text Block]", "terseLabel": "Schedule of accrued expenses" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the reconciliation of available-for-sale securities from cost basis to fair value.", "label": "Schedule of Available-for-Sale Securities Reconciliation [Table Text Block]", "terseLabel": "Schedule of available-for-sale securities" } } }, "localname": "ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfCashAndCashEquivalentsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Schedule of cash and cash equivalent balances. This table excludes restricted cash balances.", "label": "Schedule of Cash and Cash Equivalents [Table]", "terseLabel": "Schedule of Cash and Cash Equivalents [Table]" } } }, "localname": "ScheduleOfCashAndCashEquivalentsTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r565" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Schedule of computations of basic and diluted net income per share" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "auth_ref": [ "r100" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]", "verboseLabel": "Schedule of actual income tax expense amounts" } } }, "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r74", "r76", "r477" ], "lang": { "en-us": { "role": { "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Schedule of Finite-Lived Intangible Assets [Table]" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfInvestmentIncomeReportedAmountsByCategoryLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Net Investment Income [Line Items]" } } }, "localname": "ScheduleOfInvestmentIncomeReportedAmountsByCategoryLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfInvestmentIncomeReportedAmountsByCategoryTable": { "auth_ref": [ "r35", "r36", "r136" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about investment income, including, but not limited to, interest and dividend income and amortization of discount (premium) derived from debt and equity securities. Excludes realized and unrealized gain (loss) on investments.", "label": "Investment Income [Table]" } } }, "localname": "ScheduleOfInvestmentIncomeReportedAmountsByCategoryTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIncomeTaxesSolarEnergyProjectsAndSupplementalCashFlowInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": { "auth_ref": [ "r92" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the changes in outstanding nonvested shares.", "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" } } }, "localname": "ScheduleOfNonvestedShareActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfOtherCurrentAssetsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the carrying amounts of other current assets.", "label": "Schedule of Other Current Assets [Table Text Block]", "terseLabel": "Schedule of other current assets" } } }, "localname": "ScheduleOfOtherCurrentAssetsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "auth_ref": [ "r58", "r59", "r60", "r71" ], "lang": { "en-us": { "role": { "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.", "label": "Schedule of Segment Reporting Information, by Segment [Table]", "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "auth_ref": [ "r58", "r59", "r60", "r71" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "terseLabel": "Schedule of operating results and certain financial position data of the Company's reportable business segments" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r344", "r346", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about share-based payment arrangement.", "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]" } } }, "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": { "auth_ref": [ "r91" ], "lang": { "en-us": { "role": { "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.", "label": "Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]", "verboseLabel": "Schedule of changes in restricted stock units" } } }, "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "auth_ref": [ "r91", "r93", "r94" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Share-based Compensation, Stock Options, Activity [Table Text Block]", "verboseLabel": "Schedule of stock option activity under the Company's stock plans" } } }, "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": { "auth_ref": [ "r614" ], "lang": { "en-us": { "role": { "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap that has its variable-rate leg referenced to Secured Overnight Financing Rate (SOFR) with no additional spread over SOFR on variable-rate leg.", "label": "Secured Overnight Financing Rate (SOFR)" } } }, "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r205", "r208", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r231", "r237", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r281", "r282", "r517", "r630" ], "lang": { "en-us": { "role": { "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.", "label": "Segments [Domain]" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentReportingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SEGMENT REPORTING" } } }, "localname": "SegmentReportingAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r205", "r206", "r207", "r217", "r220", "r225", "r229", "r230", "r231", "r232", "r233", "r236", "r237", "r238" ], "lang": { "en-us": { "role": { "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.", "label": "Segment Reporting Disclosure [Text Block]", "verboseLabel": "SEGMENT REPORTING" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReporting" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentReportingInformationLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Segment Reporting Information [Line Items]", "terseLabel": "Segment Reporting Information" } } }, "localname": "SegmentReportingInformationLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r34" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, General and Administrative Expense", "terseLabel": "Selling, general and administrative expenses" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r46" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Share-based Compensation", "terseLabel": "Stock compensation expense" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "auth_ref": [ "r534" ], "lang": { "en-us": { "role": { "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period", "terseLabel": "Period to become exercisable" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "auth_ref": [ "r365" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period", "negatedLabel": "Forfeited (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "auth_ref": [ "r365" ], "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value", "terseLabel": "Forfeited (Per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r363" ], "lang": { "en-us": { "role": { "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).", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period", "verboseLabel": "Awarded (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r363" ], "lang": { "en-us": { "role": { "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).", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "verboseLabel": "Awarded, Fair value (Per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r360", "r361" ], "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number", "periodEndLabel": "Outstanding, Ending balance (in shares)", "periodStartLabel": "Outstanding, Beginning balance (in shares)", "terseLabel": "Outstanding (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [ "r360", "r361" ], "lang": { "en-us": { "role": { "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.", "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)", "terseLabel": "Outstanding, Fair value (per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "auth_ref": [], "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]" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "auth_ref": [ "r364" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period", "negatedLabel": "Issued (in shares)", "terseLabel": "Vested" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "auth_ref": [ "r96" ], "lang": { "en-us": { "role": { "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant", "terseLabel": "Number of shares of common stock available for award" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "auth_ref": [ "r354" ], "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number", "verboseLabel": "Shares, Exercisable" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "auth_ref": [ "r354" ], "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price", "verboseLabel": "Weighted Average Exercise Price, Exercisable" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "auth_ref": [ "r367" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value", "terseLabel": "Intrinsic value of the stock options exercised" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": { "auth_ref": [ "r358" ], "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period", "negatedLabel": "Shares, Forfeited" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [ "r356" ], "lang": { "en-us": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross", "terseLabel": "Shares, Granted" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r366" ], "lang": { "en-us": { "role": { "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Fair Value, Granted" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "auth_ref": [ "r96" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value", "terseLabel": "Intrinsic value of outstanding stock options" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "auth_ref": [ "r352", "r353" ], "lang": { "en-us": { "role": { "documentation": "Number of options outstanding, including both vested and non-vested options.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number", "periodEndLabel": "Shares, Outstanding, Ending balance", "periodStartLabel": "Shares, Outstanding, Beginning balance" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "auth_ref": [ "r352", "r353" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price", "periodEndLabel": "Weighted Average Exercise Price, Outstanding, Ending balance", "periodStartLabel": "Weighted Average Exercise Price, Outstanding, Beginning balance" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Equity Award [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails", "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r357" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.", "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price, Exercised" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r358" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.", "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price, Forfeited" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r356" ], "lang": { "en-us": { "role": { "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.", "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price", "terseLabel": "Weighted Average Exercise Price, Granted" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SharePrice": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Price of a single share of a number of saleable stocks of a company.", "label": "Share Price", "terseLabel": "Share price" } } }, "localname": "SharePrice", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": { "auth_ref": [ "r587" ], "lang": { "en-us": { "role": { "documentation": "Percentage of vesting of award under share-based payment arrangement.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage", "terseLabel": "Initial vesting percentage" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "auth_ref": [ "r535" ], "lang": { "en-us": { "role": { "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period", "terseLabel": "Incentive stock option award maximum expiration period" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": { "auth_ref": [ "r96" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value", "terseLabel": "Intrinsic value of exercisable stock options" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": { "auth_ref": [ "r96" ], "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term", "terseLabel": "Weighted Average Remaining Term (Years), Exercisable" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of non-vested options outstanding.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares", "periodEndLabel": "Shares, Non-vested, Ending balance", "periodStartLabel": "Shares, Non-vested, Beginning balance", "terseLabel": "Shares, Non-vested" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of non-vested options forfeited.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Number of Shares", "negatedLabel": "Shares, Forfeitures" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted average grant-date fair value of non-vested options forfeited.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Fair Value, Forfeitures" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted average grant-date fair value of non-vested options outstanding.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value", "periodEndLabel": "Weighted Average Fair Value, Non-vested, Ending balance", "periodStartLabel": "Weighted Average Fair Value, Non-vested, Beginning balance", "terseLabel": "Weighted Average Fair Value, Non-vested" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "auth_ref": [ "r95" ], "lang": { "en-us": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term", "terseLabel": "Weighted Average Remaining Term (Years), Outstanding" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of options vested.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Number of Shares", "negatedLabel": "Shares, Vested" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted average grant-date fair value of options vested.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted Average Fair Value, Vested" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfChangeInNumberOfNonVestedOptionsToPurchaseSharesOfCommonStockDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.", "label": "Shares, Outstanding", "periodEndLabel": "Balances (in shares)", "periodStartLabel": "Balances (in shares)" } } }, "localname": "SharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r141", "r205", "r208", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r231", "r237", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r279", "r281", "r282", "r517", "r630" ], "lang": { "en-us": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r21", "r87", "r139", "r162", "r163", "r164", "r175", "r176", "r177", "r179", "r185", "r187", "r204", "r249", "r315", "r379", "r380", "r381", "r391", "r392", "r412", "r427", "r428", "r429", "r430", "r431", "r432", "r443", "r490", "r491", "r492" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]", "terseLabel": "Statement" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED BALANCE SHEETS" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r175", "r176", "r177", "r204", "r476" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]", "terseLabel": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCommitmentsLeasesDetails", "http://www.arganinc.com/role/DisclosureCommitmentsWarrantiesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "auth_ref": [ "r6", "r7", "r87", "r88", "r357" ], "lang": { "en-us": { "role": { "documentation": "Number of share options (or share units) exercised during the current period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "negatedLabel": "Shares, Exercised", "terseLabel": "Stock option exercises and other share-based award settlements (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureStockBasedCompensationSummaryOfActivityUnderCompanySStockOptionPlansDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "auth_ref": [ "r21", "r87", "r88" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of stock issued as a result of the exercise of stock options.", "label": "Stock Issued During Period, Value, Stock Options Exercised", "terseLabel": "Stock option exercises and other share-based award settlements" } } }, "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockRepurchasedDuringPeriodShares": { "auth_ref": [ "r6", "r7", "r87", "r88" ], "lang": { "en-us": { "role": { "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.", "label": "Stock Repurchased During Period, Shares", "negatedLabel": "Common stock repurchases (in shares)", "verboseLabel": "Common stock repurchases (in shares)" } } }, "localname": "StockRepurchasedDuringPeriodShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockRepurchasedDuringPeriodValue": { "auth_ref": [ "r6", "r7", "r87", "r88" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Stock Repurchased During Period, Value", "negatedLabel": "Common stock repurchases", "verboseLabel": "Common stock repurchased" } } }, "localname": "StockRepurchasedDuringPeriodValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashDividendsAndCommonStockRepurchasesDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r7", "r10", "r11", "r62", "r539", "r559", "r574", "r617" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "totalLabel": "TOTAL STOCKHOLDERS' EQUITY" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "STOCKHOLDERS' EQUITY" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r106", "r107", "r113", "r139", "r140", "r163", "r175", "r176", "r177", "r179", "r185", "r249", "r315", "r379", "r380", "r381", "r391", "r392", "r412", "r427", "r428", "r432", "r443", "r491", "r492", "r559", "r574", "r617" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.", "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest", "periodEndLabel": "Balances", "periodStartLabel": "Balances", "totalLabel": "TOTAL EQUITY" } } }, "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_TradeNamesMember": { "auth_ref": [ "r104" ], "lang": { "en-us": { "role": { "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.", "label": "Trade Name" } } }, "localname": "TradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureIntangibleAssetsComponentsOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "auth_ref": [ "r245", "r246", "r311", "r314", "r411", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r571", "r572", "r573", "r633", "r634", "r635", "r636", "r637", "r638", "r639" ], "lang": { "en-us": { "role": { "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.", "label": "Financial Instruments [Domain]" } } }, "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails", "http://www.arganinc.com/role/DisclosureDescriptionOfBusinessAndBasisOfPresentationFinancialInstrumentsOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockMember": { "auth_ref": [ "r20", "r89" ], "lang": { "en-us": { "role": { "documentation": "Shares of an entity that have been repurchased by the entity. This stock has no voting rights and receives no dividends. Note that treasury stock may be recorded at its total cost or separately as par (or stated) value and additional paid in capital. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.", "label": "Treasury Stock" } } }, "localname": "TreasuryStockMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockShares": { "auth_ref": [ "r20", "r89" ], "lang": { "en-us": { "role": { "documentation": "Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.", "label": "Treasury Stock, Shares", "terseLabel": "Treasury stock, shares" } } }, "localname": "TreasuryStockShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockValue": { "auth_ref": [ "r20", "r89", "r90" ], "calculation": { "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Treasury Stock, Value", "negatedLabel": "Less treasury stock, at cost - 2,413,885 and 2,386,699 shares at April 30, 2023 and January 31, 2023, respectively" } } }, "localname": "TreasuryStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_USTreasuryNotesSecuritiesMember": { "auth_ref": [ "r629" ], "lang": { "en-us": { "role": { "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.", "label": "US Treasury Notes Securities [Member]", "terseLabel": "US Treasury notes" } } }, "localname": "USTreasuryNotesSecuritiesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureCashCashEquivalentsAndInvestmentsAvailableForSaleSecuritiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_UnusualOrInfrequentItemAxis": { "auth_ref": [ "r38" ], "lang": { "en-us": { "role": { "documentation": "Information by an event or transaction that is unusual in nature or infrequent in occurrence, or both.", "label": "Unusual or Infrequent Item, or Both [Axis]" } } }, "localname": "UnusualOrInfrequentItemAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_UnusualOrInfrequentItemDomain": { "auth_ref": [ "r38" ], "lang": { "en-us": { "role": { "documentation": "Event or transaction that is unusual in nature or infrequent in occurrence, or both.", "label": "Unusual or Infrequent Item, or Both [Domain]" } } }, "localname": "UnusualOrInfrequentItemDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_UnusualOrInfrequentItemLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Unusual or Infrequent Item, or Both [Line Items]", "terseLabel": "SUPPLEMENTAL FINANCIAL STATEMENT INFORMATION" } } }, "localname": "UnusualOrInfrequentItemLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_UnusualOrInfrequentItemLossGross": { "auth_ref": [ "r38" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before deduction of insurance proceeds, of loss recognized in the income statement for an event or transaction that is unusual in nature or infrequent in occurrence, or both.", "label": "Unusual or Infrequent Item, or Both, Loss, Gross", "terseLabel": "Unusual or infrequent item gross loss" } } }, "localname": "UnusualOrInfrequentItemLossGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnusualOrInfrequentItemTable": { "auth_ref": [ "r38" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about the nature and financial statement effect of an event or transaction that is unusual in nature or infrequent in occurrence, or both.", "label": "Unusual or Infrequent Item, or Both [Table]" } } }, "localname": "UnusualOrInfrequentItemTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureSupplementalFinancialStatementInformationAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.", "label": "Variable Rate [Domain]" } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureFinancingArrangementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r190", "r198" ], "calculation": { "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "Weighted Average Number of Shares Outstanding, Diluted", "totalLabel": "Weighted average number of shares outstanding - diluted", "verboseLabel": "Diluted" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]", "terseLabel": "WEIGHTED AVERAGE NUMBER OF SHARES OUTSTANDING" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r189", "r198" ], "calculation": { "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic", "verboseLabel": "Weighted average number of shares outstanding - basic" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.arganinc.com/role/DisclosureNetIncomePerShareAttributableToStockholdersOfArganDetails", "http://www.arganinc.com/role/StatementConsolidatedStatementsOfEarnings" ], "xbrltype": "sharesItemType" } }, "unitCount": 6 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "https://asc.fasb.org/topic&trid=2122149", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 201.5-02(24))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568447-111683", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568740-111683", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "2AA", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "a", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=SL6759068-111685", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5728-111685", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "5A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=SL6759159-111685", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "4I", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r114": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org/topic&trid=2197479", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(13)(f))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a),19)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(10))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04.2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(k)", "Topic": "946", "URI": "https://asc.fasb.org/extlink&oid=124433917&loc=SL114874205-224268", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07.2(a),(b),(c),(d))", "Topic": "946", "URI": "https://asc.fasb.org/extlink&oid=120401555&loc=SL114874292-224272", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(15))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(16))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(7))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(8))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "17A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL34724391-108580", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3151-108585", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3000-108585", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(c))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.M.Q2)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1707-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1757-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1500-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 201.5-02(25))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29,30)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r203": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org/topic&trid=2144383", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8657-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8844-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "34", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8981-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r238": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org/topic&trid=2134510", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=124260329&loc=d3e26610-111562", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27161-111563", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "2A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=SL121698322-111563", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27232-111563", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "5A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=SL120269820-111563", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "8B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=SL6284393-111563", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919244-210447", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919253-210447", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919258-210447", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919230-210447", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124258926&loc=SL82898722-210454", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "3A", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124269663&loc=SL120267853-210455", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124269663&loc=SL82922888-210455", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124269663&loc=SL82922895-210455", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124269663&loc=SL82922900-210455", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "05", "SubTopic": "10", "Topic": "340", "URI": "https://asc.fasb.org/extlink&oid=126905020&loc=d3e5879-108316", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "340", "URI": "https://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e689-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r277": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org/subtopic&trid=2144471", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(d))", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 201.5-02(26))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(12))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r334": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org/topic&trid=49130388", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(A)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(B)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(C)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(f)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=SL116886442-113899", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4549-113899", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126962052&loc=d3e4991-113900", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7(a),(b))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.8)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(l)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=114868883&loc=SL114871943-224233", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r382": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org/topic&trid=2228938", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r402": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org/topic&trid=2144680", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=d3e90205-114008", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(1)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(2)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19279-110258", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=SL6742756-110258", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=126980362&loc=d3e28129-110885", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "35", "SubTopic": "20", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=123602790&loc=d3e30304-110892", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32022-110900", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918631-209977", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(3)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)(i)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)(ii)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=66007379&loc=d3e113888-111728", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=109249958&loc=SL34722452-111729", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122625-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122625-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122625-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(4)(i)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122625-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(4)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(5)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(6)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(7)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(b)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(e)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(e)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(e)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "912", "URI": "https://asc.fasb.org/extlink&oid=126938201&loc=d3e55415-109406", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(6))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r488": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r496": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r497": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "https://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r498": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Topic": "954", "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r499": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column B))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(23))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r500": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column C))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r501": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column D))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r502": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column E))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r503": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column F))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r504": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column G))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column H))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column I))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r507": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=121590138&loc=SL82922954-210456", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r517": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r526": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r529": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r530": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r531": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r532": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r533": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r534": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r539": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r540": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r541": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r542": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r543": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r544": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r545": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r546": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r547": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r548": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r549": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r550": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r551": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(10))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r559": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r561": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r562": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r563": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r564": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r565": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r566": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8672-108599", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r568": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r569": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r57": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "https://asc.fasb.org/topic&trid=2134479", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27232-111563", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "321", "URI": "https://asc.fasb.org/extlink&oid=126980263&loc=SL75117539-209714", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "321", "URI": "https://asc.fasb.org/extlink&oid=126980263&loc=SL75117539-209714", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "321", "URI": "https://asc.fasb.org/extlink&oid=126980263&loc=SL75117539-209714", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r575": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r576": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r577": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r578": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r579": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r580": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r581": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r582": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r583": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r584": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r589": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r590": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r591": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r592": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r593": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r594": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r595": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r596": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r597": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r600": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r601": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r602": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r603": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r604": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r605": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r606": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r607": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r608": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r609": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8475-108599", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r610": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r611": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r612": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r613": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r614": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=124256753&loc=SL5864739-113975", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r615": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r616": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(2)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r617": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r618": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r619": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r620": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r621": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r622": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r623": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r624": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r625": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r626": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r627": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r628": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r629": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "320", "Subparagraph": "(b)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126980459&loc=d3e62557-112803", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=124260329&loc=d3e26853-111562", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r630": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r631": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r632": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r633": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1402", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r634": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(1)", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r635": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r636": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(3)", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r637": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(i)", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r638": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(ii)", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r639": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(iii)", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=124260329&loc=d3e26626-111562", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(aa)", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27161-111563", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27161-111563", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27340-111563", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27357-111563", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r69": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "320", "URI": "https://asc.fasb.org/topic&trid=2196928", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "323", "URI": "https://asc.fasb.org/extlink&oid=109237563&loc=d3e33749-111570", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r81": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "https://asc.fasb.org/topic&trid=2144648", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r82": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org/topic&trid=2127136", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12069-110248", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12069-110248", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12069-110248", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r86": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org/topic&trid=2208564", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "2A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=SL79508275-113901", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" } }, "version": "2.2" } ZIP 81 0001558370-23-010910-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-23-010910-xbrl.zip M4$L#!!0 ( "R#R%8I!P A"Q0 C' 0 86=X+3(P,C,P-#,P+GAS M9.U=6W/C-K)^/U7G/V#]LMFJE:\SD]B59(N6J!G5D24=29[)/FW!)"1SER(5 M@+2M\^NW&[R+)'B1G"A[^)",3#2 !K[N1C>N/_[M;6.3%\:%Y3H_G5V=7YX1 MYABN:3GKG\Y\T:/"L*RSO_W\W__UXY]ZO5_NYV-BNH:_88Y'#,ZHQTSR:GG/ M9.ENM]0A#XQSR[;)/;?,-2/DZO+\YOSR_);T>F$9]U1 'M[ZZN[RT]D]A#3/0![*ZN*\$V8=\)X9AM*/,K7S)O0 M#1-;:K"?SIX];WMWRH,L/-] )U/.X]>1[;.CRS8"M MJ&][T"'.KSZU9>703S;#;L@0I)*A8QUQ]_;$;=.+:\0_SUV^AIHN/UX$B1&I M;3G_RK"6)KZYP.0GZ+NXY!S]ZXVDOKJ]O;V0J1&IL(PL!X(9YVOWY0(2L,W7 M:6XM!0^6(SSJ&#$/ANL['M\5%QXF9BHP?,Y!OLIRA*F9+""$:TJW<8X5%4^2 MHS!AG]C;;9DHI)8I&7+V9CP7LX(I&5+A;7E))T)*AM2AEB&*:652MESNE;$< M)V4Q$F81ZH#/U<4O#^.%%/F(V/3X7ND94"'Y I.Q@LO>Y57O^BK*2==O=?0D M[$?'WUP7"?GU)?2DQQQA/=FLAV2,4P]LC>A=G\?93;;ES$#=+Y6]VPONVNPB MH4PACBG%B,N43.]QMBJMX],%I";JI="#7\9I[0*82EB(D[)"ZG%%.R$U%B3F M574(D"2]:!4+'21DY9.MZ_1U2!8+1+5%C/NCL"?VI-BJEN+>OKTQE3UG)CUG MI&#.FABVRED\TRJTSY\"^VR=P6A"B!Q/J..XGI1?^2WZNMU:SLH-/\%'M+UW MV(=+T"V"/Q[GHW)MDKT]L(1AN\+G; %--BDW-+%? MW'Y-/HSX4^=G^1OT5\"H*3L1M2C,'9*HA1_%-.53CGD6(P3. ?<#[)PYP^ !C*3,,6 >M>S< M,/E.M:BDY0-8Y:O]D76@+_KST6PYFDY01)9?='+_N!A-],6":!/4_,5("L]L MKB] D#1)V2,Q4R3%%8;2E,2<$L/\ M2LC!52_0<@!=)TOM%QTQ#VHA4 T)ZR'9BCK1(9CI_:LYINYXEK=+P1CB7X=2/>UT>2NG MZ*/5]]1/Z@!7QFG@6MJCO-F\U4->?[L?Z<+_DN4W2G M@,WG@-.^F?ZK#RI2$Z%<_X'ZK<"[51%P&KD?/"1!"#Y\+SR@QJ4&_RH.*2S5^#A1O4 MS*_:6*HMXCF:?-470:3>H5B.(OB0N/E+S)G! !6(DO=A*Z!0X_0ACY/6[T\? M$9FYWMI/&RLFA"N0^+Y@;$FF>KON+^_^,5M3&UQS#T2?@0*P M' H%%&HP?LB#,=8_:V-TTY>@&CHHB-Z!HMR8""&1W+Z/B\_,$87^=@F5&IS; M@OE-#)%ZX$!#\ 1:,],GB\Y[KK_(J5B_5&-1M339]7^#%:?*E:0*+&JN$'68 MJ"/*@?5BFP585A98U<:O2NBV-+,AA]'0WTR2"( M*=$EF$X">P>AS.QQWO\"5J]3-!6HUVQGX75=BMD!Q'!I8X(7>(!(0%J/ ' M.WMY:3K3;)WT+:8V"U&LH1*#=S'/'#YS>@= M1HWF$TL4+4>@1N;[ I5*;2/M,&D[GU4,CY)6C=1M'JFRN:T.MF:37&66;I] M"=#599&12^W%[T!I,?-5#$T9F1J@ D>Q<)]T!U3SP+S$W!53J6'Z4&#H]H/T M#J,:&,W9"W-\)H; 2%Z>&)[Y9WG,TH56VM[A^1A62'RX+)B[G^E=]\@C6 M<#B?/L@UL[G6!T?CVVCY)9X@6W2;A8^#[YSA%1N@>(_2TQ!XOPJ83+FWUS'8 M],FVUL%L9FM):%Y%EDTZ2K*T7Y4JRBP2HYR?DMM.2VW!$4JLDHC\\>QZ M$M$C<=T]&$5Z6#M)JN\DIMW.\1)!*"=4XUMO'WD'5IN%!\TT)2-X:U)\#+'F MQ3G*O&I("\Z\%MV8D]20/B79(=UZLWH)LDI:-9*UMZYWJ#5<=)*WE=2XRBA+ MIT9+O;T=]U?+PCJL&F+UC:+BJ)P@%6T59LIEPQY)"NQP:[^(N/ W&\IWTY5F M>-:+Y>T>'1/W(6ZVU-DM9)ZIW$@SLVGI'-XQBU9+18/M]Y@4<(#!;L0#\9$) M$G+Q9T$D'R1@A$A..G$Z@CCUGW%$'3D3?_/$^'0U<9VO$/D 9[*GQ=*=A7N3 MY>H:7FJ:;%QN)V9'J;)*_/*7EM02OX W8CDDX Z_ 7^]@,%0_ 3Q7!+Q2 (F M96;)9BBIG7 >3SCGT/O<,N2%"I#A$;AM:>+JE%@E6O4W7Y2(%H\K)T+*BH_5 M=Q+37F*:Q(DM2JB2B \-)*(+&H^R46?"O.E6/OWAK,>N$'WP,G=/M'1,:I)5 M"7?1=8M[%VU"!22N@6 5)*ZC [HAT&"I&86A5G/, 7MAMKO%, 62^IR9Y>- MBQ*J8%?OZ<(5P* >>7M6JB9YXVI85P=_0_@7KDVY[C"^WLVX^T]FR.GY])5W MT27[=68(CU-LE:#DAH,]09&5DZ!V$E4O'T5),T"0 X(L= /%P9L'*^]7;>)! M'+ETM3@5G&DZ\$K7C ]B=:+U'J=_%8N-]3.K!>.PL\ =V.U/!9>!JR16@UG_ MC' '7)M-R66Q8 F9&JPZ9X<[F(Y[$W*3 /\HA:I%H. 86]-;D;MY@'?<$-A\ MQU_%?4*M-[!W.!Y!_5NK>,4M$ ?>@M]A>XB.%A\4JIU/A>S- 5MPN_-$1U3< MDL-@#;,KH3YX+/Y_!#C^#Y]\G[,5D0^ZWWE ]-.9L#9;O%(W^/8LW[2FZ[=> M]"SW/Z"UYV\;.Z+P+,^&;.D+.@CR)/Y*J!U3(1.*-Z^E3.UW8\A=5 3E1JZ4 MW*OT4(B[91RWF%Q$+3PC%\=J.^!5T/9^@F++IN_)P0FV' 2NH.6#6 Q;-CPK MQR?8;IL^%;1[3)^8W;+)-N9]G];^>+'_9'CX)?NTN'Q8'!H.@2YQZ(:)+362 M>DN>=Q?RU?2Q:\AR FI11HX_L ^OSZ&JB#]UM?G>2AYH+ZJ[, O^%3_LWL-/ MO:OKWLU52S9,CU^@G&";+GN75[WKJ_*.J,HI_Q;U.4FW[&/P7+Q7NRNB#-@' M']N#7ZJ@M6QY?.>G,X_[8-." M\0?9M>YP#Y"S'H'/BXX:-,Z';);G8PF?N>MO(T(+2,X(#0N-B@K28%BP7',I MBS5]'@;+!6T,N/[,-ALZ&.YR.XN[H)0@X!PL7$]:M#O3Q>.N MK;G?[YA6K7F@_W1Y%!9.';;?F++TDV_+$GP2=6LR%*??GE=7W9HD_13;$FU4 MS? LDK:4I:>UW7(\MF:\14-6U!;':HG4[)%C H]\MV#\Q3)8S@8HB4X1'[D& MG]_1EQP6NM\E).$#N]HKY6;P#-<(7$&4VRNX?? ;);E M5&!*KC-XH!Y>'[";R2*B5BG2%1%,5/5['R<@%D(0Q10 M\2%]XJ'K :9Y:#';W/R"H_"[6+GPK6CI)4/.>+-##%E= MZN-9_[8#=" +*%?@Z4K^1HX6WF*6Q#WA&]B!J8^'ZW9YWUTZ:S5\CIOU'-"J M# NG$=*(?OCJ%[0=)3\/H\M)H]66J-3-UH*(>7HI.T625M ME.,D]38^.#1G*S_8N3_C;$LM,_,^7NS7U"+^70'.S1]4C[.YJ<#,D)I//54D M.=XA,W(R)S\3$PN#(;"%B1E$&V4Z =]H(ATU,SAS/N5X% E:8?LFSC- # LN MH[0X6;^R<2Y52R'XVE#[G?T#G&/ U?8]B[/_]21E,1GY<.G@S=KXF^ N"1"I M)>5KYD4+"\%GZ<$S,S]P-LU^&F/G &PA%&N4'L=.EEJK"4]UM)R[@( GPFML M0)FR@EJ>?)(2N[\Z/+;WVJ,B.,D6C<$;FZZ"P]E#:LCP-WX#VHL,?W)6X][E MW'V%U#[= KFWBUI^C(+>5XB3_MB38D,RK>XFYGGR-&O00/UM:W$V=1[H[N8* M#.V'K!34ICY)D3C>\I"<(U["8!I.;HV$\'$D#1R'&LM$QUXZ.YRAZJ&CV3I6 MZ[C+8:_(2/-HI%W6DY34I;6IV^IZI"?92GVU8G@I7')] TY>S9GA.FAF@_N= ML"U2YE%0 _VP;?<5P8V]VV,4=+HF.GY_X-YUS++7$!(EJ$?\^[A5-5J;?B^2 M\4U^'2OZ? *QV)A!7,@2UQ4=@;%%GZ2/L'3OV8Q:IK:"(?/OC,I9S&0@;9'S MY##+;J(*@A$<>9!+.0569)/":&7@X_QEM!BYO^'JD+(RLZ1!.75[I<%>BSKS M+)'H@F=(;6V[M:-=% &K?7\C3XF\L," R3A<>I':FY7:A=:Z@!;SQ:9W9\*( M L4$ZM-L$\;^P'#,/AG(,>J@7HF*.'#X>Y<>R=J".3ILT]6C"+:,1-L2@OTC M21\TRG20O3A$,VK'UD%/:(8!59CA]4E]5T 8[7/.L.RHX2J:4VEGI>$,&Y$Q M_A8K;6PIW1^FP?7O;X@W0,2Q6_.L!ZR6O8N&#SGU<;>8X]D[G%LWXIAN?]M= M->4I6K!'QX?AVIYRW"/(?O7#F<9'AX,CCI$GOK0BUTWD&EG2W,89WUG@B]K> MTI25OC SBHD3$+@[!_<,+Z O;!:EX.P<1GY3ARW=Y:N;=-L[ M5_-'D4!U-\03F^_7TP=5\9_1RRV%#7H N@&/N;VS5*[[$0L]&=<^'^;1F4!/CLY]_^NM?OORM5OOU?M33+-?TY\CQ-),@PT.6 M]HJ]F39Q%PO#T1X1(=BVM7N"K6>D:8WZ>?.\?GZKU6IA&?<&A3RNH_'"+L\; MT3>ML#S7N=.N+VXN+NN73>WF[K)Q5[_6AH]1ND<0;XKS$MK8^>.._?<$%6H MTZ%W;Q1_/9MYWN+NXN+U]?7\M7GNDF?(7V]<_/K8&YLS-#=JV*&>X9CH3(/T M=Y1_V'--P^,Z6LG^]D3L90'-BZ@N80KV5VV9K,8^JC4N:\W&^1NUS@(1)WE[P;Y=)$RES2H9O<4;Z2$&@9TW[0EP;C=!4XU7>>>\+]/6, MXOG"9@7RSV8$3;^>&<]O-495_:I99Y#_/O: ;V9*+=>AKHTM1G_T(1U,.P9Q MP!+IF<;J^#'JQH0RR+,!7YOGICN_8 DN"A1XL0O9[PV;Z64\0\C;3.BUDG8B M[:IB6@:=/=CNZ_94O5+BIM*W,35ME_H$M1$U"5ZPECB8WOL4.XA2W0%U40QU M#@FB4#MOJ0_8 0UBP^Z"M1(_D,H9(=,'#^4\\QQMY!G8EL:\>SFVIZDN5.\\ MXR<;Z92"#;7<^<)U FK6ORNMAE*5; \C5#?''M?H@^_!!X_8P7-_WD/@S(;& M._^F-+ABI6^3.1 &38PW1*-?.V\+Y% HV73!EFS,+6L#VHK64 UG+<,V+W=+ M7%C%]O#UD1?H=(C(>&80I'L>P4^^9T!+F+ACSS7_F+FV!2'78*HS%*5IW*"J M[>$=^PM(SE1JV)&KB_J!KC-UR9S;TL";(=("IPMHX_ZW?ZW<1!\ @S;-6/5V"Q4=TF< M/X:' B >R$X-^L2C61C@/!O&@@T@+B^0[='E)XSK2\YS^,%OK&LC: :*Q"^A M X7V-YB"ZUS69!M/R.:CIOP<%_N5/F@(28%Z+J4/+D'XV0F:B?D^(89##9/; MCV/QOP(;T:W??Q>T2?LP MRH2(@@FFT..ZDQKO7;YNWM[<&:U/X4I& _P/L]@. &D!D AC5L M8UE1@S"3>K:Q;YX%X44QC:D8C,:ESP@=4E+^:18I9B&I)@4=QQAQP-^@%R:& M#<,MW9IC!U./ 7K)<2!RF=6S&%F^DDQO@%C%8.8; >A#XHICT944Q\1C'BP% M6VK+I3 J&J$7Y/BB!AE+HQY?>5I/\I0/2,5F%_EGBB9T2)1T#[=N"+=^,OURLK0?L8I%@;5N#U.K 9?;JP+W> MT_NMCC;^WNE,]KTJ$"PJ"4QW^>6>VUZX%!^L>F6*%J:)&O/VIE%Q>XFK M=;5=Y LN,]Q8$.P2[+WSAK'O7LR@,PB;V(_.?WW\8MALS4SW6@8A[]"B_VW8 MXMY-)J^J=&:1EM+OE8:JN@%\1[8U<1\-C\V]OW_,P6>WV)Q#]K6C=,<(G8%:<(8Z_ MT;S]?*TLGP51[#B:2>Q^^"-IB?K3H<^2*K9V^R-*QZD#Q JD]Q MKLB?/0!*)E2:P%3A,NG+0J4ZB\LIF:'QSN9CY&:HXHF59C-+1O$$E03 R"6 MG0N3;J7"],=%;P&,JH]VTV;6EM#>B\\^KF<](MY+PU5]@+VB$;:U4[8;_D@; M1WVI%LG%>^(<8 KN=TO&BC"B#*8%AB[AFH\=^"YTIF([A2MM(]+A]@YUH7I' M(3TL3"94C_L=\BAC-%D&H&PL."3A;!7'D[7Y*"7E(9B ))VRZ%3GDUU^XCJY M9*XG.R(FI:"I[I=UR\*!2$,#6UVG92RP9]@KV$1CM=R,1T1U2;"JA^XC=E&+ M@ZSE-2HP-O7GC!1DM=$4F\*S*OD9CXC\DF!57S2;$&10G[SGNO!DPCC>YB&3 M*PDN=^VL@K,O*W:8=1E'SH4F!4LY(NJW@;SDSJ*]G($17)*Y2HKP+,Q5D9NR M6OKXN_;0&_RR][NR -7:QOT1#*P(-@%^N+$__L%*RB$"7MC:.?, J(V"G]% MKO-FS@SG&8U !9WI%)G">LJ0@+.$4K*::,W(7(JKLB M@<*BHU)E8^*4 M2S%F5C8EGM%5OGKB FYM?A95R]^Y% />O8D)O40"4+K.J3 M]FVT(,@,'@T3T+F:Y 0(S86K^DQY_%+I8 7_$7DSYM=8CSG/6#*4RAO7RJ?F M[8T"KSELUPC*ZT'%Z#%^1CKG9OVTM"? N#QNU?>A\1<%^6/-; ,.P,AR[NF) M3X#O L!5O[4J&:Z&9R*7!R-B5[.)/7^!0D[ 0+:@D-S-;+6*0P5]SD[7_(_K M-OGPKVB#8V:F$[",$@H(+>&SJC'C\G48$Q15Y/V=1/HX^FLU7OK:H$M>W%'8P686=I!V5 M5LS2I)1=-Y=K,]$U,!OYH:B4D[2AXAI9&H^RIW.3('DH_Z&UK%&O7.:3-!5I M12PMI/#*^;:/][4Q-6V7^@104)/@13"4O_999\0VE!# S7.TV=%F6^Y0X%6]46]H->U#&/9'9]P:=8>3 M[J#/3@).OG>T^Q_C;K\S'FMZGSV:->[R,X+#46??0E%::";PVG/V0E;[_2^0^<]\UP5O?.X8=@ZU.X;$7(=8+#$>O?%?/P MGY(>O@M.N_^M>]_K:/IXW)F,V5GPJ$+-G6H?56I!G96Y;.A5P$AZ^(6O>JS? M=2^P^^Q,O^V_(6<(M')EP>JL?G%D@H+4:]KY["1;^)9PJWB:, ,:?_NUN"7P M;$?/NQBE"@Z='63#P2:=!]^##QX!R=R?\[T=R]V_Q3SYY_KENB=O#1X?NY/@ MU@Z(P'E%VCRH2;-95=HBK*LR#]YCCPRC^.:6:!@?:4)X59%\]GU?DBLI6!\( MG;PB^P4]NHXW$SY$4+*X> NX:=[>-BMNYT4)CUVZNTTMJ+[S51;L?Y!!'ER? M;&@YRV).TV(RT>_XL%;J.SJ9@D_<>\3N)=2G'B("_LL5#XK<1;DZ3QEN-4-T?=?9")FN8P)07D&AH6VCGC9) M"8/;CC;1?^VPL6U0FP;5:6%]6KS"RL:WQ78M"E-7[CT@L$3# M9M>'^B#-^T=^P\O8D+>].M3S$SG$)P]S[5(3JH]U!1IX< G(Y\3PM?%TBMAC M.]@0/^-;JK1CM*%2F%6_G$2 E5]>K#M6#RJU5[JB8E8B*B6NJ5O05-4SYIM; M1R&L.QX)I\Z"!'<81+=SAP:\#L(U_]!?#6*QY=R MMV7PW'3'"_E3(/TA)V MAUSYVT8$QM]W6;#I@T*>[.4)&;Y3K)B_$!9SD&:R5; EQ[EJ++NUH+I+Z0'* M=M;>M*!2!4?[FZ_ 5;"O(E.T'XX%?+%MZ,CJO)EL5^6<_54&IJ@L]5Q $;8* MSE\44H*"V^D$L 3V($A];(P7@:G@0Z<"\;/?*<[.I![#13B29C@+[>$TWMSW MB7/SG0C=.8!5V#/51UX0E0X1X9>CQ)]<77T5:C#564'%9IE3#COT.Y/E3/.P M,]+&W_511],GDU'W_L=$9SMD)P-^!&(\&;3^]7W0:W=&_/"#/OJF]RN;<_Z% MDX(L_06X?D9]?_[$5A/:V/;9*U%,=W3@>]0S''9IH*!I%"YESTU>(%]",':H MQ"R&,;V,6,NXKBLP/UB2Z%5_L+D&#F!NF? WS:+G.SFV->\1W;84AD0Z(>PB MS9R[Z#8L^"@M:D=J*3DIO;O^:.PO%G8(-#K=%CV@UW6F+@G4';PU&/2N)NGV]W^K";]$K?=!K/0Q&C\O#=UP"+12AZC,;7)CP M'$MV;)9(6'P.(756>65R:^H[%CM..21HP1_Z%:T:2.=3KTVGZS$^-5P>FH*# M 78%IL,61D?&ZR.T1P(-4^S$4](>'H?%X2@X6@\M+IQ7SG8.J6D/ES=Y.#++ M<%5"MFVX2#7EW?O:;D.E\LRP&1VCBH3T(27M83&6CB:2:R5%(QF MPNJ7.[TJO# @<6E-ML4+TU>P-K+D<+ZPW7>T7 J4 R#(%#?L!AAVH^(6FZGP M9,,M 6_[T4]JQ!I*-B3N[\CT6BX5,96=^& 9*@%K^_%-%C.QV52A(\C/< P, M%8&F;#13T+5G9SI85C> MUE$\^4BT#+\]P36]-/_ 5!+ P04 " L@\A6 MW&=Z/ODL !JF0( % &%G>"TR,#(S,#0S,%]D968N>&UL[3UK<^,XV;W;F=J)RE9EF=59TN.)._>?=JB24CB#D5H0=*V[M<'($6) M#P $GVC-N.INQY+PZ"?0W6@T?O[?UXUK/"/B.]C[?';U[O+,0)Z%;<=;?3X+ M_7/3MQSG['__YU__Y>=_.S__^_7LSK"Q%6Z0%Q@606: ;./%"=;& F^WIF?< M(T(?+O]B/-P?VMU3\)9.64/7\;Y^8O]YHA,:%$W/__3J M.Y_/UD&P_71Q\?+R\N[EPSM,5K3_Y=7%W^_OYM8:;(PE[ %^W2>-#MG7YU?O3__FK"\/\ZN/'S]>1+\F30LMRX%P).T/M*0L,8R?"7;1 M#"V-:,I/P6Z+/I_YSF;KL@&C[]8$+3^?F:O7<\;5RQ\^7#+J_/L\H*+!I&Z( M/1^[CLTDY?"E/UW. VQ]76/7IK(\^C-T@MV9P69[G(TSX)ED97J.9[VS\.:" M-;BH-?1%0WQN'-]RL1\2=(-\BSA;)ES3Y77H.Q[R_8%G4SUQZ.0/!/D4C$CX M;AV/TM(QW3&E*@EC\+P9LD*J=-XJZG&# M-Q?57DNX>C/4K-T#/R0N3?$KRA MO J(:07^;W3Q&89^@#>4.S.JJ0Y%Z93FDXMN,9G3!G.V:CF!TX"=;#[*/"'>+/%7KR3Y7^KC7*M2;K#<6#;#E,4MB-%BP?[T!IR\M'; MPVJ_K7JK 2$4 -1,^^2CM:AQ>+-Q8CF_0]0R;*!'PI$Z@?8WDQ&FF>9+1VL/ MZL@"C1PGIF@HVBRQ-P\W&Y/LILOAFC%X3"TP:HXY5F2^T@Z/GM- ?MJ8LVL* MM*OW=>9HT>"/X#6=&&,@^W=#PF;*;+MIM;%[^T ML]RU-'&+6KJW@ZAQ9"%F'S6SV4N&:U%*T8J1:8:VF 1TZ:TOBJ*!6H0UQ=6# M0W=P>U/\;5G)VIEV3X<(59-8"3WV?^8!0O[&?(="@K?LGR@X7%OOW% MBT.=^W./KN'X!9&S4KKRXATN(8?QV(3G^P^4 5<_G5]=G;^/ CW_GI\KC4J" M1_6ER_1LD]A46V-A'[Q2%QPS[VKO.?D5EEKEL;($XB&B0D@_B5XM3?\I(F7H MGZ],<\L">^\O$)V0?<.&]!G0[R. $;(W1?$K#!&S@[:]&+T&=$UG9MW("^EJ M$ G4G>,'E<3IP&['"RYL9W-@N>FZ]>0F%:]C,<$?(^RBT5J BO[-D,;>N1WS MKD48.6.W"W$D<]T O!^Z#7BCHAIH*B>,YL=)Y7_>3,,":*F\:!<3:V<@^?.L$;()C=R/5WXA7->,^HK$? MQZ@3<%UL949VV0D )K67+_;- WRB^IN48UL"GX&_2+WZ?;:"/V5E&X;^:LUL%T^>C'85?J M?DR#-2+QY#GP:_;>XU6Y=V-=$) 9UX"E5W7(PLWDOS*\B49<0E )R4',4W#\ M5&*1U!LEKU151^E0"&O#I%D8:\.]%\H?N#+Y\P7'7ZGDR+08KI&Z-1\_?KR\ M-,Z-X\CT0S*X04K?#SA8V<6/?H'T>5HQ]^OT,K MTQUY%-@= R"G3IP6OU\5I(#;ING:40YZ/-]-)@*1@CO],Q?H?(/:RBNG$N;/ MUE MA3&C@FIRH6.:R8/J:!NUMO;[)$BM^_33D8OTP^^'N/+<0IY)-9TCAL)V M!;Y*6_:&TG[>1\_?(BO*@^1*J;0M'S59Z]KRJT)>K ! ;R(M 9@)=BF@'4AY M!0OG 'FXS].BUN,$O0PL"X<>"/;HGU:<.R/1H$IC"$6L\B@Z MR+6@8T^7 SL6LON,Z9ZC"J^I$'E1X^9>3TW>X'+8>M>VBKBDM4^$0_]&V8PE M#@D,L<-O7 LE\VNOX'+E//>K&.06I%E$',R=IE=C*0568B#EP-&\P%L6BIX:*7OV\HVC&]QR8,1G*["Q>4Z&PB1I#P%&J8_S&RGBVJ$4E],8J M0/2N)WR@LV=W(F#U:D*M<@*0II12H%'4@P++G.ND^K5@J&\?J4!\-$O;2@'\,@U:),&S%Z^5;M M!;U*R(PE0.@+=O&!3FM& =C^_>SC+C>D)I_ X2XVXKJQ_&9Z,&&1#.&1AZBI M E;9QHT\=2E5C2+Y[1:+E$5K @)D508!NU,%+!:,B/IC)830UIBS)<%6EEK,;4:4'+VF R M;DP/#999/4G,&FWU^:77GKLV75868KY&2,4Y$C47FCFR#E#PE5ISX@Z5<&[1 MSE/@ 58%IG=M$P.?UB[#JF01!G>(G:\M&3M6XGPTM"9JP A)XLKR+0ATPO&;"Z@\6' M6_'7NR'%9(5978Y4PC,OZ;9B;TD<5;F_#N)$-Q 6:]-;H,T6$Y/LQINMZ9"H MS!]!MD-W:M]'_@Q9>.4Y_T3VV!N9A)4B\_?8."BJ970L5B4SO#J;3\B 3F=L M(0A>5;QP3ZAI<-D429&V*3LE@68G+BDM:?T9.L(@3DEKL3LC;@\%6?8G0?(T MB])^E0A0Z-G?;IEB*$[YYFM =G"==>[>_,/ M3(:NZ20:3@:Q73^)@TJUIL5I&LH!QL:%06/A-]6,GU0E>4T4, M6]0$*95Q.0"]RS\/X+3HBP#5*_6_FL1AY6)F\OM?^69">> UU(V75-J+#95P M:U'2);3%99/W+N5%8-,RS@=2KX1_"4WV' %*OZ%SO9N804AD$E_632@E*AVA MT"&&2JH?9=TJT2'?L;'N5. 2K@9:[YI5CDI:TU10T'R9$?L^>]+)\5;(LZA# ME" S71Z_EME9Z@.(+P16&D(_E78*"BGIH4B'0I_FMR/KL HKP]?_Q;Z7%U6<7N8MOU*2>>+K>'=L\F#OV703Y$7S/ M?G!-KS2^W<54X@!#1Y,U+R0@D WS]5QC(XIH)872$8__Q\05#GV7&V,ZS M8X?"S%%N.V[D6-A2&TKL+UL%UA2S[+&"&ID*!^C452]C$&X-EB] MQMD%:"1!]AK@Z]UP$QV7[+?I)L(=(=]()R[2?5)QA^M@;Q+0$C?;,-B_R9OD6SX@$N]\._X M,L.SNQG%9FRW<\)A7*GBEG6K2,*V#<]>9 -7PZI_D[1+*F2*92E@K_FH+OUZ MYC1=9F 0^G3"MER\I*T;^6E2PF*%V7MU MQWC0)KZ8%$IPF\,U\JSUQB1?J^T0F6Y5MHE"1QAT2*"JMF'DNE6@0[%C%UN' MB$NR_8,#&H1-)(>*="?AH* SPY9"-0[0ICR_-MVP)/LTWU0?5@J9M=FFBIBU MGE4KH&XAI[8(@*:,VBS Q7S:(J!Z=Y?XZ8:Q%R""_&#L^R&RIX3]R_)>2OT0 MU>["5;;* /#H4^JNJ':O29^6'9D:W"P\7:(&:N^[DSIJQ8=-U%#2')LG>(M( ML&.15_90(X-\&Q6T+%-AA9[BR+=:7U $*=59A9[5"=*RIE9C&JX,8/]G"2H( M98X8U!#1?8^355%>F*^#,%A'CU&6G)^).T@N&,JZP,&ZY,:EN$M%S%N]0ZG MC4*];S% FLI]\Q$H5OL6 ZZY#H+ID%]--Z3;]#TRV5NH3,]O273Q1IIRJ=!3 M*%V*?;42A >8O,9!><]R@LC[-J]E4(EIN#* _=X./2->^E6USBJZ6=(=BGKZ13@K*ZIPC$HJ*QVE3>558VR)_DJAU:G) M4NS*E%F*E?:B0Z9G.:8[]OR A%&RI[3 $*^U6"#%[;4\>I(K\O8,@E87%NR5$AZ".6ZI \@Q*5K@+1/5>1;U%(UEN *(/6N>E(4 MTNI7"GI>GWZ^R)'UCGZ,?\E^MX8.OK&KL4$C^./9]E.(E> ^39R,[1Y?+RP^6E<6X3^?1N M?#-8C&Z,^8+^KW_:X% M"Z0+U";?Z$(3C+P'T,M YOL^\X;XX+SV#*[3MB!>I-6P_D2(C9%)6/&8KH*.7'Q2<#7MSDRY?TH?C M.>VZXD-$E_/-?A8Y$Z3BE,V\*<"OE_ #VW;BJ1],QQY[0W/K!*8K94))GUX9 M\KXA0TIPTE7!$U[I4='QJR0X2$9B6QK/@%+&1'Y=<9(@2M MV3K]C.*S#[G"J/?OE5L_-%4>=;ST,G!!HMC9KGR#X;;LE2D_-F0*%P.]Y)]@ M*@M>0)&FHZZ2=!@I'^1=>F7(7QHR1(Z*7LX<'VBFJVZ46%CFF*0:=L0%TW65 MC=X"V%P/9.^CY(,+% [^,1X0_WBD1LU_7SFQP_['']WL8_LSVAAH0 MM466YBTFR%EYPY 0EN80'9>85D1?SXX^Q94QOE Z,:2NT9+VF"&+E69WEOL' M;UE;\U7 QWZFAF!MJDE(/_0X =EC2 R>3<=EVP;%?FZZZ2OE]A]A_-36! 73 M977YJCX\! .YF0Q5QQF0G!S!\Q=8$&**]K2G?-VL&8J?DT+[YU3C![CWC[FQ M!E'6AS PU_6TOT "1OD5T;7R^YH1I"K=D(Y@C0Z+=I!)D_>D7$ M M)R^P>O:UZ3O^=/E Y8:B%5EQO.3'*;7MJ ?!1"WJ<<-.&]TC]K(?&8')C7 _FXRAEZF$VFH\F MBT'4\MPX &>DH#.P9YC& 4(C M'XSSV0_]5SAM4APSQ^Q8X2^BVRF"T@83[)$,?67)62V.W_-BT.EU,D@Y7JV+ />RAHP6>E?]3J_)@4D@ MJR#.%2_+0>2??Y!6Z?&S6E<(YE<%(2V]*U5 $ C_NKLAJ&6Y%1QA]K7<2LD! MA.-]W7R$N HKR'KM6X]@&#SVMF'@1XA=J:W$O!Y0%^!2F>4RD(&=8O+ M/?;0[MXD7U%P&WJV_(Z J#&$?;0+N4\S780[D!VVP0I7".-V$&J[@Y#VVPFQ MN'M[\_WF!).-672?8L3^81W/C=C:]9[4E%K/!<#$W?ALO?C&&C_/%]'XTF[.&"4Q&"B@C!961 M DO;X>B>M@=@N50;O6Z1%2![X6PB2W8>H1/G04MM3J#/56J?3*V*U.DZ24JH-Q$M M&,X1 /D!91(K04R_9(\2F:M&6WMZ% @^$@!12)/DU(1"1IDXX?6JJYWH,#P$ M+PR &"G1ZEOQV*("B% =MSUX;P[37T7P1/^>CR[686VMDARZ:+OE9LM)W?=3Z]JRX8R]RBYE47.^&U&!<8;*; M+E-IGK+2$,J]X3@FE5B8?>9:$5< Q3X7:]-;H,T6$Y/LQINMZ9#H 2Z"[+@V M+O+WE0'_B:C^)N]6[+%RV#65M%;+;F5U.!^0*UH55:10)K0;XNB5LE\0-3DH M)$&$_C$A7'J/JZP3A/MI*R*4J?BFMEL< M3;+W.LQW<_7*V/?A\H_'R7P?B]@<4@[QS=Y4PB&=06VR9%I[Z2( M2_#?D+-:!\@>/"-BKM",K@8W:(M])Q@B$L0%PMG2L/^2PX?*(T X#JS(GLHX M=LRU@651C4LY,7$A[Z2.(%WG$<6I:-97[ OAQ*TBIRI@!^@,-GGN1,@X64,( MCQC4V*5XJ ".$LAN%U:+'Q02_Q3C!^?& 89S:MR?,RB,(QAO\85&1V@STUOQ MKD/E?COAF$ .D_Y/*:/)NFW CI&/N=]WG MCARF)X3,0:J!E.:KG)39WW4?/LI(F87TK396J^4B:X=?W^I>O=6].OVZ5X_S MY*';":9NKF+@M+07A,AIUY6P2HGP%BT]D6CI">8W9,O>Y!W8!2(;4>:*0L<3 M"[)600U08$@.[B'8%4=2!DOZ[\!U\0O+&*=MCF<_\?N0HM>)6Y_EQ$*\G='A MVY6D0YYN:D=\8+'OZ(9"P,PJ.OJ=(WP16R,\$ R/CA2[0VFN0F% U$<4$+-E+]P6WCP^O%K*4!U,A^,]?M/E$<,& MKP@WG.]$3W4ZI @@.1.KQ*$RX0(/-I@$+-EFB/T@JFPX>/*C=%F!-#4>%<)3 MU#5DIC'>'9^VEVRD:<"2[ VVD[*< )O%%1QOY:+D%U;<[1_()%./(K5XP9P3 M^H[G@V#^M*1 R:E_QQ0[1?FB@%/HZ:R\')#.9X00'3@%&4O3#/#^EL.]0#/% M#:U\& B!@Q;EICXA3D<8+"ON6U8A:IR93#BH6NXZ]$3]LO\;]4R?7\LWA0>3Q:# MR9?Q]=W(&,SGHRBI]S@A*T1TG-*(YP20UGO+2(SNG.?HN"!#$;7D%9M!B(36%-18&J@&*E''RU#]\Y9 MBLPZM:[ E5;*>S4, ?FI$D2CR&!UW=UW@Q".;Y^+"7:GP<%4F'?O?NF,B2MA"\LLIDEN #UGA["YM\DV$3CDE*U3XN=_P% M8_O%<=V2).]J0T!0V+JR4 U30$Y9 IR @\>?(>Q:=40RS:4C-OIFR_A:W:UI.2XEM2:UV\I>W?B(0H]>M0]#4NS=W'ZYHXQ^$ M(2_5CKJ+898*3Q+S4D4(D-?\*T6,:2XKCB[Q$8K--*Q&@E2#2AY"$1$X])=Z M![R&0'P#D0R)Z [#+X@N,B![^HR(Q]X).(0S&(ASO"2'7\:>C5[G+^:6_2*U ME1J."<&X%0MD)F+<#%$X'F&R8)2%_DOZZ(OY*R$CR^QO(U M)@2_,&_,W-)?@ET%/HN'@. %M2( 8A0!V2KL^MFQ?FMTCVV^)OXUO /,C9DZ-4K.*775AM771,CRI3S9;&A) OJM&+LQOV9K0T^B3K!B%OLOH:7(J6QD=U\&;CQ,_GW#$)JWBF M]U?.4[O3^_OQX3V<>%!]B9!) $6:[)AK!" [[K03&KE$5TI:?,M3[-9[AYZG MF$\DX]])E+:$X%V"YA9T@="2$^-N7B3^UQ406W4^$O.ZY@YR[,*GY Q!*_NE=]F%[Y M^[$S_G)Q \M?5NE6B8-QPWYC)I?M,2D&O^,3_?D:DX!I](P"9[J#%4'Q;3^^ M&:'6I5^2UPJ2J"'2,?$/Z^HU9N>M5/6B8C+,,SC&UC@<4.S7+QMJ134J8 -H M/>*%0/=I5E1THJ/Q"F'X0L]^^=8H=J&$#XA\A]],=I4Y+G5>+>?A@SSGX3CP M]Y?W4'(U9\;NC@MN0J5^.X53$IL[_K/&$I(V46TKV<73"9C' 6%XNJ]7",\15.\(_7JR"C3Y[;AY@Z^LU]8UM5N.- M[D:1Q3D/-QN3[*;+X9HI^=B;(0JV8P7(CCH\TDDK6GT?BU;??#$=_NW\>C ? MW3 +\&$TF0\6X^F$_10#P)Z+B4$P',\@!R ,GT%AA P, $5"YVN3H (1TY5^ MKG?'-ON [N#%)+9:#='&X_?]J%0T-9U DN.6:P/(8FV;K9GGHK)8:]X8:^-W M1,.S'US3*WUEIINI@"38<<4]LTEW@KWN\]4R9 ]PZY+36_6J6VQK D$".>E&V'NF9* CC"Z0_T+\R']L1=[ MD;W+<'[ZD]BF.UDV^I'T/+V_"QG_-:*Y-AG/3W_2*_0)R'B>WM^%C%-*+Y&C M4\PY$(#(ZO^&)9U#\N]"V ^4SV7&1;O;C1F@PY/K(.SS:E">M-+H-N"KD?J[ M4):LR5=*(,TN@ )\WXF/4&=MT^%$*'"L\ZS8KC =^WYXW%VKZ@XPV+X3OZ.N MW@#CUG>Q-^T-V) @'][&5 VXDS;;OH5=J1J[O@OU.G!M$LIJ)?>[3P[=FBZ@MLU@G;?>-ZB!//^[T<4 /G-"=8SY,:7Y-;.=H%'7B!Z M.;#6" N_D@%5,BC,L3ZY][H%5EAX#Q3,)>.A8CPFHNHH>ZK0S7%+V&1""V] MUN%II&J+(E4]IFK+GON 9M&_Y6U#SML&)$FCS=;%.Q0;RK%I+TW@EK0_B1.? MEI*W)61HC[G<8Y14*8<(!UX:N;#D=Y7.)W$0T9"=56G2\1'9R"2L9H=/08JP M:L3K)H.=1)B\!=XWH5'[[!][K$H4M0]3JXJ8O]+6)Q'";8&!4B( "L&>^EVI MND'+$[@K):@BY:$7YAV"K M$C$ K<.PU^9)&&P2-IH )HB($G7SPZ=_]*)]L83N1?]/5<=M;3;RW MFGC]'FR]U<3[_FKBO57XJ.4BZ:[P(3M>^+[+?7S/11*^D1(?T L?/)4C_51 M^G7KD*AQN6"V,_Y)G-[4E[QVB/0MB%;T'U9(P?%6T6-:_OZE$7,E3;AN?ZZ3 M.&_J5^3D!(,F?G7HEL8P5BO1*T_M3G$2)U_][JQ<.@&2,?9H!/:BH-W0W#J! MZ49X^#/D(_*,6&'DVY#="F,W,-E)D$"0:HQS$N=IM:2E!C$ B41MFL0WK/:N ME#]X-AV7N484V\A\;'L)*IWN)$[V^EV.2FG6<;0^.W\D_G3Z1X^2D'0[=]DQ*0*-SN(@N8X_ZQI!X$H$_(:$=1H&?F!ZMN.M>I%0R7S] MBF6OT>8.J09-%NL<]V65C\6_LEA*C\8ZFK!?:>P_--T1V: 6PCW$8 :^'VX2 M/+:(15=_Q:P*B4NAGID!.A@H]]@+UNYNZ&*?Q5H)-8-X;Z[J!ZE?4>TM,JZ? ML-#6UD[RQK[GMV.N>@WZ]T=$?44#QQ[]$BW,5^3/J:J1D8?(:O= \!]4_?R! M9\_#[39.KJ6^HNFO;UW\4K>2X-5EL9+@>#*#OHSDK+,B ,&(HC 0, M@\)AI $Q&"0& P58C<%QY& S(&/"SM 6$^9P;W 8Y3L/Z2JVPF2G5E*PZG ] M+W(Q4,>'P=DD3$/$UTNE/2!6%ZS'T/0J(D59[R8E $UZ];2D#Y";J J2J< C M&&\/1YO'!'N8BK$91"XE@Y992)[/O[Y6K2N$&[!*HIAFF1IJFHW ZLM(P2!I MOC?<@;AKU (I^+>,JJ[0)WB/*+8G[U&PQO8179&("%N#N*73LAP(D>TXL)&: M:X'(AA-G*+0 <56E)?)S$03D?LA M'U (R1!'Q=#B:TY^-2?TP^55W@D=/LX7U N=&Z55HDZP],$B!]@![B*4H(;\$_H[-XLR<4X]_QB-KJ-OY*!63Q"P6(= G@1=9Z8Y*OU?SH7#F MRZH!/2,O1!,42+TV05N0/K5 #C.Y$'QT #%G8%G1,>0,61/R25$T!Y0X[IWII/Q-E?[O'L6P>YMFHRD5IO"":7E ^5L.GZ M35'D(FH&;$)O#X=/5U!BLGNP5A#9 R6LJ3H ! --RIVJ"&D^WZ7&IH]=QXY MC8Q,P?FZJ"&B <+"Y:E\64!-K:O&FY054!.\RZ:^'IYZ!"X)B4R3 M6\*)OR!@OJ0]($.P,N\E: $Z/=\?8;&K9W01"HAI!;\YP3J)9(U>+3=D)=58 MT)[^SUZ8KP(VUAH)D"U9F<&U$ ;$>E9Y=+K<8R'<,S-M0-R_K,FN'"J &/&% M8-]_('CIB!Z7R;0 \3Q5329D$ '$@CERZ7"K+\BCB[5+/?F!O:&T]:,C@.>D MPH70>E'K#.*EJ+J6C"*.@'@ZS58I83>L!0SDM@3Q[%)-;G$1@L0::2$9$9=* M.H%X^Z@NPTIP \2[;+T"9ODX7D@AWLL<]62O$44Z7>5N]$J7"4HXQS/)+J(! M197Y,)3 ;ERO%Q'DBW:_3F<$\7Y23:GIE##@1(["O]>':[H+B8TE86L8#RLU MXC4'*T!\B@T[R4:;;@#CW:.:W$@C H@!@PU#XY\1_*P^36!Z*^?)17'*G2BU ML*03C >,:C*J##E S+M!6X(L)P)5P*IL$Q@/ M5D3!850&R@JDVWSV#WX)I> M0!T=5I%I&Y49MNV(QI+%K;0CC-=PZB]ZI0@"8F2LXL.0$"1\M3?7!L:K+W67 MNBPN@#AQYYA/K)Z\@TK8P6L(X\F3FCSA(02(,5\PME\<=O[%#SL>?H;QTD?= MH.,!#4"DEYMD6DROEF,:ZB969ZG0J?+UM]3C]:B]X1[2&5-X)!L8>\:J9IG] M'R\_%!*G'Q\>[D8L=WIP9]R.)X/)<$S_FB\&B^A;8SRYG<[NH[J'M/D1"! % M]A^]T ]-=TI8\A3Z,V04HX23957+N_2L8 )@),G3TAYP4J=5&)/60RE:>A=! M 6C2).F2/D"2IA6D3X%'W55=O"5FR#)3O,#=L6Q6Z_":BC!/M+P+A/QI)9%* M,D7+40*I'X5M5TU%[B"D4JFBI* =VHK+O\#;MZKFI,J.F:!*R.:%(A:1\K/WK M'S[X*0(@2)%HR+-5]^[D6-V-;K"[ 30:W?_RO]YV 7K%<>)'X;]^]?&;[[Y" M.'0CSP^?__6K0W+E)*[O?_6__NW__#_^Y7]<7?WG]>H.>9%[V.$P16Z,G11[ MZ(N?OJ!-M-\[(;K'<>P' ;J.?>\9(_3QNV]^^.:[;WY$5U<9C6LG(3A1B!BQ M[[_Y6/PRR^A%X5_1G[_]R[???_?]#^@O?_W^XU^_^S-ZO"_@[@E[6[\-,/## MW_Y*_\\3&1 1,KC]]?_?#QF[?$^XJSJ$'_JUP8^@>1.!]__/'';]FO.6@#LH4R^=5+"X0J M\)^^Y3]^1:88H7^)HP"O\!:QT?Z:'O?X7[]*_-T^H+38WUYBO!4/'<3QMQ3_ MVQ"G=#)^I)/Q\<]T,OXO\J<[YPD'7R$*\7FUD'+_8T$C0_AV4,Z>J48VN6-_ M[LIA%2GCDBLI_=,=^:\:L_@MQ:&'O9Q=2D3Q#=D8[)LSRI1VY-8(!E2%H[@N MOO/\=D7-Y[L__O =DXW\X>\WF85/0V\>IGYZ7(3;*-XQ Y@^)6GLN&E.AC'/ MZ&BB?5OP1S&G<9U))W9SRN0_6V3.(+YU(V*M^_0JX'/+T;=QM.O"5\9%I(_S M]^ I.)6G)DR,D^@0N[C+)\R]*QNIYR1SQH@M$T3JQW%X]7G]U;_EJ,@)/>+E M*3+R2^QO_N5;-LZP\M2^RS:HH66KP@OQGTB93!1!851LL"]6U M@()3V1,65*I 01&#A=9=;:;/UML$N]\\1Z_?>MCG*DO^H]14\H]B7=@0BB=\ M-W\VJY4R]J@NGOYF3 /% \O73 IC5MV&X'!$1?N/@Q,3WH/C"N^C^'1?JX2$ M4S\)TZ>:> (&HI1"'N1?OP!''-Z@)CSBV(_(;M2[(>Y.(=$)')P6"!D^U8$: M$(@&"#B0?W\.3+;U'J+@<*YJ2*['7"=C)TQ\>NYI]5]-4,#U4\)V8RT]@8-9 M5X5,*%:P MZ<$^/GX%L_P ^'W1..!>(T0A&\7$^;&8'#M!SJ)#F,;'6>3)-;<%"TJ1M82IZ[42!4#--?B1J5 - M=8(8,HIBE!% E((QO=HX;PN/1J^W/K^2:UGOI/!0NM0B0%V+), ^J/D1*8Y M! G5L4ROF%//(W.19/]#(UT?I2(*8:'41,%X744$@ #J(>5"IAH9Y"3_#\3B MH6A6"(M#EA:*85@:V MMBWCQSAZ]4-7OD^1@0.KA81]H6Z8R2U G^/W^O MW-"*@8'51,BZ4$EJD' J(F"C54$X#B)(IC:HU'%-8^Q(%*+^LWD5$+&7?_3J M;T8_4L9E_T]/?C7Y7\>"-;\O M$(,S=S)88_<0$Z7Z^/W3QD\;Z3IB$//?5\9F_GU/?S?Z?<6#-[XO^PU%6_3Q M^P]/7Z,'W=/D4B D]_-?UXA@_FWK?UH],,*1FY^50Z#.)!! MBYV_N2^$$2R)?HO!X"Q7Q.ZI]59A0"RXR4 S 2@#13FLV5#R[!#'.$SY71K5 M3;+U/YQFK[6#0VVZU>S7M]UB6("-MXH1V=8[PT$%$N)8!N\<4DP3A_U7?..D M3L:/(B0N!H>[95"Q?WJ](((%N5>0,R*_4"AP:+Z$DVN.T7OR>.:D^#F*C\J; MX H4Y&UY@]GFA7D! G1G?C*^ZMH\1CDLU WJ8 R/IJ+KG1,$UX?$#W$B7^M. MH*!45,AL745K( J*AA?]L49*,IAC7WQ^0['SV35_!1'7]*76;3;.Z'<.4F@ MH31 R7Q=$X2@ !JAX$.F&3D*XC@H0S+G%%YP$+1I1AT(S"4(6#WQ"!4("(?0 M&%[J#RBD\6]-QMO13(W(_6W]XA#YEX>4/DRF)V_YMEV)!'8"TA#EY!RDP( X M#;6R(ST3,4S$4">((Z,*-M0&R)Q$XQD(.3'$3K (/?SV[UCN#QMP8&8@9OA$ M\^M $,HNXD"J#1P8,6A$P,$4>E"N1\S8O_43UPG^AIWXEOQ%M+670L+EZTN8 M/DW7/P$#R=87\B!/UN?@B,(CA@#WY&1HSL>XXN:!FI)3^7,I.2C U7<+V\4U MN 3.[)6XDHGF]7@6=:VJ ]SSJ1&9']TG\U=<>EZY!@OMEP6,BSUS!1#0-S>X M:/5QV?LZ*_SSL-R/H-13,K;'^ T&B;H2D:%0K-$S5D1;FJZ5')*#&ZX\H^6@NNLN']?)N M<3/=S&_0>D/^YW[^L%FCY2V:3U%7'![P+?D:LRAD$OSBIR^S M0Y(2Z>+YFQL<:(1AFB28_#]OX[Q)YJ,7)1AM.T/HJB;V(&-<2WOSV-#@C!*B M4XER6KP094YM@@IZ*"=(WR,-Z[,;Y0?-"&YX$S2\')LH=8)QI'C%\5-D2H[5 M_.?YP^UB U.6$0FKZ6:Q?&AL_$T=83KPG4UR0">9GY@C MCAR%0*:8ON#X(0JCN@SJI:X-">'3GQDQ:C)#+@T.!.QC05[,H(3]17"2"-"7D.,.HG- MJXQ1A@.Z#AE1%NDB>UUR-4?9OS;3_VS&6DWY93BMXEX]4YULH4HI?4#O3N3+5J1K5N.3$YAZ" --TS3VGPXI[?*#T@@].J)G MS2:NG'7YYZL)C&/0XG&^R19_N% %??D5XQ=BT_XKKNP"R&KL/X<\A=4]LJKO M]%%[%$Y#C_TKX.W,O'\?I;0R M*TY!!3#2*IF)Z:OC!W2A(A*LG0!G17Y\G SBL+J1M\]%]9D>7:?4A;95;J@[ MXTW',UM,T U^2E&)/$$%X2MRQKVBI"?HD^.'A3-RML3L*UZ&.R ;/

K9:E)P M@-RU%EX$"6**-;]8B[O'U?SG^8/Z\7/<\@CQ-R)0S]\3AYQ MS![+MSR&D(/#V$8;^U7#D,$:MPHU(XI#)GJYD8&RD MK[A5X^E*P[A5]6.PH:TY&931R3H/T(-/LYQ588GHUYSL_X990(>2?K[X]!-] M^3O]>;Z:?IJCA\_WUV3SN+SE^\K#?3AYO%PR>K35>UR>Q(PVZCE6Y* M.Q&PUEQ5.ZF.M@JXOQU"VO'8UUCR!_U<3O:YPN)S)?QS124A=(6>1 )#.IG, MV;=5W.Q-Q2I'TR:LAJN1D;#%V:CY&VAK !,3'5AB38OU8,\EPP@M^6ZF;DSR MRJLW_JOOX= K3UG8)6@((I+-"+B2J.REZOMFAPWJ\SSZO M5O.'#0)4Z1G90$U#C_[/_/>#_^H$-$=TFLZ<.#Z2<\O/3B OZ:6'"W0,Z")8 M[1R@@VC^(*#/55/-Z":9IBFR_ZB@3Y"3HIP"8B2 3@)#2,?. KA$![&GGW#@ M;:)[)V5]2LN42W$+2&TL&!O2%*9J/2THQNU&BY^&3E&LJS2ZVF5XM11A28]( M,Y;23Y[U2Q2G5X3X#OGA*X9\"2#/2J:YV+H&TYD*T+ZKG["U'5DW$N;W:GWX M:\9!=?+P00UO&#FGUN7-3UTW.A!GL,(N)BLG8>T!IRW&IT0!LC0-,6IFI8 W M;T.MS#05*4-!)0Y+FA_72C1"GN?($E=D@2H9)*K#S,YTK6:AA0EU)Z(M5/U* MI!4-X$9$DR?!A8BX/#O#-F \&O'PE[Z33T:"1RGSV2 MELBG1H&Q,1TQJB:G@C=N@>W,-/0G1YD@AL1"P04:V]9!'87.$F9?"(-+8: . M19^BR/OB!S)!RY^!&FB@GAG]F#-4UC$EO/A/ M >;+![&6HA%2BR+JH4(5?-07JU[]L1T/H!2D+E."^H0Y:G%.H<4>/I1=TG(" M0+6[AY'-R62#(O)MLLKBD<6PDC$5B' 6$R["%4[D4,;MXXV5@37'QRA M4HZY:APP=M!?BI17D^ZI^L[S&U7G'[[[XP_?,94F?RC;3-QA)\$KFGN_W'Y. MN(F2O57EZ'XB3F=LL\K>4SBJ^1U11S$#+VLQS8D"XG,3&N1(CRW)T?KH,%;45;RJG>GB&K?$;HPU=*Z"7L38TB-XOO6Y M4BVFUXN[Q68Q7Z/I ^U"OYS]^T_+NYOY:OT'-/^/SXO-WZ M3._!@0H!W(HT MGA[(H2$M12^1OX)@STN$SE+D=S 5FP!-27MTCC072"\9[108-@U-S+HH :T. M"99Z)F)#GJB504/?@O;B?<^AH30[/F"O:9ER"67P8/JM%N!$Q<7 $%JNXD2D M+!0>B?PZF*[WDD#6ZMC0(:8CU]FQJX5WL#S07(YC]T30)JH]F: RL=I204_Q MK,@%%3.EG0Q:H%N8"]I5M* T.TN.,-H[57N.+'I'%0N.*!V.)K:<1UHRUQ3Z M:V;YTE^W:CELT.>G"MNTRZ>NZ55AP:VOR;C$ $M 2!L\Y4)MAB4TN"6V,EX" MV+2>M MF@0ZW:"ZDOK9K*;C'5;I::!=+"WOY_!4UK5O 6C _X]"5JZ82 ZY2 M7HL0IP7R). @=?&4O C+X648O!9&%0>N_EU'(9;W]XO-/=ED\-N*V?)ALWCX M-'^8T?N+#PG&9&U)<8+^)Y/Q+S 5[SM?!]IW =CMRL^B2[[.%V!5A#_DEWKB MCEO@-QK=A;/E-N\QSG+CF BJHDI"2*B7)%*FZP](&F [T8D/ A>6.19BEEE M5 8\08LD.4 50NW#?<*YWSLQ>J4(Z/_^[IN/WY7-3M 5^M-WWTV^^^Z[O'RR M9X?R_3GAPXB/ZX2/_XP01O#UV M4_\5!T>8BTC/8X5AG>#1\;U%.'/V/CF:569==J.C@0AT-:DM4NV.LA7+_&6E M)DO-.[\"$5%,Y(8%X1L5R."V(Z*YPZ?HB]O#'9U'4/ MNT/@I-B[P5O?]66G'!U$&-/1%ZEJ.NU8QDU'ER5!/7F.B(H.>!\JN"A#!GJ0 M=KY4.,,$,9A-C)WD$!];-W8B0!B#D+-<-8 FE'&%E['0#)MF@+4MWK#J_"-G M-\3/5#-5"JW-]1U.$I3FK&>[/++)B D+ DJ*T=I+0GB*T7 MO+8@:'U^L!KF_E);$GZ-:4U\NLDWL5A>\N QBED+F($] MCOW(FX?*/>ZHLW3MD'^Z(]U;<_'6J1.G[U/ 'EY\0-&XY[?C9:'PQ61[:HX$ M#3SA2BE.ES>ZUKW-[?0F%SQUJXL(C7PNEMABS54]V4PN8]9:SV.!BKQ[H]9- MKAS9A@O]-M'D=_PR3.!K?S5;[9D !!]%,>(4>(2L;)9J0V9 ;P%/[T M(7E:W,%J34 3R09#DHDB-Z!3#&##$;/3;C!9)_(2T08CZ2Q,9AR-K !KC(3G M8700/D>PQSCJ(K09!H>VPBBJK&@;A#VY9)V$J!N"+Q0"S B699I-!\EK6/:8 M@T"8-INHH%AA& U^M*UC*4\SA#.1+N+4[<2BK,F.AQ4M3/#E*FA:>3LT6SXEQ2D4+S4*+$ #<8G>.( AS20#3W[G7#L.04TEL,J\X? M#2F4AP\IM"5&(#]V2$#AE5^Y5QE( Q$@ITB;*T%1A(>; M^<-ZSLHAK)=WBYOI9DXK.9/_X:42EK:)$. T3LY-0].RA-,2%OU*H1O5$(PHT@G?-]'.\4\[L+3 PBB.DO&J MP@@!C2N*@HM6!4&_0KT3LTH.BGYIV6-1=96K=7\%=6NK<[IFZF]!XD:C*=/[U#'\C^G8?NQZE[ MH_O.<$"^#66O1EL_I2N'1*(J %1.ZBF+]?33_%> 3-/ZT$T'B]/3PA=V/0[6 MR#[5$-%G(H["X"N.GZ+16#1B8;*MWFT48_\YY+TZW.,F=L+$<=E[W=!C_PI8 MG_)/Y/A)I;O&6X*QPGDS<-?)8:5%=LP,#>,53$YKU=^8&->X)S,G5+,Q?'NQ MH(P+E+.!*GRPE\053A!EIFR_=63DV"/3B"9/<;Z"O]^\!,_Q6L+$'DIPF@8L00JPWF)3=!X-&L"6E82L M,F8-D36L64'%%G-N95$<8!6LU&@:DUWX,U-?]'2LK>B/SI']>4K5?));^J0P M]83N!3A#4/61AYV?BFQVN;$>\ISEQ\ CPXS]%=Z3"7ZA+#9\NFK^U'B 'DM' MH(:#4B'!^*-VCB3J6$$4[BE O4@/J:IODE!:Q@'H)1+Y@%&OQ(^TQL,+I01UW#CO_H> M#KVDDJ0].7P1HW>34C#=TIP.N-M,B_" Z4>7>4@?Z$ MO!P'^C4FY>8VB+XD^H\P!2C@;R^E8DB>7#;@(5]:2I@1/;"4/:N<3=<_H=N[ MY2\P;=@?<$J%>(PCJM;>]?$S61$6X7*/8X8R%VV"MI$PQCW.$-9< 4]\+1)KYT' M&@?VJGE0(=JNEXO!4"-AD?Y\:>X(;B+C8B+#(N>0_IW^RZ6S>. 3AZ)BWIQB M*!#'1J:$OF?"-YC_[R*:FD@F43'A7(C#.J)^H53?3 MC8)Q!]*'O89&YT30AYS,UU1A,TI%-C(J:;%F?E#'RD%DGKW0ZS=VE>9DO.#-RN(9,+(3DP08\(F,E/7&.YD&),QC&0D;VA>Z0/>6G5BW M*Q7J!N_)VNFK%+L. A0]%+!9BQA6?CA*A8KSVAD$$:/[1@9R+YBN!8L/,@&F2B-!;F='B?IP';%\E M<;.F;J2ZL'ZG8MA,W&5''\G]%_,%RRW9TQ'V?+*7FR8)3F67T&U(0+$0+5%J M40TEAOGXA 8[S0-R!8DV_"[1$,<#"A$,(8M?H(%EFPPL!W*$W\30%I W+.%! MFHWSEOFF:QSBK2\+/;1B06T4M82I[QV5* #;20U^!)NWK.U,%D4D>/E2C3YD MJ &&>*E,?SB$B0:V(9Q;PE.L>+.-[C]"4B\F7"^"&BSTUI4A.E]35=C9(H M<&)$+#)^/JI";V8V"N<(2;'X^II#PM4?H$4EG.2%B]-RI)7# [[T5PG0>)XO M H9Y4R_G1/(0/D,H;N$RG('73'TK[R6%)5=9Q5DW>U+:A8 M5UAM(JJO MKV38%EQ=J5G3O;8J@R\9&?#+Z;,EK5Q656Z1V;F-/2T*RL[VEICAU'6C UDF MRZNX+I=Y#51;3$\N5NN=\0F>!>8F8ZK#_3##K]P+6W4EK"=<(44LE0+(AF:T M(AAQ"K_XZAE^5IW97;U<[KN9J8+;;6172] MG:.*D@6VJ,]FY]UE1I(==/*4Q#OY@0?J2'?&#!2B[BNBYEF)V;6#+48M6N9S M"8]G;18J5&PQ8RUANV]0"Q(6&*X&?^=N5 MR4'> PTA=B <=;=%_>B69CRX$ M;']#*+)"?6R+WPP.]U9PG!4R2IU 972#2&KG QJ):/QV<(!'O4I"5AFDAL@: MAJF@8HN!MK+8U5 +@C:]HAM,^--'O8N'G^=K&Q[U9K7U: E:]_>#'^.?<.!M MHGLG/<1DZ5]CE_ZO?.GL@ _4.*.K@+6^&KK(YMMN=..LH9 Y/JNLS"D@2N(J MC:YV&1%44H$* 9TM9E$SB&;5O$1Q>D6,?@?^G(UX%!=CCR74K)T +[==[:X# M ;".-1U%/.EHHXD-T?&F$VM-IU)%+PBB%.4$'Y M:AO%5Y2V-4MC/Z&K"Z13$RZACBF1.B$82R5.B9QZT^,CD2*=AA[-1MU3$-U9 M4A"PQ#Y;152:IA0;WBI;6-,RR)S&!#$J$W8U4!"RQA8[BUHUPWTAXYZB,Q&Q M3$3+ CQG'Z3M#^B<%\BQ.( S7.#&J@AK-TE9A'5?E?202^H7DMH9;[WU0R=T M!XBW*@E999X:(FN8J8**+>;:RF)7LRT(7D"\M;OPI_'6V\7#]&%F4;R5[-'+ MDMC+;:4@<,L60X4(NX%M%TFT<95C@6U8VUB2;U3)L:E27)[NY:K%IZ%WIYWE MTNTK8=1REEM1&>T6T65(L!:C%D5D+6(,,$M1L2.W$F(6R]@C/CT^(DF==FA3 MZ2V8"U^SO1:W[=!V30//@IL$W:9JK4BP]P8=6FB=7!?8U.UP&)'2%URT!F,W M!96>8;8?L,[>R-I_H#KO(&7Q 6JX@Y-5\8YNDM8RRK:%;, 1COEVB]UTN9V_ MN>RI[XHLW,N02DO_/XVFOCH!9L\9R3G0=\FR3G^8AE[]#Q5(R22.,A*,28\X M:57;'V$8XTYB-!F:55[82'19R\="=#!:4YD2X V)4(4.[5F>#\%_I/'_T[]5 M$*"RR W.X>WM?,;;U\S_<_;3].'3'*VFFSGB_TU^>&!];4!DYF;,[_ZVOR-]XZ;/IPP_]C_A^?%S]/ M[VA?L.ZH%' MYZO%\F9$J=>I$Z<6R7T]_[1X>*#7BE+IS90WC)^=,*MF/(O") I\C_V#B/M( MIIM(EY5'SH(#3E!TE6S+$1B(-E#9Q"$GIE9B<0C"YLLQ#L=ULT3P?#U;+1XW M"W(8(]:P^6F.KC^O%P_S]9I9S_5TO6!'N,?5?$W,9THA+\]:;OS$#:+D$.,- M?DNO _G=X_##7* -*:9K,',2C'%9EB45H%G5IC(,O3&M#,0V(]6A:,RI& R5 MHZ%R./0K'1"Q$<=)^='IQF%FZB['/ZWP*PX/F%ZJ"8N(J==K;6P8;])1N*J3 MT$0U;ON=^&KHY6K^\_SA\SQ+5)LM'S:K*0UV_K+8_(1FG]>;Y?U\!7/$;A&L M;0'41[=2%94+EBZN;ZVX+.#=MBP( M(:&V6E*FZ[NJ!AC !DK"0[-,Y6RV_$S58C6?S8F.7-_-^VB$\_Q&O_(/W_WQ MA^_8ER9_^/LF=CQ:,Y.5L:VPU!Y^ZHQM5B-Z"D>UI"/J*)KC1>YAET=880OE/FRF#Y\61!71=+V> VVDY.RW M'7^T,*%J-FL+5:_3W(H&4)M9DR=!/>:3!LM&KSPT:J7W%LP*PZ'EA+1]M@P8 MJB>QBO5Z*V(1)$ '8CD;#?6HO')?K6AF--PIMQL[L@;0'W[/E_?T"\D:@8+G#[K<-"2C.KR5*+:2OQ# ?O==@ M1UBA(T.R:X_;3QI[S('>^T4A+?:%0]?'^C&*CC3 C45?4(GMM!. -"5=[IJ- MZ^>?IG7M:G+0!V&XJ^WBQG_WYU/5W/;XBZWS_. M']9P:<3:$EY7)6P-U9Q+U7)]5T]&+X47D[17XU7\-D-)Y:F#ESLLZ**,,&*4 M)XC1OF+FA(J2:38L;>-,C%6^8!&ZT0YOG#?M 0?4;5 MO BN>HC2S-%F^I] FR4!R^WWHBH4:Y2FY294#F^#VK3??5(41'!L"_#W$0;: M".9.'))C#JVNP5: -@M0P /5!&L3H%;92P9LOCZ7FI-FA:@,GM9\X1L-*U2^ MJQA9\16J\X_S%5K_-%W!9&O1#.KTV+)%. 4"TG AJS6UKD&8UV7!\.(B$S>+ MGQGCA]J])9IP0%ZAZ(C2.U%B@K!_-N4 M=FZ:NI6]9Z7Q]]F?:!H+7;B7*WKK:86BZ'M;+4P[U$?3UVJ@@2N5OCO*,%&!:ENP M[PS1AC =X7EW?=CO U8VR@F:I:06X3:*=[SPE#S3MP<-\Z?@WH+F!^+.!$#. MQCVY;$;='*/'X*'87G]^?+QC>>_3N[S!(?FO]6:Z87]%BX?;Y>H>[M)QZGDL M(;LB9D4Z_<6H!QV8I:FWP-6%JC,1X\M63PZ;3Y,+.I4ZA15*=AT>AI+:>K.M MU6!\)/_E'C4.YPH4L$-YJQ@GAW$I/,0AO(49T>&[1)D@CH1^S?X7W'QZ2'2# M$S?V]WDM4]HF[OJ0^"%.8)I273N)GRRW4UXO@VQJN1AZ)J*+#&,LW42KFHT> MIG$#ZL)60_$8,E6Y$MT^@QI&PEK!8%;>RW\._:WO.N1T6=+FTL/UN_]2$3.. M0O*?+J__V\4$NY.!:LW83]QZ@\9N- #:-/9A4-#"\$M-36N$[#/:@:0>R#"% M49)I_GKV-HK73H#7V#W$K!.DVLHZXIJ/BG06+(^&:"."1$$Z2P.V4FK7G M-L.*?N5C7)%_725D%)04PYA-(CA7W +_BA"XHA1020+>48PN(L@"?NOX\<]. M<,#WV*&:1O6YR\K= 1]FR>XL8'6MUD8VODAWY*Q9I8/@(T8 52C8MRP/)^=P MZ_ F9KP<65_U]J57#0Y1X[.=_;*HIQP6J(IG&T.]EM$T(\L[W)LNE]E9I!P% M,1QX:QU$#/B0ZL].[-/5>1$227&2SEG]5BZ+3O!,C6]!L%5'0&GD584,&X9M MYZPM)IM30#D)-,]J]QI>$'5JJ9\INDQ6V/TG+[B8K?+>,ES1?7%,W#0+B&EO M0[7) .]&.XHKW)1JTH#;FW9B4+%UF^3%0G-2B+UASH@A'C+]=<.4VIX=ZWG2 MK]T7[!T"MF?9%G>P?IBD\8$_T(ZQ&\4>F0PG15LZ5Z]L.T^CQ?2W;'*>Z&!0 M50ZJOXSG_%'FL&D%5@Y7\YK7%^?;QW_A'%L\!)$J47 M&&D,@"3@"8)-YQI&A&@9RG0^#$U78VU&9V-#W]OYB/X*-=!70X ML@4N6@@X;, )^1-*HY0NN"%;A'>4 =J;)V$_YLUW:)K2_%I\ZL!6 MC1UQ(;O##@64*MKGA039_5JY>I")8@ P0:G2!99U ZN5!=E-U))E-B=3-_5? M=CIJ8 M('8#3YP%SWO.)^% MBC8^?&8];)F=AH?=$S%9\D,8A5?9 M7'"S3NCY.#\.H(2.FF1GA1TQ^@0L&Z3-P:V(%+'OTJFB/'XF1Z9D^L6)O4&W M"IU'@?8)@TY6ETU$QR&LVU'TXK]IA,WRW6@:Q]0:>5)G.4RVR: #7>0.8Z ) M$WNMN)PFOK4X4/+ CFB^W6(J&RZ*]*Z<%)]U>=>')+2+Z3\-8G_2G1Z@\^C+ MK%+Q"Z*H4IB:T@6ZJ.OD'4:9$7+8.+ <&S8=*9D._$8]#\ZN"-@2D[)=E0HGU\?LQPX'CV[4 MH(V_E_"2@T074I 'ANY\JN..C;IT%8H3>EN90]CG (:>B_(F@C!^( ;(C#\K MW%O)MMU'">];[#FIDQ./,>.'3=935OT$)9P;Z*W"DEZGS@YQ3'CAE[@= M=P?M!*!]@JZ(8C?0A@UH^7JL*16(K6GSCT&[5S M.5<^7BM?JM%M9I5,YA@:WL"LZ5P?*\45;F/\^P&'[G'ZYB=MDZ?"!%;W=J&$ MBBQ'@U/1-IX:RE.76V3H,*TI[*,1*BVFC(G:%94 MDQ'RI*MJ',<>94L*'WR/:5I"AWEHHMJC;C*QVO3M%,\*A1,S)5Y97_G*6BRD MT MH\9\_^3@F'_7E>(=?B6YHK:%*9/!E5$,TR4JJP(1<3%O94A7+*G#X7F[Z MLVW+:M(4K_,"JZ!AD>]K$[35"/J7YOIO2?&^1TGROH33? M@RI-V?XC+Y.CVH')H(&41BF&-*YA*C::T3@*C'8,&FTI^,5> MRMWY(5ZD>-<:/QEFC,N]G&M,U- 7=,4 %WE)=\*]3I5)>FJNWMZ+JTXV[O*R M,I1T0,1&M*, Y7BSEM6;W.8U:.B,!)5YVU7F+:[-6UB=-[@*E3,G>2'2T_^9 M_W[PB3RUP$M9.%PRTQWP@8H_=Q6P5OQ9%]E\\>=NG#6+/Q-$IH?L/RHD)J@2 M1BO) /7E&TI*E_X'+DG M)R5%M>[P4]I^2_)9.BC S68[2A>K:^L)J[Y=K*= M&!-TB7Q**P4@)X+ZD$ -8\^3:]HHYW@E+^S#>@>T@]%=> M!3R0_;<)4#-X&;!Y"U=STE3]K%R;P6625DA4*GY'$3:4(,P:F-6>7F$:NJ%M M!G','K(0[5H^!3XO43U_VV/Z!GWC[U@L:4W^FFQI(9SL2:MD'H8B#F,_PTY- MU=B&H6S<,H=DNV$#&7&:FIJ11Q7ZJ!Q@@O(A$!^#/26KC *:P7KV'+4%F88< MX$+M2AE>&H[ZY=E76XAD2!L#CRF-/UOSG^;Y;W\]4:JD58&A,I?O'3E]DA2:,=CHN:F<7$N-%SZ/\7]F2'^8Y$ MP)J%]1#UI&-8!PH0;<,ZLR?J'<:(H"^$"LK)U J_YEU02EI ,:0AY,V%B:7" M].Y9L,+TR37VIJS RF=:Y)&V-TOC _,:.?NGZW,W5/,=!KJ*E3<.T,4#Z0?0 MC;GFN>NEJ*-#-(F3HF4']G'$2N9'7T*BS5FA3[="F/Z#4S9;:/Y,>7-TQ/$1 M(X"J%%!!PGPI^*&$R[]HXT,.YB(>'F/?Q=Z,U6E;QH319,%:.M!"]2S_@N\P M&)C(470E8-Y=]!,Q=QK=L$%<1Q\6F[&G3-7([O@0[AG!K'H?BAC)K-4':S" MTI(J8L"&O<<@(C\@3@5Q,HC303DA\A^H0HH# S@3*S[O948@UJD3IS=.BA6) MJD,/1$) ?LC1B5HP7HR'J(#0J;Q:DW;.5-NM<'TM@,[ MU?M;5%+:SH94D[#2Y M4_[.63)*6A8;8JO #9/\X"2T#BC%^MI>PU1M#0B"'WD?Q]IY%.0M-N4.TS/H MIC*C;:?Q:S,^ZD:2CV2QR^@_3=4YV0O%-.) 5%W0)1.C1H$Q=!TQJL:K@C=N MD.W,-#,H:RC4<%9YY_G!\RZ2.*UH$OE7J47D'W\GA[V4%2;X5.EP+PA:M,": MU1LMQJG"* &-:8H&%PT5J8(-?@QOTPE>[+C*@O Y; LL@$ZT,5[HA S0K$ZH MN6C1B:%>BB;8_>8Y>B5S2\ZG\9$K1O:/4B^R/_R=\%$7I/J#V2_>9(E^WO*O MQK[EZ9"-#T?[&;$F3<0'G!_0[O;!%G,)M_0'F ]6LE3]8(NY\0^6#RG8!>\/ M9)?HTJ5Y$6/RV_G[NVZ?[=.UA&?Z \QG*UFJ?K9/U\8_6SZDS,[^G6SFO6AG MTX[\KB4CM1W-JIUY0QR-W?D=6$ZH'D/ZNW0+$C>'%@FZN+[X4:3J'*N)"UU2 M7T,P<35]!2)@(?U6KI2EY:4/=&7'7C/&!":>$2.K==69D1WH^E(]SCRA'A[S(9]U@-B].N,&[?10[\7&QVSM^ M3(^^LQA[?GH7)0E.RGSE19BWALOX]VF%I07K9MU>G&O$\6!T?/0)K%K%:(,9 MMZ.1)6E8'F_.E)(!43$B*H><(#XHXJ-6GA#0O+=\X DJAV:'SW)PV-I@/^' M2\GX*7,LY;MS98VP-B08>](3I6H4:@SCFJW#3D,]*=)5&EWE:)4*#A85Z6D[ M)[=BV5201WE*;D&QI/A.VX%2L>4=^XRL43QC8)D&>_M0>O7[S!KY;?.)&&I0 M\^\9VMC.7R[(X$#>**B9$45^"1=,@VE7T,);\DM^NB3[Y9)L]NE!1TE*<)3# M@V1D]&#]OC[K@]G=+]A_?DFQ-R6^PWG&M+?\#6;=8&/#2W+J2"'DR&63928Z"F*:>X[.86SWL$Y.6K[ M'B=8*X=(=N]/3O@;SX#:FG^1-/!D9&00I8,R'%2EA);;_._F'#CUR/L1DX]$,@'?$->^ M.@N6NQYM1!"GTY$[P=T+!TP0)H=]^DCZD*(P2M$1I_0-/L'F+Z?IOH.0I^M? M%"(_3>"V'.?*G#?-K>Q%.(4)RFF@DHAY=S*4?%[^;8$B_-QM25V&"A J;B]C MN1ZB/X4"B,:+61!LM[.U TJ?.W.<*V^^ZAG++US1U[^2'-/*;^;S!QN,Y?F" MQ0]&\P-/1FV>5=DK:L/)H6Q08=2W\2O0!VS&<4]^,O\1E9'9[#,.'MUO^9#W M?NCO#COIISSYW?S'%#*8?\[:CT8_J&#D9@"#PYA= ,YD;CQ%<][4BE;_'4#1 M1 P6BE;]T:RB-4<61,K>@!2M/W-&]L2?UYN8]:DX/D3D+*]Y8=F*!;-;UA2F MNG5N03&^C];BIYG0NT8Y&F)XE5M+]"M'!4H:.U^@,!KB-4"O).5:Z?C3$O,; M'.\D0NL@ B4J:XM42U5NQ3*?K*S)4I^V#!-$\8$REOO*U6S+@,JV#"@5"&2! M#16!)7ZTGF[)_TZ#(/I"7PP3F#(!:7:(8QR>WC6--HJ-UME[LO1-N?,0EME] M3_[[.8DR:LM'FR"'CH>* =G=6"6=;8*R46UT+4--71'@BZ4!ODMT/,7#Y$H/ MTT=Z=\;J(Z0X3'Q"_;A88=C=G4)DQ_\&$<7\)IRZI!5V R=)>'(-<3!3[Q\'?EM.IVBZG"VR>5ENRYEYP,2Q M;IPWR22/.![@(YTQ)[#Q2&>,P6 >Z8PGB>213FW +",%?:!C?DT+G]6'1>6X MW);IR&S9SEU9U8N1\>F?" S\[?DC^(T8!?^$4%\/17M$'-B\1 MFW^W-O\^8]"R[K5%X\%-1$2,4_I0:Q8E*6NC/7U*6"5)R3 M"UPMDA9UQNW ;\-&V/_H;'AJ#3C3"!4C(3I4Z]D!_9HS G0G,L[T*0/ @Z7C MMAPOJTSGSQ/HAZ#YQMXT]-9^^!S@_!=://UOV(F7(1%X\R42I!Z./)[YM%\C M$YBG"H\Z&$AZL0&)1(MWYE]<0K;^N(F^:ZB>5HYHQ^XM:=8\V0A1/_7*_!3K MEI9U]" XE5_BVA-G^=*//C1/060CQ@@G3*[R'99'GR70QWE.+CR#H]L+$>@D M^V?X3%D(\1MAW4]H_;PCF1[J8XEX$2%7_>LVHAZ6XK@\%E/]]1LT?V/]2A*> M..GO.#O\!0%_L)2@+T3"XO?\CTY,YV1/YIQPS;:2.?VD&NK9%J&>?1[J85)_ M('H44*Z<_3Z.'/?E:[/)X! :JA=D.UDF\S$FJ!B??2/.0?D:[H8I".4"$3:H M,A!&S">APUO^!-TD9&,*GHB,_J([V2%;4[BJ&ML M.=S[665/9?JG7V<%:RI%?7XA_^/'_[W80BVVK8IJ:KDEC+#EEK+R3A;<#DY@ M5EUR4SX5*<7LO^@.'@D[F:/&F5TS M!.QHY8EZZXJN!6&PWP:)8>@T,X!3O" M3SWE58MB@S6Z9)-S"*@[^A1'2?(YC+$34(YI%/ :DZ^"Y5=O ]&VTFZ[34P' M8]8C;)N%=^&Z=WY+/@1B8Z!RD"R?Y8F- W'XO\./H]W'AY>,SO>UKZSH/.8E@X= M;.XAVQF!YC-'>P.CF]":_[,$&,)O,$!=5*J35;&@A9.@UF@M95 MV8G8C-62M[N6TO[ZZ$"AYX[BU:++FKCF \B=&!.5$.RFGG?0C?/.%7@V6WY^ MV*S1].$&/2PW\S5:S6?SQ<_3Z[LYC-55'KE*A%*7F.A" ,CR.HM8LSUM;//6 MUY&UYDY08&03:^LTG"UN7; #.7\& 793]@+:R0P;>-]+OHB?$C?RRMZB$^8I M<],DP;K=+-L)0.]N=444;VC;L 'WL'JL*?=KG,05HX%*(HA3 =V>*:2[/MX[ M_XCB&7VNI^@%V8D"C);V$+*JIAW0C>MI9]Y$JX5*.9^.B)%!C YDRTB%J*6@ M#\X.*QM!=J9BGK01*#*".ANU" MU+H9RL'-=S)LXZ79\2_#0'$5Q;:EKRV IH=JW2*G#)SIX-FTG+7%C]K.!^#Q ML=%DL\R:/B=X>PCN_*WL1*Z':ILU-<72LZ82SR)K.F6JF\9-$,='E !4!]HS MA)LGJ;]CU]\5.= '/^3WN[T:T8VY/+%)4.SS9#JXF@N20S'(@.J,M3Y M.,5PK5N$5!+Q;/RL(I5MYE%Y:) ],!*ED9U#R#H3:A%9TZ@D5&PR,R6+G0VO M^J:F2LXZ6^PFMJY8T(;Z@&4WI6U(UAE@111-8R,8-AE6P4YG(R*8X]A+E#I! M3WN12T.K1D*N6]>'A!SN$F+1OQ]\GK"JN >20L,80 OS524?#>W( MH5$%'/)Z1L0]_<\8JR]D-/#LT2"A0&VZ5$.R0JL$'&GIUP3EJ&==HPC?YZRB M)QRG":U2ZX3'1>@*@^-*2//O8EJ8SM^T2,! WJ,H>6G>FKQ@E&&@#(661C;[ M0*$CRZM9@[W>6OD)[W;.8_0%Q^MCDN+=72#72P6L>=)E7AL?HO]\1^9$C:L$IR/TH:"#0'D1<#V_MNXJB MMV?++4_&O75=><3(7 0+ECTA9KJ6--*#,9XM(6&@FB9PJ!-P!O,ZS\LPM!K5!)^0G:Q$< ML%XHS\\-S8#,.ZSZ.V72F0@0?F61IY@UH4#7$N66_V01D74J-Z(0*_P:!:]D M_U37:*5NM.# J(F6(%6-42(85QX-;AIZ5."<;D=@7 M.R09>S[D(08'E@@@?4NK EV''O"$Z8M'?UP&\4[W@-SC^.4*!+=B:01"O@(=.EQ^;X$ MLT$0@23#H!\^3A =R6Q<_BRY.71R*@'(/NMG8L@TV+0BRX$BV-,$@]E?R=BM M[JU.88SOJ\0,--0@!T,4#C+$4^57&> 1 <+K@3RXTX0"U07EHGJB#9!A'59A M#GO+5QR'_O-+6M:4(JRMHVU<_$+O/][67YP]_45Y2#N3)E =BB$FHE::XAR" MYJM5G,]M<^_(::("M5J\B96M7"]O5S /3D37-W^?-WQUVUU$DVD3L\V"9/A6&)2:.5W[HI4P&!U4$$(Y)7O,K:.LI2A%N6ET("M< MG-=:IK] VR4M!;P(DS1FYW/68VI-CM..MPRK>\Z/DFG21X>QQZ[B56U1%]>X M'79C3%S?NL2?($8!<1(TFE [0\"8WYDB+F@-=)RD**9[P9T3/[/F#8C8#([I MOC$>2S*-!]80LO6/G@K\X"P*4^*\"/.+T"6,)WCJ>2P%WPG:%O.!: +$7(>: MB"(<>RY!F$CM,%P+4Z7=@@YMU, ((>L4H?:&:SG<(3\6RZF8DLU65 F6Q MW6VQK_"WB+X*H(U;HACM:%LWLOV@H/C-3^APZ,D)?TOHKR'^DOW#>::O2-(( M[>/HU?Y#C *5 M#$D28=( M*B97P9QDSVN!SC]G2Y2YXJC$/,-JM)X_B2O6*2'AGSX)*M0IP*QX]J2N3,$P\,^=FIA]W$-XL8_'1QR]$\Q7CX%_C,OX7=]?*"-=50WJ.UH,&Y< M5YRJ&V_#,>[&]1AJJA!'(SO("MX$<3S(&UF1/)PKY?UL.YH].B82ITW'JCA6 MZ%B3H:XZ!GG/>YMWCBM$4U[ARL'!BM$HV3\I0R.$A2A HV!$=A%$SC#/.3S0 MV25)B.;O<>S0@]D=/9+-Z3D>$UR20S$H+#HQ):@E2M3\E@G%CT^"F M3:TF**9H5]'VZD!O0. *0-2%>72.+$]!2_(2V 8U.F5=KC\Y)+#BU-E0:$SF M@W-X&/?:DW>F[6@O81U PW_!U/"P-WTE?WW&*[SC#TC8CW1QD*7!="=C@U7H MBRNWEW8:P):DRV"[C>644$8*%;0X!-OQV&" O44N)'0R";F%I@*YX*WSQD]8 M^TR:*_.(R8Q*KSZ[D['0.A7B:ENG@(9=UBEEL(=UYK18%AM9(3DY"^U37^B& M?7JYC'USO@8VT5F4Z!DA![3!S*HLRPV)0@&;2LE"NS%06!LT7<'S[8'=7) C M,\OJJNT%!\L06+]$<4I7O!6]W@ZF-*V+;3;G;WL<)J?A*ST4\SD#NF+DR0-M M\"!9!'I,"1,#>=X(2BB%*[H;03&CP?/T&!'ZG)M2,9QKT%,HAL;VBX@CHA(3 M9:CF4^C.$:;Z68J/,5SY[7P+>QV%'O;(*LG>^=/@77D;*I!($P^@-'<7@8I" MW3I(,&6[]3GK5[XA+HY:3VP$^G,^!(K*,0R7_CY+[%PBCHPJV-4[?O-NX!RI M/H<)^3UAE5S47\J:A)CL51?Q<5%"=B0=TC8:F/:DQ4B$:LN,.4&S(CE&R)-N M?DS^K##'IK6&\D,3;ERQFMDB#R%D:4C%NPB:@._C) \&WQQP M2]WV;B1L.#KJB2D_5*KQ@8^;.LRU'411A4AY1X$('?"J[<,+"_2N7G"SG4MS MS&7A*[I'BS3>$N?G!'_#CKP,9G^"]B1Q=)N"MG0./6I6)'9T854_Q:.@6EKQ M!!64:=X'IXTH<7M2/,Z:#%I+#7V()W-FP!+3O-6LIHZS(U05GH]3X+O5;79=IGY2U%G"SB="VV9_U9 M();U)ZLMF'JBS9?HS-DHJ-AMKR?"]C'3C(2UUEGC[\R5EFZ8*3UBEY'=UJB6 MFAC'G^TW0C)FE[SF%CH78(A5@7N;(B5BMS&6' YFCI3D!1BD0G)B*O_3>I.\ M)?,WP#QP,O8;9%7F6R":QL+Y$(,KA]Q6U+(W?E0)0F?Q^;#:+VO"$BFB+ D;R#PFMH53TY?&@(S7,;10$6<6F0QPS$N6OWZ#Y M&^V6B>GU+R'@[Y 3>N3_AP<"08;Q(R]!7UYP6/R>_]$AA]@8[Z.8LDS5H:"? MY&U)J(C;XO'K/LHZT7NL1#"9\X"5)=GOX\AQ7[XV7?Q_H*^IXR_3"#UA1"E. ML@\%Y#,'E7SS@F/,Q+%Z#W/FLF'[GN6Y2A]B;C6%>4.L$0.Q*975'Z M-KS/4LLJ7E"FA]\/?L@.W'1Q0([KQ@?RG_GS"9@T![5P19-1FK61G>4?LZ,\J[*3 M^$\!P=)\>W8.>1N-L?OTZ)NM/FW+#+PKXWULJ4F-=;:W6\$2\UTE!6\#WG[3'_4=;P%LA-=!?65"]^ M:2,>^:O?+]DHO U/PBHMNA%9>^GO'MYBEST:1OCW@[_GOX.>NM]\ MD]UULM9 T6X?8#8*[4Y1X=?LM>]94YC.B*Y@]98["2NO4ZV,)DEVB38F.>KQ^:%)IDO)P4#6Q'GXHQ.X*GP<]Z[Z,D): F#$2>![-SBU-IIN,;/?A@J9N(B M7/0GNL@DBY"O49_B*)$]E1MEI,MTTXI)&])1"X:Y.% IS\9O5/"["(9%M\A;[]#UF(?)(\RH-< MICN23MB0SJ@QR,6Y(HD$HSJBRIBC'F,U[@.-3E]=](MT0Y73YTG![$PR_!C[ MKNQMA;'1+]-E=9S)QJJ$OSKUUDLM<[*Y1%S_G!C%VWD50K\=\MTS+/T,, M+L_G]A)P7*\KO/1ZKWYWF/EO M];SOYB8-((2M/;JE?G;8R1WI+NZRO.J0_SVU3\]3 MYTAUT: L?U1P< +:MO![U8$^>\'/STNV.M9%HQ9IY'[&Y\<^9+% M[@-OG!3?.G[\,RV+=_)Y+.')_/-["X0NG;$5#($4#;!$:K&C1MP!NU5'[=0= M=5*!RXOA.Y0_5H @/2*_Y! EE$44,1Y15#*)ON0NRDWQ).>45+ MLS4)[/XRU^HE]#I;0C.XVA**.(.HPB%B+&9+:W4[WEQ7&9^(,HHHIXBQ:KZP M@JU?IS%?Y22=?33\55/A>6/:("G8O6 MIU&7$:@]=R(NN'OKBG%PGNR^\QC) MZ'/VWF(I(T_81;ZD4U;3Z+9TF^3B,E_6]9SL\6J!6[J2FY;/< UQ&V]O[9I_ MI<<%+\]S=MP,ZH2D/?IE'H\Z3N[PL7%+W:DIN8Q$T*UWGF"SK72:[S'Z#AYH MZL'097K6\S^!D;#]^_._YXH*%]Q_SWYZ\*^B=-W@%P/N"_8. <[N,52' VEQ MHPW-KI1]C>'H WG7H2>HYBR'(F[>]PW+>=.59?2+"\2SZHVA7]E80-VGW\=< M&7%'7%8RP/3-EZ5@UE:;3ZC&D;IJ:F?!S[XLZ]A6@85?;0)_.D'!3& ML%9D$QO[+MEXLNJL$L&X\FEPT]"B$B=[ M)L:P[/3/,M.Y\T.\2/%N\%;!%<*6^E[M*1GD\J^@:I]?U61Y^$ &^I4.@=@8 M4+M^:R?GLOQ(X_7H,GW!\>;%"4\#-JLH"&ZCF"(-_4UZ,G%A_NFLJ1[$E_7B MX'+\WAGBC1'L%;Q*9PRAE'"D]3(3_4H911FGEIX@S_\:XW3T[3[^N_4G(W0 M[CKX>_0B8W<,[NM +K!_YD"3KFB0B3[X(2_NDGP-GL-LRQ0UTI1'GZ7Q-O;# MSX]J,BY\[:WG&AK_%*?#O[>55SR]9A;>^MCO:-T5"0:X[)XF)U]7C.^LC[V._*5(L$ ?25G9RQ?V?&Y.MR$+Y+D MH':5E[['UIH&Z(3J420O$AG!%@H!!^]MK9!.LIGEHC'\.UHQ)+(!+AH%1^]Y MW="=]G(RWN]&6_^UN15WD=VX?&^N^*R/9?@*H@N+[\BEGR&_'=<9>@]AT*_3 MIX0U7GJW-Z3&BTL,RMH_K^NSU=_]4SJYR_-L[_HBM^_W4MWQWA:M-= 'LIWF M^^3W?MT[R$0V;X(-SJ4-E\*#S&)USO;2.;OP70EPW:OA^7MO^Q/(6EE#,_>. M=BK6U-?J><$-NFNQZ"*\[Y?+;LHGFBNK!1T)3^>!WU_U]?R6\7;)'0H'^C## M=RH\D[$+[U@XB/0-O[%Y$?03+)L((B>M=A>,MJ)&A5'IWZ.LX(S/+Z.]0TQW M_>1WQ(\TE]J4<)S)-[?<9LD!=BRWAEH5CO/-.)4AUUF+3V.5$D?V'<6Z,??> MSF%]/HW11 8MSM[1":R[V/#I#P?6X<3&I> BOE#,.L16AJEOD@(9(@Y> MPZA%%>=OV#VD_BL19^N[.!86+%(!FE6<)* 0^S>V\5H+JAE@(;W^.V<-+4%E:G*J\53&NE)>A7 MCM'+=P@#QV2#M(WB';W]97LU46TMH79T138?>NTN6AX;U<<$"5YV94]0#&U/ M^,+\IH>18L>9/8Y3LC"QT&!$_Y6/DIUIXK*&6L)T\T!',AL[/%OV1TVQ!K.P MN1/3*4W(P.Q(=);%G4/,O 6>+WIND?TI@5CHN>SVLUBBN (.YNP49*:2;V\HV1^[/E-#F'98& M\[E'4H""N)Q6?E0^I4!&M4VG6:_078+%>IE\^T#^SV#:N\(A_D*+M9^U2O>B M8E[;SQ VMX(>)$"LHS>?*JNA]^?RU;@84GLI,FMN0TZ)0-(KE:2#V>O&W_6P M3RTL\_;809C<_C100.Q-FZ_^]D6'0'Q+8X4]]1>923*TN9P=)LR+\ROZAM1! M8(*!(C:K\;_J[\9#?LW!F_$(\B]$82!;AF@U^["C34=[@PW@UAA:32TJ7_V, MVR!Q*C#U&Y2^=/EK0 "DQ8J9+))3ZS_#I(B*>&A\R/!;QVSNI!97?.U@2@87 MWNC*ZG!W&H08^>-W\GN+$P" NPDAB\7]0^U7F#L& 0O]HI)T%T7GAJ&_H7UXI5-T""M=4^)7TZG7#'GH^0\%B.- M62UUO.ZUFC-5QDYY.)V_M4 .:YJS<][\W6&'<#D7>^%FK MXP?4X9 I8@_*AG:'K<-=V%Y!<_H&V3>TC'4Y>P@M0<;83S2Z219C,PMFHU_8 M_J+?7+9Z-JBY("L2- -J\HAC.8.1=3\1<=P M4Y%?CIQ/$>1"92BVVQ)FPE/%][.AT(&.)4G_Y08 7QIFM%FB!74RG[ LG&-. M'[$!9 GB>;_@TK5F$4Z?GV/6SZ0HC$$\1)E#+[H8[T4&Y EG;W$KCSD[TX!ZUMF3 MT;8]01G.)TX\(TV+CM'?G'R :GDYN@94+C--O_ <:AI*4JB@A18A6\(+BM6N M$G1K4'D ,X+9+K?W_$J8^Q1RBMDX\3-.3TXY?$U5SDY'2I#&VTOHIOUV(@-L MPCUX[6#%Q#[I7_+L@FR_1@^R],\I&ZFYG\MV:L8?; \X)16+)K9Z7Y>?4&2F MSH_CZ+DO0A2O^& MTQ5VH^?0_Z^&KS0P'G#QD[$F4%@\9>C!X(JOC"-)\REV-A[*!JP%;:LT*RUB MN(,BYY]:\)<.2F!2="2V7(X+3 >H"%+0O8G M"B=+7S'-Q#OS=))RGXO"K&+$G"<5X:)W!YN\19C&?ICX[BA%L3L-?6$) #VF=9!D M@ [C7DYB0&>AQD@2*,I-%VQ4.Q 47%QD?>GS)[B4OXB%TL-T-1Z:Y)F+0(?H MGTK_.B%]4C'>9SK!U H?T@-+!+L[MM4@RJJ^K]6Q\%SZNZVP*'%M4DJ@[ MN,MZGE9W^C1EH3XARD<@(PUX80_5M*=PD-=JK:-=SI,U35%,[./HX#;Y-I/3 M*7!NE=5TZ*BT/]?12F+\%Q M%D0)3>:*?;>1TF0'2Q?48W'@SW!V:\6!^+FLCHJ#"BU,;.3!+.H2=AP1N1P3 M[1DJ.B39"Q=ZT*,OV7;LG<\..\DA;MRR5N[AB7_^\N*[+\C)R^U2@LA/6$R- MI4JF$=H&!S<]T%23+$?2R7-KV77U:R$D':E!B1\^R2:-OA3T\*O/EXF,*6(: MJ1\>HD-"Q2(S']%D30_%9#B6]![C]!"'-!6-$6*THU<-[_G:+8QRZ/(C ,I =,J(3H"!Z=F(_?=DE]3-T-NG[X)"4>7,3 MY!/9P^.$,W=QK2G'U6(V9E8B4+I9N,XV"QE<;;-037*J<(AR%E')(Z),YA%S MFE*1\8DR1A'G]():4([[;;*9*GR(ZP3N(6L3!'-!22S2I05)%B%]9;MQWJAH M]%(@=(FD?-;26^QA8J5KXM /A(=C#5AV=3$$9:"KQ.$FI78_>#Y9\Y=^0_'< MO,G+*2,.C0@X=R=UZA/:OS@; !4CG"(5)3B@FLN/-U&Y[&X4[R.Z5).UD\F> M$MG9OS\X2;[1@.E>6XI1D[?X\YQ?&E[C$&_]M)\_&7@,&,\RRD15?4BO_)T@%L\CI4.#P-O3LR:%# M2-]T=:9BE>=H$U;#-\A(V&+]:O[.V%L+I%XQ#%&.R718O5^C#$U\1OV;F MKUC8*I!NO@X^'9&SWP?'_ 6S1W"2U'<+JTJ*[<+)3CUAO1)C3/^=_?0AB)+D M:T35)H_/4;H1V<_SL #9AZ2Q_W1(V=T$P<]*4K!(S6L^7:SB$)\OP^W91OJ\ M7=PXG8^L.%HQ'^4 PT['CWPZ0O8/\X M)"FU0)@(DF2MNHUB[#^'-?EO,B.EY2.[K7SMU*S:E>D*K[$[:R-ERRY-C\\S MS#P;H %7'<32XUC/NKN!IF+:5ABSVW,'B&(=*3;C@K M:S8[DH$8\Y)O,:DAEJQ8(Q54UAJI;9@F+<$+7X M::I:CH4H&JKAH5\9)DR;,+DX=WZ(%RG>R2)R6IBVJ5E#*#U5*] L4K<3GCJJ M',5&#'VX-F7$+DF MHX0X*?/)-H-*VN%[#N9?;K((W@-.FVZ1\B 06@/'O!_1%B3W':T((/Y"DRM% M3+B(R;(+CV+!JFN667_05Z@<#Q%$)%I[*:YYHS];'-67 =FQYL'5RLW:-/38 M68Z?"+'_2O?3LT-,@S"2?55G*C [V9["5G>U'4D8W^'VXD\>#[-3/#_E MLSA'06N",FHP%\?#B+RHW%H5*#8%',D?9D1*/V5-+(C6OW2+YXCPK0HQR@74 MB"TVD6T)*LHX.R.:2'_@-"2G[((+X> KM-4>W/&"%\5M@@69TJP5QB4NOE=]0B3D^^_ M!R0-LE,?G'_%GKYZY#]4:[U1@\A')M(7@_*L"@T[,GL0&'_.JB,0OY.E?R;Y M&7N5CW!+1LB]$=DGW)0C%-[*_,%B_.FY$2K!D-'*? '8'D*/[L >8TR+O,NS M43O@@40G]06J1"7;D:"BD;J*YC.YS)]^3R":.6Q35M*,U5;W!?L'0*\W"Y8S4)JIIS]59:M MR0TLN3[.R&[_.8J/JLOH_N2 *JZ<*7ZMGDI/6N:KI9S%J$#;8L ML$Q[RA+-S&>)G&^^^KV)! ,R"*$4HAEV$((#!1H4O,B\98&"3&; MN\8TG+G!NP/+)CN?V6977DQW>(W-WMUY^67G5TSY_>"GQWNR9Y,D:70 M0)5-U,S7JI6(0N2"8O[I"\^ <4A\IRC\>Q'G?FI0$T0A8,(*NHP M6M0^"_PMKG]1X#W7W(E#LG-,'G&<5S3S7;+*LM:TL\!)E,\Y>M"!WEUU%%B\ MI=(D KB/ZL1AL_9#1H>J:DZ)I@SSJG\3Q*A-Z%-V3A QBK0@L!L<6(GOS9>( M_S%?3"'#;,+):#M$M"$!;<&T1*GMQ)08YC=D&NPT_>= .JC8_1O:T?61_F&^ M08N'V?)^CC[<+=?KK]'C?(76/TU7>K12F6(3->MIEM4V M%<'PLPF#!3H'FI*3:.B95"%"IH.P+'X1P@GG#B+OS7M2$>7&#PXL69"G#=(U M3U@)OS(F6&K@.'/%!4_*7NRL/ ST'>\T3'TO^S9K[!YB/_5Q,G^C[AU[-/EH MQFKJL#-6<\>CMV\=9A#H3>V04R7>\0XQ N!V>#CVE7OEZC"H' ?E _&4PLI0 MX@TVZ&;YS*EJVU8/1Q[&Z(:>GJJY#47;N*$-RW@S;6XHLP+?_QN8J*MBIER^ M[>%+.O[]X+\Z 5BAKS,EY_<_X\QJ3OLB'4I]8@;T)ISPI;F2*M=C^1'H,D/& MIJCJ0.#:]+&6&+(=7@4 L U>C<5&VSKV*TR;NQJLJL@V=#)[CKZ0!] MRY2S($QH;X$%TP8YXR@:3"?9Z,I0$$RTUKY:2H$Q4!^AH*2#,=LPEA?MG.4BB9SK"'+3VHJ ML3WZJZ>Z%FEMIR^_@%75\WBU8Z]^?=R0X13O%)48ENS:FT(HM^XE./S^_907 MG4T\Q8!\I=@\A)#!E&\4E1B6*%%3"/7YKP"'5Z)37O25"/)E8K;_;$BC?)/8 MA@2C3'JB5/5)C6%ZWS_1!;::(?C;IK5B@7DI_2$J?DJ M-8IY?Z7#3]-G95AFU*LEAG'O_".*6VQJ8T8*6 -?_I6QG/-4 *:%016KA0Z,/0,:H:#\M07!9!!6C^ M9*]F.3_9BZ% 3O8J5AJ?F@$C-__@48C-'NU[,%MH)P$?/O948VCS)=+3T H@ ML(8V6!9J: $%KZ$GK+1I:/HE M10/68+#:7OJ4;64 *HZ45KH-!:VF1;K*LI,JZY2!$AMU62XU%>*,++&WA)9]12V"@FLKTVFA>I:@L%KZRDO;%7'![P TZ5 M(5L)+%#^N(KQ6BJY"-!\5KF<"T$&*@.#C>I/>2FLI.Q>I-0-.3C0ZZ 6]FL/ M?B2PYM_P*!EIOCG)P"N-L(!U)DEPFFRBU G4RM*$ ](2&<,U]3@%,J\78@Y$ MRPQ98]P4,00[-BUW+>^:50B6;%0:(BBW*'=@KXG;6-'*6+^#?NK;70KAS:4E M"5^/.*9_<)[Q1UUY:RB6F(! #*415.#AS:#!C(8AL,=,&1;4>]4>@I00] GN MKA;;21#Y1X*?A95X>D?U'@YT03JY5Q3U69(!FH_IJ5G.0WIB*)"(GHJ59M4S M!BSX_&;#>GUX7FY1/;X'T.VHYUR[,HX-%W]:<_OFY;]9:7M>Y)8HUO4Q^U&O MPE,'2M!EG#H++:[5I$T&L"!31QZ559_?'%WQO8?.E\L>,_E.<.L\Q7[6;"OT;GT<>+K/X_2PP=[, M=1'NY"&=#BKDZSI]_F3/V @%M"U)L"?$6TH$]BG>,(*MSWBA)S27#0XP+=-Q M"#/.$K*TQPX9[N"FAQBW6DQ7 N:-II^(N=UTPP8QG3XL"OJ G!)!?HT*D/F, M)5R=RC!/LWNE],\(-U'@>XPO%KN5O.&0 9I/YE>SG&?RBZ&,IO&K6! %-DM@ M'M8W_;RCR:_T=8<% .#W5ATB) _;9$ @QP5:+D1-+^$C3'0!$#NFMK;ZF%"GK^U1)+<"Q6XD&= MEC68DAVBQ6$Y"VZGQQ(-Q);RNXYEW@@W#V%(A%? PUA-JP!54Y$"&[>/%DX4 MUTP%1AZ=!FJITE6"DN_L AJJ! ;A(ST^$M[2:>C1/J%[UNO%\WQVA)*(JX,( M5@I#4Z235\^6>[!YI&$_>:TP("]4^3,%XO2.8 !"@R9>4"V%/5P8[000: M%> 3]"F.$K#.6_H"4*YW.0QK],HP@18*3 L^T_:S88)GASC&TB8:$EBHY4#! M>'T%$ ".'TI%P*'R&!1!CQ!&3B47^_..>; ,#Z;'=UY(OF]G[@X("SBZ)"H ME;L5"T;--86I*GP+BG'5U^)'$H#A:!-40P0VB#/D@7K?%!^P-]_M@^B(\34. M\=9/6\RA#0GLK9.&*"6MD1O7ZB2"C'0CD:L"&<)8P;[>@:T3LD M)+P/SXB3$\4_,"TZF,C4O W8_#UW.^OYG;8<$N3^NHV=YIV,$\='&B!Y=8(# M1@[K*DN\(WIR")R+4?*"<8H\LD.FOT1/@?]7O3/@>\\ M^0%O_/7!(RQ^\=,7/Z3%HM 1.S%]79#]B8*'-+(9H*@(_+A'ES#A;U$0A<\X M_MKLE7OG[Y%;9(:!& J0:^DE0,XX^])#^Y([[!!62XUH]2=2!#"?TB+"B5^1 M0$/Z%B5+0/XEH#Q57<4_GXOI]EER-\.P4 4-WM5T$^3N],L#GG(S_MO& 73"5;,C.^#F5@%N#^<+ V('G\-#-R&'0C^DY M-$Z/B#W&CW;[ +\A-_9W?DA4-'%?\,YP#=Z>LU-%0QD>RA!MJ&.!J^^@XLP5:/H7X>^PXZQ;:G<.O/CX]W\_OYPV9ZAVX7#].'V8+\UWHS MW;"_HL7#[7)U/]TLE@^#+4<27C^',7:C5QS3K?HM\5G)=$=+]0G<1&<*YA>K MGD+F:U='=)"EK!>/S6 >^Y&N0$&4)"P@ZH2(5O-,J7VQ)\PD86%:SD-V3'.8:#$3&LH ! MT3U< 88H'%@B:/6>=H3Y[ MS@FB1$ 3E<\7KKIF$TST3-'8/J J$?GO8G2RH?V-_#'_$_D_3TZ"_^W_!U!+ M P04 " L@\A6 4B!@N1( #-"P4 % &%G>"TR,#(S,#0S,%]P&UL[7U;<^,XDN[[B3C_@5OG87D!7W@WO55G:VZUJ*4_ <0S35.X<0U\#1;GH_7+U2^^76^7SYVB, M.]6%?6Q+"0:[_.5B_YM!-)YM_:K:5\__7RXM?>C3)[VK=[@M-; M&44-3+8\8#7'W9?PO; OWK M<]SL,_K1YXO+SU<7OWRX^J=PBA3C?XJ)03_((^?B]O;V2_#;N&FF9<'(\+<& MH?V>09#/BO(7QS;!'*R4X)._>KLM^.LGU]AL331@\+-7!ZS^^DE=?WQ&HNI= M7_40R?_G/D)2_&??TH>69WB[D;6RG4W \$\*&OYY/DK-1W76JF58VB^:O?F" M&GRA&^M+Q1DO/(A0-/S MES;-'0$V/T/W>EJJ#IP7FN7=MH, PJ9^YUJ(DDN M7@'PJDWZ:"3QLYVI#OSU*_ ,337Y3?UH6.&(67BV]N>K;>IP$1[^TX>(Y8:= MO*&%TS-0W=<'TW[GIP*)$:O._MYP-=-V?0?< U=SC"U:%J:K.]\U+."Z<-& MVY,!OSES@ N_SK8$E1N<'TUS\ 8L'[@/CKV!S/0<5?/[!\."*S'<[_J. S\"2LH<,PQ'G-J; MC5$:DF:$;L1EGT) MMP27^D@C-"Z1;2*6PO@3 M==K(9[DL,=0#B[-,RTX=-XX0ZZ\T?[-#B+:SRDZ5/)H0FZN\Z#-# M"+2_RLX2.Y XNZ"T[#'C-& CE":!]0.-[*7[F8TLUW/\T/-ES8'F.P[D>]#C M'GBJ88K=<)GF4>>N7)IXAJ'KI&<.-JJ!//O/P8+JH@LMN!X$:(2GA>F+::S# M\X) RDM,HE:9&ZZZ7CL@G,-T%?<0B86B3]9HNY4FDW[D&JGIO\%/HB7VP786 ML,$"K2F&9U00)X]OBO3]EB:,,)0X>QM9=[857KD<_ZXT):4^(H[&OJX;2+'1 M_K;?^+D11QY=L)>\-!7DT82S*ZSUV)"&S?? ]^(,GN%%N_$WPP9FZ MJ[A",XTNA*K?5"3N:NLO<331Y]F%O]FHSFZZZFN>\69XNV=+1[[6S5:U=HN@ MSS2P>6>F6L&*XOKQVG@R>$6J/+(F_N8%.-/5Q+9^PET1Z.&LW*4]BSSGP0D4 MW;(?W.JB>,5G4K7S< [GZ!A:$)4 .SQ;1@7-Y_%-T1S@NTN6^880K]+^K\,/ M- TXLF;#C<\TJEH!K%\00MT$>-,M0'=,UGILN^X KLB[%[6"-C,-+H0FJ 5 MA2L"M.KOX4',M+=HLX&_&CA KZ*%9;XAA,*%;:K.T +.>C=S[#^ %AQADCZK M./J)C\'*Z<,"O:I]#RY\+[Z'3CU+.QG"!C=;1%MIZBM\JDEZ^:[&O+]?=_Q M)63MP=0GD# #=0 [<(4^\5LLYW4(QO1=<&CV\VP(&^ICD^ MT",+I0;R<1]L@G:^ABV?ST9\V"9N8<:0[(AX]$TNJ0])_H(/#ZZ"0-__U/#0 M5WJ]WFU/^:S$ R7_JEJZ$HZJ)(<-Y@YG;]I:Z@LFRI>QG0(1PA_\3IIU_\4- M?/3Q,*;Z LQ@',IN7YCFA[CL0C8'V2XNT'Y9VV]?=&"@!*-+]!\W5]\O+[Y_O;R^N;Z\O+BZO;U.3"XI^KZ3GB@T3>.QX5\S M:$@GYD0MOFR#'(;/VJMA[F6\__BJ S]J[L+MB2#'HY9I+EQ>7_9N MVRE2&KHBZ5YFI%N+C*"I:MB0,/T>KJT$":7:=48^Q51%TKEJF^XM'=5R@YVQ M4/F.FW9&NE2$10*^KE?]0EH>#!.$#ML<\1PW:;U8J B*Q/&U"7',P=I 4[>\ MB;K)6PSSFG5$+!1$1:*Y:%= #I!#-#]O[,;V#I>QL1>'1$Y M.XT1 KXUH9Q+]6.D0SJ-E1&6"RA8.#'M.R([%NHBJ7UO0FKP>.Z@@,CP#WCV M!A=8B>6T[8BT:"F+)'7;H*0&\*]39VF_6T5R.K3LEI0*Z(H/X[T&A10LUE-G MYMAO1EA,A2BIH^;=$A<-<;',LAZ4^F0VLUU/-?^?L27:'7F-NR6O8M)B:=7L M$4%ZWW> BI%/\M?I:5]=]WK?VR610F)B&63]'D)E@$I!F;-7V\(?BX^;M%X6 M5 3%\JC931$%=>\N+E^6Z!XC1Q['35HO#RJ"8GG4[*=8.BHJ'[?8;5YL,T<8 MJ=^W7A+%U,1BR/HD:E&+X8<6Q!1BW$5YS5HO%&JB8MDTXBV(0@+V<1'(2O1= MK-F5W[SULF(F+I99([Z"D>4!1(7Q!NY53XVF37#1Y37OB,P8B(MEUHC7 'GS MG0$\@:UM9T>\Q-BWZHB$BFF*+W:SG@*I'>:+C6J:<28S5J2I5AT1:3%-L4@; M<20,-\!9P_7[T;'?O=@6F622G9*,T"=?7 M/638MD\\A23%4JG9NQ"90X?@Y"@5RO=0S64]J-"%,Q )G3HB-6828REF?1)2 M[V\#@"*[S9&E@X^_ ;QB'K7KBI0IJ(H%FW5N2"K8F!T/AJNIYC^ ZCS G^09 M+YB6K1%L3R!&=?@ZTX<,5<4U;+V FPF()9UTODDHX#=\P*I-.A1-M M6R]C-LIB(6=]-9(*N0]ITP/Z3#7/TDK]OO7"+*8F%F#6<5-5@'_YJN@TA"DS/C7]RP&KT@]_#7,[]'#$),X6M*^A4 MF5E'5;629;B25;B&'YKI(Y,>9&;CU M*]&BS<(L(H-7/H_MJ68SHEP TT2^3V !>)"')DE?WQA6$+R/KHNB7&",E.DZ MMQD %2C$I@*U1LWWA61"AJ%R,A@@Y+1LL]1IR<&F%[5&_8.*!Q/;LM,4D]6> MW*G5@F>GC%,>4Z,&V@'FL;UJ6#ZD/M(#>$B[ _"(FJQ*-/R 3(2T&Y;J[$:0 MLRYDFX8L73M8,8.0 ^"2SS="OMAF_-7-%FP*5FL6L.-";G=PI\:;I9C6[8<, M'4G8W*T6K57[LE@$*#$?:S/$:N0(/MFM/4RYP)-E^*X"LC(/\+E[K8%@#FL*4$7HT6:@L)*%SP1LS5X9WXOM2X*2 M;Y%PS=/LN;GN]1JZ#BTA=2::\(F'K5'W8WK1PTX:I;R#MM()FTF"Q0# $RGD M[FSK&#;*6 IL[H:Q<&^8OG>X#R] 0]2ZZW@@D2UV\ N#1QI9>DF-+[_KC_F0P5!8_ MAL-EW3&E^UE-5_NR]C,[+%);8/'1=:U9;:/'&WD!QR]LT,CYJ*UTXJ80&T[6-*0)M00OZ]^751<]WW7\%+ 7O%(& MK9.?JHF/$*;I*RD^:$2=LU67IKACL/D!3'UI/ZE>4"OH<.F37]2%LE>GH%*& M5@%QZ$W:_*0GQ%\\6M PCM(I$/&@7< +%P=07=0/JLS[[A/@%2"(T*5;<&$E ME%-$O#S>][S,KH"CA2"AZ-DIK)2EEU>$O21[5!#;DN(C*1 HU;!3<* D3\ ; M(8U:*!2"[Z[,J<7-,QJ]R5/+S$%I)-YN9JIALC\\PVVC"#6,]$E=) 4#(PJ8 M*>SOOAGE<%^O5]!.5AK0UH!X>L@HC>I_D7")VF M:S< 49I2 >FT3=H"]]&D]^D[>W9@((+OT U@,-(G]&#PE14.N>\E[[.(QT!U MP1Q=TT]7SVX(?+CU)8S@(YDS]DXSZ/O5[>W7%@& ![%"#PH->)WR0)'^9;ME M3D%+QPX#8T-],AM-VE@T79Z_!*!+>_PDZ" M?+K;PA+"M'95=5;E'%V;?!$\(H-)"M"@XM)49")PMT *BA>XJ]?LI$H07X^&$ M4"!T8\A=%:X:2;$Q@H(;B'MAJ;(U@.=[+!8(/=(,N[WN];J%#5;2A5YVU(\5 M9G<7+<.[AQ1&RH5>@S01,A'-.F #*1L@IZ5TT&"495ZP!!V1'0OW3Z0H$A-" MCIIU3_Y4% JU*>L_9$K2+-0BK1\R2P>HKN_L"C>9 M;,/N08*2QJJVYFT( 0NL$=@D<%\DH$\J.EE079%QE.[!AP<#.A;IG^4I]4&W M>_B@I+%C 3]9JJ$JA'&N,]L)Y.=YCO'B>^B*>FDS/9_ 9_"4&*YZS;W?7ILO MA1N7>*U7DH"UB/$EH]*Z#K!2]->SSC5146D6\/\5>(:F[C,="LLK?:4OKZ3\ M1^H3_WDNM\31VPI9.W6">>K!&2 N"D;E@,5UEFX%*!N/6H'<]I=M2A,?UA3L M^]XK7'3^A2VD1^[446!0D=G^\.0\HD>NZS.!(>S0:2 02!3@@Y4 !,5E7 MZ M=1H.172V_\G0Q,T#HSU!T;,SV"A+JX#;_N;P06E&$'IT$0\L!@1/;VG3."!: M#YC6:=Y<-/]X$3?Y$^CCY3Z02/;%1@.I2W=14$0DI^<\&X1"ZN8Q))KF'C9L MV1G!T]+&ZZW/C+QK:T[*00:>G$NL'EBP\E+[RT_3LI[6K48UW=-6,@/R:,*'92ETY* MFIE@K/^Z[O>4TS3?VQNXR6"DFMLV3=TEI.Y;^\5)3RG6%]W4X78,;801_&OA MB7;?4%X)ECK&DND2FBIX#K$N#!Z6"5YDI.1!3!@_.!W+MP!B$3F9'4^"JCFT M5UL%5SVMA@P5:9P6)9+T;YMX^V%E>"CM"1L&%3?HCKP+:.(4\89[R:%^(>.. M-0^V XRU%98(TW9+1[5<50LD:.G!O\Q GH_0KD+GNP/,QK@E-&NZ_MH,I/1._..!??T/W_6B-UY(F;2\AN\^<+EP1&CM MH :RN?=4NTL;X#@ BS"0A,CB 1!JX+&R1FBQMX9J0\[!UG>T5[3N M9UA. AJIGX2XJK)B,9-:-3I8NG(])#808X>+.Z89>'7=ZUTVC94R(F>##H'T MJFN,=-BY-]X,'5BZFP@4&ZCN*P8QN.82XJ3DFL)$8=7 \P(X?#O?'!7=E+09 M:@+Y$:]3/2Z7!T,KB\W67ARU&C%4I,7"YW-OF"?\_3FL@009M!@_F/;[WJ@I MR(NY9LF+&?07/Y2'\?2W17/9,'L"Z9-@,ET@+FYNKBYZWV^NO]Y>]6YO4D_? MUA0A!CPTKYECHQU5O]L]N^@5V_V3IGW-@WMMX)0F,-W0N@,S$0)=M$.E 61MVLK#EP#G! MGJ(&;D+0V>/N^ :2= ;+-#Y#K!2'A*YM]9_C[P&1.9V15XA2G&#MY('8?33OD]E+]B!3L#EA@A7UH MJ:#7&6356,4IR$V>R/H#FQ^@7,)+HR?@O=J0+6\@D@S^.%C<]XPX'@RK&@0G M79A $&^-[A\AHT.V%!ACN/9G?)5EDN"PI?IWS*R39<_2*.BYP#5+/X!TJ!/F M<*W(DXX]@)GKQ[-]J.L'!QZ+\_2HJW2PJBA]2DQW /02NWTYPXJ%&%':$4P06&S.J^D3;L!LB\^"P(Y!<%72=3Q%5U'RHNO.U M %#QTCU3=VC=[EMZ=*N5>*Z->3V,C*.<$-@X,$:P>Z/^&\D,4R#?H6GJ[6:F:GGPV(WN:[>H"2W%+5YB\ 6?WQA_2,KFSMGP[(*O*$5W6VW(.E-!"+WLFK?K D#"0=Y,0= M+%FYT(%'R*.E')H(AS(GD*^'JA8%^R*^HW2XX21T_'[(R(O.58F)^3!=Y95' M*0!2?J0'(@8^"+[=;@! R?,R0]6\PGXG!*-2K! :T"7-34\. M=RM;2:>#K(H\$7K34[]!/ERM@ 8MT.$'W.VM-9C#)71J(0:A_Z(#\)MJ@B " M#G+9T. "BWX!#\?I'R1:8K HX$O2@9:#25\7FX1DO=7]^&T5KH35#[,1!E%- MLB3_0YE@<%WO)+H(>0DX*,#-TB9=$ 'M,U(9EN&J.7O99X_.\,MP^^*,ORQ' M.%6P/ZZ>**I@XKWA:J;M^@YFJ^B,HYJ'"I,%;G9.8]>= MOUEEU@?Y+R%2[DR\RX_W9](*^NVZERICV<"*Q159J5S0.CC'J0I@W@E'Y+HV M!V_ \D'@^8JCG=UDN#-=*=B+WF5V.9L/?PXGS\.%\C"?/J'*L,MY?[!<*+^- MEC^4P?-B.7T:SNLN!AL1G*0WE15%7J&H>]>\!A7,JVAMH>TNW9K!*,WDJE") MYGK>0Q&I^#G&'5P.Q[^S_/H9W\/2:9K.Y%G9H_]L#9+5YMQUL"9Y,07I'"EQA).MVGDVC!@:84 MU2W=Z_'Y^04Z?IW5\?Y@,'U&6CT?#H90Q>_&P]HW\IB*(BW.;(_TC0=YPFJIB]0P M7/6[ OWZFM6O$3S=3QY'4*V4_F(QK'V[?+1M_=TPS< F2!.56%#(>L%#VET]A2\DPGQY8CNI5Z?+B>=QQTG\-B$-]DE?EA-.E/!J/)H]*? MSZ%:#YLP@%'Z K7JXAK77O@Q.8TBO<2TEDX7R9)(UV6DIZBE1BD*US.83IS? MG49EC9:Y==YA2H;X4-Z_[B'A@)[WBD#M)HS^TLDD=^=A):^6.-09K MU41^++AI ;AU 5IM^I[5IO'PL3\._+5PRQK"C6M8N[/F(#5TPD^21;V%,8Y1 MLYX&\GI2/822X^D5J2M57VFTMI),DZI\'A!I,<1_D4&:\5! M:W\:F'*Z=\GI%AK U49-Z\XMU)W;A@UE+DA)OT#,GT,M75WVM=YI386+7IZ; M"BXD0V79_WOM-L)^_M06 ;%'(\7F4W,I=COANTBGNA32R9:#9Z"MI4JWKWT^ M TZPSE"J7DZPV&2XC-5O-IPKBQ_]>=U7,$/5@82NW9B8 OW#-Z\[#>5H(D6: MAVTOG=H52225^\%$54L5#EWW[E-#@U/#/COTD'5,NP'FQ#@%40[WHY^C^^'D M/HQQ0,ZHZ22TMI7Y=%$4: @:&HM_N+BK='I));&TJ[@D ME:UT&"_ &BU,DO2U=,=<^-NM&<08J&8V V%DK6QG MP^#ZO<@))UH\SV;C(.R@/X[#$>#?%LO^,O@I/$D^3.=/)=S!N38@-46$:U7F M,7ZOOW)U7]>-$&/[&28F1J_0S.-(H]ZE)975>CY,$!J9?U''>7GN77%(.E?^(/_R?Y^S#AK,/4S,-Q+*C,.>Q7:196(1(_,C<9^.",#._ M-JQ$*TB4!P -JY!L.M30=3X=_%3@1_N?5IB ]P3ACFW!OVHASU@PQ3K,Z:"+ M"V<:K[2:>SC 5U@G@X:I;_>14IT= EY%JWD9>E -YZ=J^N )J,B@1]B]X5)]]- M^-FSY^9H[-_KK]R]WVO#E,IHQ]6GUAS9<0ZT_ /44%LQE,.DU>VB(RL0DA_! MG*G"FU9>\!97=F):?RZSZP]=?:>F%IQN%GJ" E#7:P<]/A H1#3/@,44Z0'% M?:5;'"J4>"I/<"LUOK"D$Y/"7V45GJZP4U,*+Z#"4P,VP4)[!;J/7KW$.W?@ MWF7#7= T#F9D83"M#%^S*T.F7$U3BX#T M=6ORXV7VP(0&KN&!L?$&].#S.E@=?G(\F[O=D_J'[0Q,U76)JX"0;Z2U 9[; M>PTO":5KW-3'GE8N%HG,;:9UXEN.!7$HU%%RA>AHP> ME!@;Z@O<@KQ=_.8UU1Y?8B1I=+A,;0]>]+92*?.+ S#IYVU6/W$E IK:SL^U M I)6ZR$S/3GMY(-UT7-B=.M%]8&E63[XXB7_S,"520)#U1L YL0.G Q #Y-. MRX&09I"3 EQIAK0_OJQ(ZP[/S@3Z]PSM<[?_KCHZUP60\2LG!4YQ'.,4M=9@ M/146*^RBE^=-.515:>C239'_=X%H0O"4S\!VD M)XE[:WKU+QI &HTO+1O20E"*^GKRZ9L(K]$TQX>SCRZ,#, *IJ(!N@VF4M0+ M<$S*6YPA4<4"LM0/?&O'<;V9#1ZDB:>G)*8G6);BJKL9Z@$ M4U3^(YKD.6/@..*\_H(S1^'L<+8)!+' M7>+915$LTSAMP&:S";IWNT0^Z8,#_ND#2]OU/PRW"(GXGM)A3"P0",!CY%$W M()5'\KV]40VK"%+XGFEV73_U[ IL7X#"@Y;BKO'!A M%#(=7*C([P9>[G;[O_XP@ ,E\+H;@S=@TFU9A,[R8J;^78N539S.CQ*M15D. M,&]AV#'D11J[Y"D7*"96=&.E&EE;WW,#[EW0;6C9'O(BI;1P"8"AI+]S\+AD MAL?EB<.#1'^[]Z*L;Y)DV.2WEA<6=5DR#'SA%-78#%R6CFJYJ_#=S05PW@ST M-GK"4Y;P(2_A--S\7Q$M&YZ?D ^8#$#)PDPX:UJ]TSW9%M@]J56;5$WQ3 M'^X"MM,O<=CV:69]/5%D,7&'5V%YVU/-9N*XBJLCLH5FY3P-2UL>L:'PJF[6 M1\R;S+XF2#1IE*VVMHQ_'<28K>7,,(ATZT>%BHD<*&_\F9S<8/DY4C(+Z/T- M>E/C&>HP>J 6'96U*"(L7 )R8N1INW8!!Y7I;;ST0*[T)S/'T( ^>%6M-9BB M*;HC2S-]'17T"IPM:D!;T"P/ VP#= 4)'*@6]@1-L\;!'"#7&C2VGH/"!^[* M /H,.$$4O:6!Z8MIA$5GFF=^&ICG>O M>H!PR\OW([+"301F! "TF)?=!&K1U0J_#YP!*I"/0GV-]:<@4W&K"F*[!T8R M/DH"LBZ'PP%K7^7$&ORAAA"QKF0S'D9),_;FNM>[.>./F6%"5[TK.9%(D@'L M8-CZA:BM/!K^C%VAG!3@P5/VB:R@5V(&BKU2XCFP6 (0=[7)##SBOR+Q=UDT:$'(R$2C1W MT\.+,YN''RCL <5:NBYZ=4I?JA_E#CYY([4%5&1$8/T2E5DAU,-[58<+HO!I M7C9/PU4VVI3V;=Z&G D"'N=ML'9H_L1(/@2JOM*M W12RR\0RDJG4"6O_R8\ M565[ ^ :]O935>)/ U2]3O*WM(!IKSXLU"JP@,I@R."^LO+5]5:@LW6=E1G M-]IL5<-!&\ XMOPQC;:"0\!UB,K?I AHM] N;[);8.44B_L>]+!K@I4LL"K MEV\B7 9ET/D#F#HTRZ)G4P^Y9,1\>G(GZ7!2KV2SR"K!+EG@D;^>%QVG"WI) M!Q">^U<9VCF=JM/O8E4X5^=F4QS0'S^R'-X?Y^1-X)I*)_@RPCJ(G)E4N7+ M45/>"S6^:2:^C])M^5O9S^ S/FI_1 M+)3#-+KD5VW@69.:/:O2KA#D=T;*4RI-<,\<91)C K/VOY-.6.49GP[F(5,H M7UD]&F'FNH>.?BN-0(N%D",P @VM$]F381D;?X,56NKW\HF-,*^TX(KI:)_H MU ^RZ)*_;[/H"NDX5]Z61KP\=\@R-+<:"JVNJBT!Z%B DH69<-;(M\,P8/-Y ML72"2H.[B>T!E_(ZL*"7= @2CH$L[,JPJ/&2:FVX/90 3CQWP3*T<_((<[L] MK![$G:IJ>^P%7 )G@POC+NPH'7C*"#P+FY*$RW4?*1@W^VN7T+W>7\$_^Z9I MOZ.$:=CF$ DR\!TDME(@8_Y*6C"WU[W>1?<1R8=+D5V\@#/% VC@'FJFZ;A@%A(2M M_^&']]V(@_WI8!2Q;;HZ,&X"H-;BD\^$?:^CF*V77_5$:DCP\LO^'8FEW=_8 MCHVZP5/4Q0$)U063I#>.ND6F#PJKU)%/ MS[#6)HA_@\JI_@.HSM2"O%J^VSG1B$*_)QTT18 J'>%8/S_E\F34!VK(#\@4 M^-6\(%O!7SP#NQ:.=LS+< .K&P'X$]B7,8^8Y4S[^0Z@96P#O9LKL'=>_BZ@QFOMR,X'PC!YP%>L;$O8G#%A JPN@>$@/9TN"NL^7#^H/!]!DENLV'@^'H9_]N/&RP\'A, M5I&O.+=EW;J>N&H-0OK0>\VV:B6D0PXCH1] .GTG2"JEL-4H%!;^*%)'1["_ MM487Z>'3VNB2R;:0ZQ^5CTG_CDU[OV:U=S19]B>/(Z2T_<5B&.2K'CZ(7A,X M?%()O]F8=C_:MOYNF&:0X7O$A\,*1]9[IC%^KW__/P2"/AB6X8&Q\08R,Z5+ M:BT:0+HU@5DVV?6B(O6M#KPG4'RW>U+_L)T!NI4FYPS1CB =>"I*/@NEJLSH M*I8.I$_4#2#F$#&.(AVFJD* "534')&EKMO2476 YDK.[#ENUB8I4\LD*VDJ MLF4195Q7>P[,\)'O5V-+EBJAQXD(F)4#(MZ7X+RTCPNRJFBZIFF_:#X[ID[# M@,R%5J<DJ'6Q*2YD%, 7T= MH-MI@H= >\?B?0@\2%SI1[<#I!>UV00'=^%_:23/8NHZ 1=3"\G[V=N".''>N6KN1I>5Z,PDM6R&A8AX? M9,5*JTCI/(+-1IW9[\!9[%QH;(Y-O'RP;3LI(39JSS[ECNR43?N497E,-^<( M"5>I\*W7O2U*/DZP#)%FZ>5U[^*Z,P?SRGRHY^W.PV1>14:PZ MM7<%U[AF[4.KUW05%I1Z4#7#A)@@^4RP[:733[(TDFK'1I.4!^+TY D^CVQ# MZ03')HZ< ! Z$EL@1Z(O(Z^I=+*DE$61$ G4R1*JE40M,4(KVU!RJ1&83UY+ M"=3)(K4Y>+/--VB7I$DF"I#81SI94@HD*TEV,F41ZAAX\'!#IXPY3:43815U MI*5/J,>JX!VZ^F.?$GH-2HN)ZVFG?@5R9=GK?D+:T>*"'J(F'/N.FTDC0EZ'/BH""1%QS1WY MDC,G'OBR#:63(I44R,(C4":+S@7U*( ^?0..A5Z#WSLWT?P7]LK9_V9DZ>!C M\:YNT6^(AFBE,:7& 4&@623P9T.KTSWS5L6BBUMB'^F04G7=9Z=6:,&X^F]F M\Q@0/;AY9SN._8Y.\.H6_L;;,2 &-T0K $0& !V(F!@@]$JV?I,$79T<7L,+ M"CHM("6J/K62*_L%!D^TW3N)I4K$"XT:8<91_MDRAT<#V_*@BD!Z1Y:&WD($ MAW#XHD6(RYB=0I(XCG0L(^CH^#[U/==3+11_T=^@:FI$GR^^6Z? 5(EHH:;2 MMSKB3@;V9F,$+[RX8Z0QC#$GW[(Q)X/IT]-H&0::?%;"0O^V0I1FG@73=7E8*6]ZGC:C$I%&$&]1;:H4M165]]]L5Q1S205QIB[I))^92$J,3 M?"'=LJCT_AW=/17$^QM<\U;(ME H6=DRT2N+3/?+5]$=2K:A='(LM113TB74 M3U3_%4DC[FR9($*6-B\?=O$AB4=QM*\-N!E=%RZ76^"HR/\:N'R&6()^C^%,45H'/B##@:P(9C ML YS(J"BI3P"U?=.@@J])TD%&]2PJ\# TA:)_E8.T>=><2Y>;<=#*^(<\=[L MKQT0UG[)-T=INK1?S*6IC%UK/3D"^/(+/,:;X9V-0JK@TA540T:G\\.%0X[8 MJ?IU0_;E28T!(";0O/XC:MYE5!1X#_4@"+]BN%,]ZME^L%0E-H:+&._I_AA3 M4P#G@X]N*9^@YD"Z4TLT%V:5.!.QPJ04G$',GT"=Y3E.S#?P)-M>:_8_-N2 MPYV!R,B;$[@:SN,-4LOENUT1?=$H9]#1L:1C-\9,+('?9(E#((YSQALM4[I6 MIH"!*0^V7\G.2PQSQALE3^2Z]\94-2/0N;3OP$PU]/X*3@$#HG*#=!E"'#DB M],9=^:Y;U)*M@T^6WITZ0OTX8>&\NC(=0Q*C'7R@&-B MC-#+]5M)7+:XLE"8UJ> (!;2>=W"YZY0-[)@9. [#FT,SW&G$T8,B0.\;O-Q MF3)-!^\<,V%__1F\SA9F#\[L,$L\R !QT6-*8X,RY*?\\&<\5N25V# $:7 [ ML2VMS+)WZ)?FWC?(O>^G@K0")O *3< M?M)LG <^B%K_RGSA#,SJ[(HA+.92 MX*KFZ)K?5/0R'^(X:S3-%3F:YC#P.73F.!"L;)FT!A66=YFT(V5J_#V3.7J> M$O, S?YWTDB#@<,'L1234E_1.AIIY!9>.?JM-!(I9FZ.( @T"*V=4L#]*-82 MR__4[^63 &%>:1D4T]&H%,)(7[P4DK]OLQ0*Z1#Z2%F9_7MK?UY!\^!.C1>4895,-K"WVQ49S==]2$3WL+;(>"@%JJU6P1]PHHB M,U.U& ]&M]G:T8OE=/"WSW?]Q? >'9)FP\FBOQQ-)^A7X4P4>Z7$1*\X M:-V[ )I*!E*)!^[O=HWTFK^/?KWN6W9IN)%GIJIRZQ'M*^[("G>61\=VL081_R^=T[T4M&3F?.D4H%H3UZJ&Z7WEY_;?AZ6D+UX,%2$>4W9=.0[ATM M3E,?!'*25_9/=WQ%#:@"Y==3 KSI7?26^WPG[[A[0Y/BB:#1?#+2^#JNX>B?% -YZ=J9JHM23&G#JN%O/R- M%81GO3I9%02_J#2G("QS.BM( _R-%81G/;[&LS0&KXBG(RN\_Y^N)K;U$[B0 M-]'VN[1GOJ.]POYA2&(@W@T< W+FKV1>22"+GLCG*-B6$HX2_0S.,_/X42C M[ U7\6PEGJL23C;H'$PW2O0XYW8TG-M1P1"$$G\+!!Y#-92Q(&,>\[4.+[Q- M<.Z<[2%;ML?-Q76O=]E)3-? M0YD>U34_I_U+=%YGSH5+-?!ML[DE/#8S-)W MWG4;(>2OGT$OE).=R4?IEO%]QGE%SG4H/Z6#R.YFUE5=K!/P=$9;<+4U&/ACG:D326RIZ!IO8+RJ^G97=[=7O[M9/: MT! G.Y*Q(L)5T+@AQ3RALZ[4S=RNY+.L@6+.?A**&T1^^6@:Y_BO)N._M%>@ M^R:('+>DTSXV\YCXN NO\5,Z^ZT'=?:FE0+_*>E@5PR#$OY<7HP1 M^H@, ^CRC)[YXCGW@1FJ/M+!H#:19M'$SBA98%'Z7F-<] I.Y8'E UC-VYL@ M%HIXH**W"6\)QU?!2>VZ;Y8#NH$V_,EIJ$?/@6@S>.P.;'YW8: MAM7Y(J;",>OWNP-]?HAL1$T(XA"6^730L-L.:5@ZP*-V!4M__JQ?S>H7A30X M)6*EBT@=5.NZ0ZH51HLTIEKISY]5JUG5HI"&D+2P;JK6/IBD,>W*S."L8,TJ M&)U A*2<'73LHD,Z)O_9J^'PB1-3,"IY"$I]Z^;9JP4:UG!"Q%G%<@0B( 6O MX_I5&$TFA8^=99;=L38E=,)7%L2I7E75GO?'<6II05ZT6*-J!+J\Z MB&?8+GEA$V_!R;<)LTSNK-*2[\"5A5GU;N5D=+JKY^7NW\>T2J&KRO)\EW/6 MZ5.X 3HAI:[M]JC^=/F^KALA*2-K93N;X(>LZ?'7#.GQAP\JB2^>,^'/F?#% MXTMW&&I-)CQ?;W[^*L;I;LYUO 1HX;\.@(7_^'V)EIWI:F3IQINA^ZJ9DS^/ M;9=FRB5DRE4GDPPOCG=8-H[4ER[%*NS?#.\U4"ZTJ;\:VZ4]M.!&M,M-BR\Q M@C0 81-8@:!+T"PT8[E ZL,/H/F>\09I6!D:<'*SUO$-Y99A"5FDIL,@FJLPKY'5O.&$1-,\),EFZ1IN;J^[-V>EINLD!D$:[$Y'P65?XN$?0DD M7M9"6YP0&II=#&H($7 GS<.W 2<,?]O#N MFU2#]HN*@AX1#I12]W-SM(9CKMWWOY-.)'5>M9.Y0'%6K>=Z/9@F]G8U\5MI MA%G,W!Q!E%G]:N#^DV$9&W^#Y7_J]_))@#"OM R*Z6A4"NH'60K)W[=9"H5T M8/<7V2Z192E2?T*;FF 6 MHSPE=&F.[D'5-?>'6$G?.N-*"MUF3\XD31[A(+@JM M9W!3.[ AES:V%7C2!^K6\%0S8(\[AQ!QWH#^8#L//BK_@.J[H$MG#'J9QSE= MB/)AE= S98L6V+ H;N0@%IJOS"=-- MDQ6H,J3JV8(3SXO>"%@!]'O?V>\_.=>"U0<]/8 *Y!LVKJ:=M8T2&],]2N<# MEAZF=^,\SO@.IP>SDCR)(/1=#@CA\E"BD]XWRX0)+1 G3 M2*<.E.K,BMWN/3E6(D$'"J;C0)I/7R&?VEK+CH\QG\N/&#=BBJ[4?Q#=)X/" ML[BA@7Q.[.MM!=QUES8\Q"=_CRKC3&SO'\"; \U>6\:_,HN=\.^=+GKK96FL M %VYWA'&O? @!;>FZ$>H'K*XUQ-]80,7=.[=.0J>^YGFKIAK6N12VP MWSOK0CTLC16@4P&49<(PTBL)\F&GN4>,+1#RP1-7@?IX&NN F#LO/A6+2O-^ M[]/LNZZ_B?FS!>A:YJ>-J@F:<)ISU0-[N_+)MKQ7CV^II!A M2J>G'])R/=8@,==U+3*C"J.T?P:GO<;"\-.?/ST-DH+#L;8(OID4^23 R((_ M!$OU QVYHK^BQ<1R ?)*6!I<3((/,#T(<-'K71P_"#":#*9/0V79__MP@?X9 M?$V!GU.B[RGI#S;V'L">#X?I%Q3[)_:HVS6Y6L&=P'@[2!;M!&G6]KT' )&K MF@L('A_.89=JC/,W5A\YK44WW^#_-;M.4<@ZY0H4Q (A^3PU ^] 98H=QZO* M';# RO#*09#K-]H.1O',$/(LK!RP1%Q ]:7&\*-F8A-D QYNE(Y"BXE<.:MT MTJS@0DU=G M KSI%J#\>VL]MEUWH#K.[D75_F1UZ%P6.'3@AY3]EQ3T*67_K=/TY>#*Q#M M=:&(4M+8N^H'P(&<"GZ9:VPR]6^KHO(A5,ZZEO>0 :YG:%C%S!%Z89\V"[H< M<0(*AM2\%=]'\TPLUO!L'5Y#!(8*,-[0S?? =Q"W,>L5XRAM!0I/S1S[#Z!YB/B%O]V:0:",:@Y4]_7!M-]' M5O!Z3IFHC^L"4R*8A!+.0HFGH ?(B+TD$[<7.6'LT_I6=$F!! ?*2+VD0X%K&*B%C2! M7J%/&S!(-W"23&S+CIUL(2G1'0CQ14J:KFV1-4%266F7)EP6H9=8]L9%;RA4 M&%(ZD C>%KCSBN(%J/KWC3"6_@EXK[9^H!.''TSK+D"#++LL/%A8(<"'Q;L* M6H*$)7 VN?Z%5(M3DCDM^1VKA!]R#]WG/4!.LZT45'U/"4/5&5-/S7F1+JT) MB+@Y TZ0VM7W/,=X\3VT+2_M(-;TU38AF>YTU4<#L3FQ+K*I2Y/A,G9DS89S M9?&C/Q\J_>5R/KI[7O;OQD-E.566/X;*8CD=_.W'='P_G"^4Z8/2GS_V)XWY MK8:J YFX=O>,(CNM<,TACK[>(OA<75Q=7D,PH7RWFE>1O= 1YC'S3[61;E5@ MXFY6XXN)JVH?[$.FO6;"(7X#Z,T,N#B^P:/6&J2K,B9J8=RIKJ%A(, T1M<@ M4IWXCN3[./%]1EAF."SKF=XD,BG!B4?R\,9(Q8'3/+]MO@!K1< )XDCCB4.B MEK)[P_11#?5CA61;S'"C= U=/,CG]1!-)GB[,1N.M/OEMNT:+.B)%/#Z2\/" MC[!/*?ZH==%<^]GY7#M!1#@D .3@?B MVM>!ON49.H*Y\0860/,=R%3@#C\TTX>21"X@5/S&#T$W767F';B;,$1R&;LU M:TS>@B*. P++>HA#W[T%\-%.&DGP)-%^ M73[5R9%+TO1$56XW'BU>_[TUJ:>I^+^$Y5<<<6 J$D45WP M@Y%()Q:"+NK7,1C@:>+DAVH6!0CD0;U/G+CW#=HH5_+D!3Q#+-'6CJRTF6J4 MV=KCKBFN?>^U0>2ER1+F#1)JB?NN9V^ ,[ M](B9$PS&:'E?Y5C>S]#"?H(G M^L%T,AA.EO/^(94!DG]Z !68'07]*E=41,"0E,CI5#D M-Y9.&:FDDM9-:KHHPM\Y%8MV'2\A0/BO@_#@/WZ?.3:J_S-UHM=]:&$"WIU4,1E*!:Z^18<+I[4/VPGGK2+.1%F&[5 MD^#$W4#IJO4K+&G06S;-(D7D,1>1I(S6' MJ96?7(YO*)4HV+B:/FTPD%>;.);O-ITX]@V[*0XR>9SV'PIQP(:4^I%HVE&1 M%!"(W7!X"^7!]ATZF1Q:=E,D!?1AKUB;/D/?[>Z I;UN5.=/-D=)JILT,A7E M+2FFEG")+I'+9$\'F]_DJ)O\XJ:1&(W@*>B6Y92]4$U4\O@-6#X*C">>K7/; MMD"J%.+(2I6>6%E$V=>TH/#!H4PW49JXYET5*!.]LMQ.]%T7>.X2907Z"5C"4RG0+"RYJLVI.A?@8<] -U#2YH@9'H MDF;9)619P\^',4J7 AY%U K)!:I@@^<>@N,DZ[3[,><,G-^P.V)FI%%HS:Z] M:$5&FB[ &E5D""M4&=::+<;T.AMCNA@^/@TG2Y3%-9TO1Y/'QJ)+CTDK""S% M-8>"O[F\NKGXUKOY?OWMZW1[/,I'V>[>+?DE7QIMZ).FTFTE2.>_"U=)U(P;D7812]9$/-YP$GP,I9CY(60<\FC71EY9J M(Y^(F061(\Q""EL83BN#; KYFK;#6&FK(8S64,T']<4QHNKQEOY@ %.GC:VE MZ=UZJ56E5>0%[!*8 -K &]^*YN7"A=]1X71]S0N,X0)!L@W0>EER(%>HOZL@ M/ B> EW;-/1@ZL'I#Q/3E=\P3<]5\W4B^=LOC,37%T;-+%ELW!>NJ332991! MD? (U,ER'32P'8A;:*A-;"L"*SER%M=>PNM\!F; MG)9=A@@MN4)*>3>YI9"?%L6!@]BITSAAISR"S+>.V"#I1]^096Y8/F1$I$&V MY=X!R%ZP?]@<%;&&*RUD@V&ISB[@-N2@AFQZ.UB81Q8D#KCD9^R%?#$ML.OK MWE\,:V[CS ZDB-TW I"QVT3=54@ MK00+ZM"@RQ@HH#)V]O6$['XWM4N]OT$<^U? *O2RJJ=::^/%!&&Z!2[IA-BI MR^@H07F,&#'^X?K7B7L YZT9 0LP^$@VZ3(:"NF,92\X@KW./0(:6]YN9JJ6 MU[=T5%AZ&[P^&+U(1-@["CIV&2$RR2 ]]!K,=M+$;A3,';%5#3[A4<_,O*/I)H]R59'1(PRA+LN"$]8L&O,IOD&>VLYNK[T^0 M@R@W!;?.Y[;M#C+8R12:X5X_%B(=B-SG9"L_MVWWL$!/IM#8KOJQ$&RTX?[Z M!/=K8)JJ!6R_X.Q7T*M[^"A#L-!HL$:10@V.4\ #!00J>P-0/2T\!*0X,_0U MS?%!O((R'Q@N*QX8HL\K\??;?UCXO7X5CV6XV9KV#L07ZT6^8&*G=JO^[Q=Y MRE^"8J'9)\Q R05Y1-7,L?\ Z$D2%R=X%Q$'@)2N4Z*I $/08J M_$21M[^X0T<%SD)M)\\$$1MHKX/(G;H$D@H4=^Q(P(J1DX)'*625T7C##E4 .0!!**!)Z2 .'TK*DA@.6W"ZB@5A?D=BG+8C MBI,:$ 1ZFX1$[F[WX*@^*@IC>>8.E;_3X)E9W6'+&M%T:8N@"6)*'RU+$=Q% MY1\7E$4JZM869'#8%,@T"W W<5@+,*0\6P[0[#?@(*X\! $9&_3F2\[2P#A" M6_! %F9ZL>#! KGZ69MVW:TAW)R!2BNYZW-FYOJB_? FE!__G177!?_U_4$L#!!0 ( "R# MR%::\OJ)9A4" '-$%P 4 86=X+3(P,C,P-#,P>#$P<2YH=&WL?6ESXDBV M]O<;<_)DYM__MS0-9 X<5[.M?_Z#WV+_08 EVXIFJ?_\1VCGT.1_ M_N_7?R'P7_@#0?[^?RB*:+UTJX(HMNR;P/(0V0&2!Q1DH7GC.Z1M3Z>2A52! MXVB&@:0=35'!]BLX=DO>8K <[QFZ3-)&\)6@\19_^$@^^BJB1-__DQ]KSIW<^?(\D=WMJ.^G/[04 (\6/;V- L?=]RL5C<+H>. M$;8F,(S\&7P\A*S:-9=MW_*J/?^Y_?!!_TM7>]#]@MQUCO_L M52N\/ :FA&J6ZTF6O'],T*WB/7S*]FOTS\V'NZ;:TD/A !X\9#<@S8+C!P&+ M?WJ.9+DCVS$E#XH%=H33*)9$27S7C^MXQQR#;SZ@1E*7#QXD.:ID:99\*]MF MJ!\816+W(WN*L3AY,+1=

,GA0$\Q-^>L@<[1F9/6:F K33\H(?/*!.8>N0 4X/>*7I$^@!/- MX;23"L=L%$[[\>OO,9"47W^;P),0V;8\B$3__/# TONYH3?X,@IFOC;_Y\?V M<]1;3>%(?_[ZV],\ _SZ^^?N]Z:OH:VL?OVM:'/$]58&^.>'"55*LU#/GMZ1 MV-3["S[U)_SX01M%&M+JS; L$#;3E7= ;<#9_:HH"K/!/V"#G2') ,^); MFM<*5$R ?X@\9*$B.8HH\%G1S9JXK:8(1".:-"UKAWEF9 $AT? MTA!2M-STP;IB?212(HF)@=:+V5&>L\:#=$TWY9PJCC3%6-JP!TLRX7BWN'.7 ML4U3\P( =UE+R<#^(.A#\-> ^P/1E']^%,*AB_2TV<.$DNQC/-5<.'A>3),= M-N#$0YH^@D9<)/$-C;.QI_#ETJB%Y7/LC.4SXZ1'--]+8T_5YPVMWE7T>G<- MEMD:6<:DQ=,TUN#$YVCR@Q%F?2?49Y$0MV-LVP="X:<>)Z1FJJIW75X0N]U5 MA\&O!W@1<>;\1T'#C:GN;)D]('D<):2A7/T?L@NTQE8 MUFP\QIAV:R1S8Y,1\ZI(!D-&40R'>/^1X\UN_97[ >?@.^Y^N&T-JQ%2O=[D MM$2MV"0'BP:19.$CX'#A(ZC/&VL#/L!6'HYVU)MDFV9[9F,@3TUF18(>SS)- MD0Y&V_Q0OK)PH$HX6$-2]^-+@I;?\.D6R^6'W6E=-SMZ;LJ*3#"^D62XX".' MN#&M%E U-YA\O!K\Y)Z3 SL]2/>++E9F6KF641HR(W0A)H*1LJT\6T.*M9- LIV)ET2V56=_2"WF(Z=A[0?W-=+Z, MY.>@4\/+*)WBBR5NU4UZI;:FK2?JXC?H_,@)^B&-'=%MO-'[]P.DG _Z7>XGP\UC 8*HDM"?HZ[%)SPU=5 MS=),WZP"W!+&)*X&>Z_ M:>D!!]8#O%ELB=#OSC= 4_,S:EUJ0=-^+H?PK\>#O2?C(5';H5V;[M+1&GI^4NUSG2DU'6'-'V_A MQVYV8!>PU_9J"A[,&9PY->P5 .'L5Y\&_>PTH-FDI&*KJPF998&=X9GFR'4> MN+348P,*9\\@YPFC=W,*S2$<%QMP4PWM)KVZ;]*05N$,%@PK_-&!( V-KZ6I M8\^%O)?AIY+ZT-7HK:UUL]\<#3B4)[Z<])FA,Z MH"QTT90_MD'C&H=V,R5("@PI9 MFI'<<4/2'GJWC./6J83EJ +:$*>M!3VL>.T@]+HEZ#=Z\;_/A%1 -[%EPO:% MO1P7P7R6R@KYI=GO"G/*+'K-\S+!-,GVVL"8@I"G]+H]&617=>@>/\&$GP_S MQ6&(!*!CZ?[Z.\C+W[EARAT2AX1Y^KL@F_W/#U>#R!'DW\/WQN'"!30(=+< MMC%YFF'CPA?NK;OA*_"98V[+3]#DEZ);H+EN[YDU)VB-7+ S(=F M5H0>3FC7<%@B)-=7? .^;:R*EN++>VO#DRE.F6'Z8)'W\Y5UW+E"#D6Q>*O!ARZFAR=IV M:(BBF8%#9EOW*O$,N3]^!;CT$KU__SSYK%^[0>Z']/,4_=,0DO;#]R3'"U*P M0;Z2#-94L#VQ]Y_M&:D<- U6-^\?L?ED]WKWD)\/E.(U.D(H;UME8-9Y@;:=#G@]3+?E9G6M"F7FHNH*L>S=/[X MM6MV@M"+:07Q>JT@+J453R#'^[6B3Y7(=+HWG N$[[66>"&;;AN1A8P(:D44 ML.*WM.)@9M[J1#=%6UT,J"1G=JTE.=2F=9N]=J0X(O-+:\1OS1['&I&P\"+K M*6M)X$G;2K84O33,73M*?)Q&?,;,\3CI]OM31;:BV@.LY-A8IE'6<9!>J*,9 M>^5*<.&I8E/CXYVP]=TG'RW9%O DS0(*)SD6C,!WJQ%8-=\I,'[=U34/%XK# MB8.OY.:5"_&0RQ;M7&7,YUBEFJX M]657NO:I_5F2O[BT9=DW?2,H[ZU[8^ $S1PP#A@Y!T5+MDVPE;Q%<9E)#R=; M.IS$-7PT69/,Z.HE_UKRKT,+[E?.SQ#8T1CI6:2:YOAF"Y=R>*:PQ*_=9?O0 MV7I39/>YDGUBMF9'3F(H5$U)Z&)])Z%B-6HM7KMP/WJVCH)\GY^M*X+7Z@P\ MWN5X?9FVNWVYG:6N'K,_9[:.A+1?/5N70*W>*Y&I(2>U_(PP+%$,05Q[K!6! MV?J<6G#.Y/P0I\=TO=Y5L'RO/#+1HIZI7GW*[>-F:^(RWOA;)?O$;+U255X$ M:U?BF%X1T]8"6Q,&\6Q]??(-2K^"@B/;,"#)NU+&K92;7F(YDAEKJ:-^WU.G M50S7]&O/H#Q'\=>6]?.>61O'4S1>''6X%8:)0KNG=G#FZN?G3_#,HB+M5WMF MC89.]D?%GHSYQK*1]I.%0?/JL^"?[9F=60MV_ODY/#,C4^SXW3J:X\J][J(_ M$M*#1C_VS-X@V4M$7F?RS.:=+IU TZVZX+-I0L^DA6$K'7MFUR??9SVS=5JP MEM/:H(IIU9PV][L+C,M?NY0_QS.+@JR?]\S62VK1Z XZE)[OJXOD@LJDB]UK M%_8G>6:1D/:K/;/L;#(C'1+L5G1;O+!+S#2'#1NM#(><-"FL5L4B1VM>9+-NC_3J M/A'S#(G7ZMF]1YH:$&R"+_J"SC?(DMUI#,8K(Y9F!#RZ]T@SLU;(<4)(2[KI MD@4LE6MER7$LS0_TY#[VM(3K$NR3Y'V+N;8%YL#R00N8DF9M3J4(3XN%7DY] M:&BJM#D<9W-$0ULS89/ZB(?ONJ/-5GI^-_J]RR=#-145^$[X)(S&<+&1QE*R MJ<_[G)1*L/-RU\8H]9,0(-C)KSRM)>=E""3Q,AW?*G;0SU9'Z%"=+ONDO3D< M,# RSL'%@4M94J&26F-D:UH4VK;KN M(G+A"23G[DER?OS:TG,G\%\*PLXBXR(GJB"=7;NYHJE:[RMIJE2*7'OA\K(Z"C'_KX)C75V:L$R!5 MF%:,!>>3S6)96F=7M>BN$D2Y,B/JL_VE-&B"^2.V->I..3^7J$R:;*Z"9R*; MFKH:#?J\@VE(D3D1 _ RL"38T3[Y5 &>!QRW/MH<#\XMIYH#ZE956I$X_#KU M:+URTRHGR>'!HX]RVG/;F&N6^K#-+O7)%&T)7:D] 2CC08>T+7U$1TZ_'DQ: MA[S:+"Z^CEF_OZQYS.7#O/HS;+[<*@G\CSGW*@GY&K7:\'S'\ET54WT^4.>= M])K32(QHDT['QCJ1TZ;7B/,4>=>ZJS\35N&;9ZCP3O:1# M]*3XH74MFVER#XH56]X<7GTHW7!RK=F6O;M18/.E(&5NN3L/P\S4$K)U+E/ "AU\,4XUM%AG MKM =/0:6M.]J%G!=5H8^_.92D;U7F@>F*37L!7#XE0NY^;AL+N]+P945X&!] MSDVO:I+G.P_7XO?WENR_L>W)4T?YKLPU,P(JYSDZXU;+HA"Y1-E.:9[@U<8K M?8)9O^^&OL3E>Z5^BLW7X_SWLQKU!(E?49J/C:=B[.29%,FQF4AGBAR_'N1ZVJ3"$^1URO-) M(J]#HL>1QGOLTU")RG2<6_0PU%7T:FGFMOU&9*.-:-GG9<_V>I]]3L3AN(BF MZTV]Z]J^3,I\83+_&C/X!]CGA\:0T#W0/%#1YN'UA)*E!O?&L:X+/.A/5*6) M[60,R7U\5(2D@*"V?^?[Y:8K:][2-8++3[1DTF5M"JU%%H_?0/+AJ1$/:?[2 ML>,9=27CNQZ,H9P6,#9>ZEB;[M1FQE#DP/:*72'377@*Y_>39G1AXEUJ\PSY M7TJ#GO+OS@(O94FU9DPG97):;4$T1FE_59Y]+3VY)+Q\I#]_;HA(V>C*R>8E MB].<=:4(A!95[WRMF>6#(.(C8X"S6'TZ7ZLLQLM$3^]V^F9.F[,+-Q-;?12C MA'-;?5XNK,>VY;O"JM*T:D._.>ZQ7TOTGV+U'QI9_-;A9.*BS>'L:%3100,D MZ>YTHKE$9#4@,H>3?;H?>-82J2=TH^#@Q;&ZG%E<5QF4U)H]*B?C(X7?IAL1 M+, ,BJ$R$ AM0U/"=L&%J(_/X7"F-NP$U&R+WY"^JV'JV6V0GY:'G%G4Y\5, MBE"]Z-7(!35,ITD\/(3C"1J_$T[\EBX,BMRP.IR72@*?EN?]"3,J+Q*Q+D06 M%QYZE;A86XX*BJDE%EB^Q8X2#[CN9I^^@JBW7=1J&=3 @2I0WK\U:U+$;ONNS 2/;< M^/$K>/F ';^_D/X$'^]M\ 5&7D>(_JQ^2D=TJ_#MD1Z]>K)_)]43NQM^6VI04O>'CG[3XJ6 I;\0IH&G^P6*IF9/\(S+5?/6.V1[>2&N18: M.2V]7.WYJQ_]F/_W#_XM 5S2ISTLBW_!ISUL^G$;S';KSEO/SMTOK+>! 63; M-'U+VY0IND5KY$@!?LA!@1<&/4[S40*@O9S!K2XN MUPLR[M&BV/D8AQ\RCA!G [P[*12+_2>,NP[@3JP*; M-=3M@ND] #UXN[VPM]@3?*/AV I$\KJS-=57@=9]9CD\%WDSK);FZNE5&ECR MV)0<_6'L*1G W9Y05P/>R]TY&_U1VVU?PU:F8?*<2'!=X(D$-5Q,.G;D MXM--VN2QC#; >5I([P](@V>=DN[[8?KUX?<+>G$0$Y]2C(L,X/@,T!=4ZDO[ MP^_%CK&SWWSVE=!#G9DM==A5,ER7[A!]4,OT9]&[%.CUZ'$OIA@_8OR(#G[4 MK:^('DV1$=<"(W;TO& 1[27-S$O1NV3JU>BQ%U*,'3%V1 <[Y8W.PZD82"6+C?,8XGY?R=[/-MV4DWVR4F\TC;?O^9N=SSLV2E%M4:@+? MXKKX9+8J4VRRE;KBM,#O)Q7?;HI'$HKGR*]HAW)X%C;$7!EH\Z#^Z0+F6,;[ M;$;@;4% *=!<-HE:VLO'YO@VZM:2 MD^$PR_*1*U[XV+1Y/$-^85N\SU]'S!)[+9.O#U,%F],8<59,^*N4R$6N[NPC M4]"Q'<9V^&F>JJI5))V8$EV!8.WF<&((#N5?[\3X.>88>ZH1LLHGIQ1B>>)U^VRBB4KK_7*G\KH_,1=KED!ZO5(M63L#*JC^OS1J4$P>PH-=G(ENN6>KU^:YS?^896^? ,N>];O5_(-Q-&(YU.88 CA\*$5(K+ M]K>>6N,2O^O'CH\Z!>&:D."%!/&Z,#.D[G2>X%9-JE S67J=BV9Y46RL.8!/'UE9AE;Y'>S2$K$L8.EU-V+D@ ::-[# M;8$WA%2^NF@1R0_BXM=2(YR-$]QYM2P5P#PGBWK]6G \NT459LSI4I&GUDZ M,><$Z,L=W,R(4("P6^S>KS D*[@RZ#X< M@6\$+;92(S*N- .CE,AI_0[K,8VB6<,C%_CO)]$#:K:^_@-R+B0E#,48E"#/ M):7[<[X&5G^M\Z0^%O)C;>#7RPL+FUV<^V\CGKC4V?4[%7TY!\Q\Z!FN3O=W MT#+(Q_J.HUGJXXY?..>\:EM@586.)_!ROJ7L @HF/QW6C F;$?*\EJS1F2)1 M.J3]M!9W%&851\+X-J[YGL(N%_5K%OH'W042+0EOZ84Q>$X:.EMM9RTEIP%# M>23Q7)G)UQ-&-HUE^D5>-?->C5M'UF=^A<3?0/QU:8W MI!15QZ:=I1\Y04=Q[B8N)<^+S=TC==E6TTVSJ3/U$K42M!73C&["YUKF[@CH MP7-S=YF0/49?.J3N)\;FE)V-O.+DFH7^\7-W!"3\EKE;6"A]513\M3!SN[71 M(&\NE_@U>VN?/W>?30/.=CGH6Q0BVRW0/"V2.%>VY[,>O39JAA\KQ)L5(IJ' M;UP:3NB.E,_W\<:*DP0N51KF#*NE7/,$$@7MB4)1_DO8P\U\2$S&-J>VM=>> M?26BHFA!9Y+1D#2E:&6DJ7:_P]RVLX6.B0DS8=9?C7M=5;+T56Y(,P)(%1)8K"G7@BF[$E=Z@R&.6TOE&UU^ MA,VX H<;4XGGZ2A4=#_,PS H1E\N$P=C4-LQ0P-*KS*0KZKMK.JC+!AZ?+!* M! ?YP$ *<-KQ;/B%\*-M$VT__ZJIDJUU2*Z+9;3$;";7\39/1-9[>R7Q][;R M//77D8L[7B\^LPZDDY*X'!<7(F;ZJ1D/%@W1CFXZ]FITX#QKJ?O9DA03>[]J M__=.PH+EN[YDU)T@116N*WM!$G/ODN<2_20C"\ETB\Y.G]ART0I%-D#RCA%CW!TCRWQ0M;52]:I5:1;U8H M7?):J<3 7/7K9F1]ER?V(#Y+XI_F M:7/XZ4B3P>Y:U-/J$ZY< 2?T%2T9I"47**?X_*B3H]V38 MMXT[7,F'K'K) )@%SI?G'N9@Z#S+T&MS;C='D4V5G5"T5Q!Y'?'^:R3: A98 M!(<'O@'B2AFI,%E6I*1@ZEFCOD";.#F.G)__C(3?0?37D?@;!%V?"!BV'F11 MC'=SWEJ1'7N6OR93_H[RY23'TBS5A;3S8\EYBV%/N"H*5J+7PLKHH#]=K8A1 M=QDYE^09>;^?]NN2/_&;<[24H@:FPNFH 'A7'9'+LMRUKB78^=PY^N)55N>9 MHQL>@95LR9EQ?F?*C2N"4JF8\1Q])1)_RQS=R]E+DG!TQ$%O7]T>4[$$+XXF5&#:7]""7EV0?1D M5VVKRE=0^&^&\)&YD.9W-/TC$%Z3\;8GIM$\MRK;E32=%=AZXBLH_/=$^,CH M_75>IO*2M63ZW;;,=0NBSE=&1CZ?40M6,G+6$D?8UV^=Y]^Y10:GB>\KC)E' MDY(#%,W+2;)F/"XOAS*RC;EFJ0_;["($G;967JHS$KI+85I%)WIZ0D3.(O:" M/R+SL$SK&3HOZ9('FTI>"=B'32\>BIYY'P*YM+MEII!A=5?4>%MGD M283W(5Q+2'=F_3&28F/90&<=@<&*(XE8*;HZC_7GZSF,SBPAFC:=(SB"Z74; M;M9*HGSD+L7YO!V3.TO#1)NH8!E\$%Q#P"ITJTE(:3%U\#-S<'#OS37I@@\ ?$BNWO&[J/=Z^ A M+SQ0WD;2(J>Q+<)$UV6AG##7S28W[<$)Z>BI00)B]YW?>*P;U!&ZXIK)J;H# MFJJ@.67>3!"U16&U.'KHU@K#[_S&0Z>PO=B4JTUWZ6@-/3^I]KG.E)J.L&,Z MMS*$?[[]@=E@0P?8R')#)]@]Z@7[@ !AYW5X,0 M<=1VWBGUH^\';V:!99MP^CG1[6LY_*"+GP]'_P;I;^8H<6+R1KNVJIAZ9EQ* M]M/#65YKG-:Y[5>>%\9/;7D'";!]1P;NYN482$IHVG"4O_Z&/Q#76QD0(4QI MB2XTQ1O?03SX]U]325$T2T4-,/+NJ%LJ?)6XR:>D%G4L@O41F-R%1R1(ADDE)$ M2DXFQ"1$+I%AX/N &#+)E 1;_Y1^_3W=/7P$(08=2:9FK.[^$]1RND@-+) 6 M#$JL_]QLWH&_70A,H__\%;9VM36 XX./-C0+[(:#W^*IOP*T0B5#4ZV[(,<& M'$B1HVK6';89J#N5K =/WO0%/PQ?+39=#6U#^6NNN=HP3,;.74"NVN2S"M]DVQR-__QQ>R\!Y+B.TBNTB'#5;RR)<+U-@:WD.R=2KU2+/ M%^NUB%'SBR =I=UI;#B#E8$?H13I0U MR7'$Y2+72"VXFJ_7A49]9ILM?Q#Z$<\-&,?0YD8S'@PX6GBZUY2/4HS4J6$_ M&.0?P3UM2-T"?UZ24V?FR\ZKHDDF01,I,87+29$BJ)0(70%&Q.0AC0&"&D&W M:NM5;;[1EL6R:T_*0Z('=)33G>:B2Y>+714J,+YMZ07%";O1;1T#V38,:>J" MN]T?AP0'X][2&CB)H858WI;DC0V/C?X;O//!2L0-/9M,F>.? Y83C M\YS=P X\HN!]9??^'#B>)DO&5BTW'L^V%^H6(_]]*(KMXW9B.7!\#[JW89=Z:WW%3YXUU0:0D_+]\ C.C?N_?:GI[R6 MP!1]FV*NE,*?GA/(]URR_"3$>SA9;)9<_OFAP2^Y0(84V,90,@S;&]K+'Y>9 M2YJ^Y,!Q&:L6F-J.]V-G]Z2.L9J7RCN<-C5;HXS:KJMJ$SX,>\[QY8%J T0H M(OS*A!/-?T(X2B4H^AZ.3DPWYU39CP#DIL"VVERKTD=:7*/>:B,-H<4+;*V- MM.L(="+;@:>(DTB]A>#T']D_D7H.:1OPB1[2L5L4Y-R.R?O$, 1_ MO0&^WDV]YWXPX:=B"5Q* B^[T2;LS@"OL86HS;H?YD.W'3Z9 MJGJE[WROL#OG>>38)O*__\(9[*^/_XEX]N<]._9Q+[/(DCJUQA+VHP#9WB!O MX/O9SMUNW?#QI\$P[GP8UCG!7TX1@RMFEJ;E!MAN0TZ&1"< QJ MT"Z=D^?":IG@B9L''L13K[62J_D D SHA>>ALCC7YQVZ0 MBN9.#6EUIUGA$X>&+>N[\(9*P$DY&$L8TOS[\<(]=HO1AWG2O;OZT!T-IO9D M,$;DYR?.,W]P2TGVD."T4\0>(2V@:JX'YQP/D5R$GP(YJ#A3$,U"BIZ+9,9A M)N?/3\W=G&N-)9E*)$E%28DI(H6)E"S+8HJBDB(^9!0L10\9&@='8;.0J7>R M@UR+F[GC+(/K8Z*Y:$)(PAZWG*0KJY8W;RT$7\Z"S(JI\/D<"UL27W\U)G5+ MT%>Z6/&*.)>XI8@XS/WP1,-#%4O>DI\IA(]<#]M8TTN%7E<6[+O!'653QYX' M_MG9<^P;5Z]HR=O;MF%?X:5HF6"GOK/*V K81_Z#7+Y7H,5!$NM2%EDOSITE MH^XB_]?Z?S]^9:&B+*2@"O<)+^U<\/(I;L*S!2I/!6S[M6_X6X5XZK,#\EVU.W (RR?4<>([SG .#=(+RO M01PB@EU^)Q Y F.^^:#4W5:<&?AGW6G;"^M IO6<-BXV^6%9X-M%)U72,M9@ MS$9#IBU;UN>:89SV#2,PP),"_ R/?2OA<.:M.PWX,,V2#XMCZOT,O2S5UPNL M7%D1HTX5;1%61!*U5F21JZK@C8M%MR/PM=(2F_+K>KH7$7>( MC*[7\^?%\;1BP^"I,;:MXP7+TK(USYK3 M!-.S5NEGHBFF]'!$5)G$8QC$A$ M#$COE[8"U,$3?[E(&QA@&O!WNP1]$P3UAA]$FDA@*#&>OI?9.>@\P@@Y6%:\ M0;8O=C,9=)%V;^4T%ZHXT@<2Y+TV"M87+14HB!NX?4A%*/H%' 0P+[Z[!!^!;^UY^( K\.#31H-G6 #$)SQ0DD MK-IWD3_@8V'L@K@^C*'=L1TL6".;,T[@=R3O,;$+Z2%% 3F;+V_I_?,F5-D_ MB .F#&$$!!L-)Y#DX$MA>_C-8"C;SH)R0S<<23C20)=3&*)(*_?VZ83Y1F4N M[J-G?,>!P]O8%AQS$'#Y[L'\TJDI166%]F&<9>:[DHCRH]:H^8*2]8,C.4Z7 M/3[WM4RK;M$T/=M=2L#=3AQ! ED*V#=NATW7XGI3SWJNF/7Y5 Y!NT.!#KYHVM M;"^")&\%T.(M(G:,I11YQI3[13_;QB)CQHSV]0:_.%/71M M7NY1Z?4Z><]EV(!^YA:-2LE(A^1A&F.D^X)+OPF^O2X*0NOML/ M.)]J'K7DGIH0HL3ZW2#SX1@SFR$>B&"B)T?IA&'Q NK66E:U4,\R.?62(OA& ML^ K7+/1,U[0#70J3GINVNA4#!=&;M#3L>PP\/+=C0<%%0J$AT1X]_O?ME%4 M$%T%SS)6P<,7&GQTX)I9D#8[<(H@GT+/:7MZ=>!P!56?06-W>ZZGBP3KV)KR M*.K;YJ\0G/Q#^O.D-X3\UE;0[Z-#'YL+")U_=PP,8^^H_P%5*_3"-WM7GG=R MGPZQ88SZ=G?I Z:F@-9C6%0ISW43:Y\5B'I5J(VF!CV>?_+,=/X@^NB==*/( ME[ ]:\G5,J!J%;DJ?B96R.][[JTZKZ_N)1*WU+.' MN+VA4OHS#K+X/,Z1Y&TB\2+GWEA]OU7D3]Q4;?*!91GJGS=9&OY12.%*X'+-Q%?YP_WRS2EP<;R*M$EOP^4HJL=O8'L+$ MWNF'05YWK,%W-E$$<(#RD%^_!; ?OILE4(-BES#7 M C^L\7A]WAJ-/7:[?_XY1SXX,R18@?5L6;]!_@>[Q6ED*CG(7#)\\/[#EC[= M1XO2GJR',T*LQ=OI9#.;[%58G X8P70H1F#(IM9;Y=8)0VAN#W9X=CTBWSN' MHGZ22QPE17TX3UVEHAZML<&IZ2(;:W90O)O[@@EQK\M2:C'.HM*ZSY45,8M; M"8EWQ0".J1=T.>!3WW;T#2#O)]87]?M[[(I\0W5#D(NT-N=?02]E MF*H.?%GX+@A\%_MQ^GQ?Q2P'P0\(*PWDS2SI;F9)R=U]RX"/2[D-&P7W/<5&O);KI5[<" UU [%]A0@ M:Z8$9Z&@8!J2C#V$BNU\^6S*Z]HO_GIK M[NXZ%@VN;)2[T_4@1&R7!LXQ9.RD7;R&AI/$O_T$J__^KP=G1$FRKCJV;RF/ M=E<=W+VX?1X16K@*T,T15-((#OQ.,A;2RMV=%HC?8LS.Y;W;FRL96'EXXR-R M_^=?^U.G7GF-)([=DO3C>R1W;Y[Q(LD?^]4M2<)2HR0IBV0*QT6*P).B1"85 M$>!)$BSCP M3+V6Y6H\ET7@7WR]4LRR^_O_JERMS0#ER1P/^5_OQ, I#@_\G-[Q>)$2S)5S0/*'_>,WUK M2A0&R"&9),0D/6+@*QR(29D!(B/3C R4))8 NSL=[A>*76?)R@L<$YA!J]4L M-89HN=<\M?RKB\GUN*[.$SIH#JN=%$ETQ5GSX!C+?4NRG.BS5$*1.3_16>0: MJY*2P5F1/&ZI3#+05R;F$J8-RJ4B-N\SC7;0DG[JPW,F3<6L.71TZLIC7;MN=30NV61G8J+ M4FI1#OH\>GI/G.$SP>(R6#W35J0R.G8:A I][*.GC^9E3)B)UE3(8ZV<0"=; MG2)\.G/<,M&GJI4)F+?T>J9NC8:B[ -_(2:.6]*=F:8MYF#.E='VVBY(:EK+ MJ6+RN.40M0H=\SBSC55XR'*,_:HJIXY;9>9Y0FG6B)Z"BVK;&:*>?&;$B MCATW34U7!=.ES(5@UJ@,X5CYN=-01?Q$,<&R44!;-<]8:D;E5LS":ZV)7@6$\( M%:*C3]#I:D7W.UQKO%X4:]9J$30]TBFFPSH&6*2JG&D5JVMET!GU V;1QTI5 M:$SY@;">3CF^4TDO6_F1ELC! 9S0@.EHME[1U6*=(^SB,H]W^ZH>2.N$"A18 MG,:5+%G"S G0VEUF->OU%D'3H['ZVBHGST4GH3-9JXJG\X:!"6&O1V-M%1@R MI?F5M"#5 :EGDXLV-8':X*O"H2)Y20E1/-ZEC' M4<&?.L)8DS/K/ .!ZH02.F)*20!E.-"EJ3M+ZKC A;WN.'")HAH4NTT0.(RYD_2_WU)*@X<)Y_=4T]PGK1/,+1[?SG.V M>I(W'YH[AKX#"CN0 8RY N;M%Q.(*[DX\[M)!EI=+)@H"B9QF\!CR411,C&8 M154R,9A%5# QF$55,OCG.LQ?7S)O+/%[,8+Y1#8$UP@=90W/6G;SWBGWDYGR M1A[ P#IX\Y\?](_W\@,+%V NR)#DN1/E[;$# %*UP^-K=C=SOZEV^+T0=D7* M$8-%#!:7 HM/++<_.YB$E]1O-B"0V,V[=B+$:!*C2230Y*1Q/.#)TWMO3N$$ M\5Z<2-WBG[M[[^PP$13^G0D68C6X:C4@XMGA[;/#T;K:?:G9W;]D&8#1Z+-9 M\9S86UR'JPDI:=0/M< <6#[(.;:9@8,(:.AJWCCCNU!0P.&6VW/RV6#KB0N4MK3<[TT@]_N+ M!&\H98QDC^/RDPDZ6\H8.4"#6BORQR\<(V^8Q/%6@1@18D2($>$]B$ <(@(A M.K.$:-ITCN (IM=MN%DKB?*?C0AEU9$G6K&K\>!LM,B]AL@OPI >M>N13\3#YP/YJ!$; M'<2_K \8V&Q]M,7]$UC.XJ9+]LMX0IC)A5+'&2Y3E18KTH%WETS=4#1^.>>WH1F#UVX)'9#DZG+>7!7 M:O9?/J67;]5Y'FFTZKEB.T[K?8<@_MQH'P'ZH@/PE_7K\H[MN@W''FG>"7A? M"[5%;]E1&EPY#8H5KYW1\I8J,F'.CKHA""I.V<76'EO[M;ASSUL[)BK-CI)N MV5C=2TGE&D^+BT)@[4$^+G63()-Q.NX+IN-X8 1WE=X@*K" $]R282F(I)B: M%9XN%MZ9")938+EQJBZ.V>.8/>HNW=:>\QMK9BV%?6#+W,:43^!_QQFT)T0W M(>GEY;QN,VA57V6:8F*S0GM#I^(<7HP',1Y,!L\. R!1MQL9>I5#LFUZE6DWN!:;+M8K\75>W'@ M'P?^4?8)Z]/@$EG(SZ(EVR:HV,$UID> /^%1RZ,ZQ0;65;&9K5LE5RPOQ&3@ M )(W#$G&V;[8Z&.COQ;'[W5&KQ6)VD),=VD,%!="14S+N<4Z.%L0>GFI&YRY MB-''2;]/IK0>7I[ZAP%UXD]$"_7C!K& %P?T<4#_!0/Z ,O_N&X/+C#8FFW9 M#T']/GJ'9,,N3Z7U5CG?K\@30I=PK6VG*^E6![!B*O#J&.*X0.?/& -B#/B" M&/"U?+N7X. Q"I28>J[F8RE>GPTHR4WT4$Z>!@=#0S>/3L69O.^:R4MSN7J+ M0[:OVFPOWHL;!_9Q8!]I7_ ^GM_MP-,L'[)W&_#;EIL&L#.P:=>6EL#EEIXC MP*5SI2PJ&:F*N; MS2G=QWU%:U#-X$JH<,/O!8]RB#+)Q1K7'N;1HP3B'$*($X!1-C/JP'OV9J@ MI:O _[)KE\M0O57)S1G#]F(1W.))!O".8QOZN]7]:Q>\G>*ZNF M:B_+Q%+@.PT&Y1H*,0GNK"4"=RYQ0R4ON#X-9%^FBUDGP/8>3FMR8]RAT MNO+8X'YVZ 12%!:G^&*8^%(P\1%%PA]0%7@);'BRN#A=RV LV1)<3"N2["CE M**5RHQF 1+!)^(9@CHM#SE%?'&<"/YEXJ!O0-!P Q[L&"A+L(X&]!V[C7-(, M:6@ %&HMZD)U05P '4S-T\YX?$SD^!&=)$'D5D\B,<]< Z.^_OZ5)Z8F=H<9 M<([B(6+P>\!XVV0T,G-KM)DC1 QE!MJ\-)X5\UTX&85WC)#'EPF<;Z=+C$JF<\370_OHT\@,-.B1]Z@ T)/['+^2%7'-6FVL*V&2:QY(# M7)'K%(O)6GJ0T,%0;J0+?ITC4/;,2T[$&_+-G.18D.UN SA\,,00%_:99NS^ MCM'L8CULV"-*)RH9=N[P!&8'9>;AK0/8+?.BUB4P MQEQ1X[Y#=^>8EG>F>D7IY7@LQ!@FP!CZU%Z6.//T%3)/CYS3K&;X'E#B*#LN M5OCBQ0K1F0$^U,O<&OBI.0!?S-:M"3/7NTF]WTJ.<5Z8-T4\]6%^9@P6D;"A M&"PB#!8?ZBX^#1:5Y023G=P,X\R,Y7(%>>AIK!J Q4N,@C"CF*[\:'N,@C-I785&)3B;-25YN5>JD>JLL5\X4VET78#M=B M\QQ2$ZIIKH74#\FVZW.>WQ M@ U0)3BWD[I)X18GB(X>%:7<(WP,-J++8: M[# ]$OAN9Y#MMX==;=(,X&'K%*8N$7M>P3Z\C&V:ML5[ MMJQO1FLI]]ML@&S 7Z?VV0RS^5$2G?!=(:^2@X6P<(9TB14)>K,IC[C(O;,Q M&D3(2&(T^!PTN.A&NW>B 4LNE 71[^6%;K^3H!?)>;4C+@(T8"Z'!M>???KI M!7=G?83BR@ JE+,;>_(@>;2AHST&B"3+M@E'N8(\1"S;@P^'XD8@?1K\LNI( M!C*5' ^Q1X@W!BX(M!02Z0(E^"N\\DCRX(N19DF6K,'FK@??""^BOD5"TC^: MT!-"NN\K]?J\V'G&;6K6;MCD;?C&PUP><7I;[\,1/Z&/.\!\0[)O3Y2BN5-# M6@7V"?XZFV0>$O@T42E'9-FSG;C<''I"Y?301XI\*T*$#)!V5 M1O#!=Y*QD%;N;GI-W9*[Z?5N/XT&?$%P[):D_XT<_!WPYXBYIK1$#UBXA=M- MDGG[M=U[SH8?VS=M5PM _\X!P4VUP\Y=8H! M4CAYBJDD)A% 28A)6<9$"A ),261N$C+$CG"DB,ZF:(#84B?AI[/A?]L*\_6 M;H(CH&\1MI9%>"'-%[-%ME7D>&2? XC@P#/U6I:K\5P6@7_Q]4HQRP;;MM)L MA:UE.(0O<%R;_TP"0I1(WL\(SQ'S1]8VH&OFPHD:3LVV[TK0;;M!P%(&L(,I M<)#0WT3@_"S]N2=JIX ,*=$)2A:5H:2(U @ ,9G"&3&)$_10&F'$<+A30&GG M[ZDD9M#-H>8*_+)0\]!L@2259N"?/F[)%,5N?BZTQKK)T*7.H)WFY"4+6Q[U MJ9C#7"E7ZO8$+2OWTXL%,Q8**O1ZC_H,+KS7+ESQ,HR8E]5E! M2V[9RR12 K]:\C.'FSBHP$*/''O]N92@,O59(VAY1%':+W7Q M1+Y2YOP4U9_*95W0UD'+(XH2HTJ/@IX=QJ%NLINJ%/WR4F^*B>.G:Y:A)LN8 MW!6(3*)M:DF[WI@OQ.1Q2\[%*ME$/MD3T'*'ZC.6F=<:33$\M^UA2]LW2:Z= MX>M">[%6O4&-@TV)XZ9NSZRV>F@) MACD=0?.:4BU!.HO@SO2CIO-VI[=V613C&';4S- 5/$W"B @_H298F4C:5,8! M.FAD+ $D%M;<"N]L.VK:F0E=H98S>KH_ZXG*&NAC=PK'>D)1EH 79OA4KN@^ MVN^VQLF.@;JPZ0FIIJ9I:<+DJ1EFMNJYABOS-7^B!H?L'7-@T!OS=!7OZ:#. M#:5R+X%/Z? \OB/]JV:62J8"E)10%ZW$I#\MI#1E$30]-BDK23=[_BC)$79Z MM;;3O)ADFC"^/1Y D4IYPQS='PI^1A].9M.46*=@I'E"L(OQVLU,+*&A$Z-1 M(:TJ+NZ6PDK9HZ9-%Z4J_1&IZ\PP5:^V!!ZR-RS5/R*+YU$A-9O.%_ILB+&Z MH]9)LKT(FAZ1M154LG2W,PZ*MHP&0W72_4.YT%]C*43-< M-I<;+"!4$"?49=F9ZNE*49UR?H7.I>N>GT/+:A!K'S6E*6!GV]5Y RL;],(K M%-$1A<%>3^%*9^CYB1Q>TL&T[DY3JX2>J,%>3Z@+].X,0C?*)6XUP^L]JM&@ MZ GDP F+;>'^"JI]5]-!CYN-N;':LEA5)$](*Y54:^Y DH3+:\[]LII...0)R1N.^WN2,H5#:QL)AQL;DJ&FH;3V F)"]Y"R76R MHX)0[ZQ<=I9EP(J 34](O-Q5TGE"-R>O7MC$]"$[SR(>P[R3MLVQQ&,Y^P&MG/^-B[=BYFO3=Q&W>*)Y_)< M!R'(0?\V['-DV(M=#+-['9X*=K>)$A>03R]&9P>)A7U3:>C:07':9X=J!]]\ M0Y'3?;C]V^L1Y+/K$;%D/DLR^"V5C"431;E8[FV^\B>R(?D&-EP4QW^;!\D76;#9G73\\P%U,"H+2 X+%-Z) MB]AM@OEX4G]KP63J:,:&&21VL^/*F6HEOY'Q_X?6T]B*$P@B;PH3SXEM[A M'X(E^0JD1_GS6G#Q^I3BVES'/VJV!Q#\SW,@9/2VT3T;+/'\8176.2PA>@SX MC/TDR9@1^Z6(F!&Q:<2F<2JO_77X<)7AQ+/ERT*KQ=7:R 5FR"L5\<46U[XF MU2\MPW]-JF,-_SY4O[ T&VFBOT)P]^AXLHSDCA')@C%\\ >8^=I<,H*MH;'_ M^N7]UW.<#A"=8.UC;^?='U\9'AN0-3E]3+4G ECW%+7!"(5R1GUX7@#KBO71 MP7$AV5&>L\:#=$TWY9PJCC3%6-KJNP^K#.R8M93@%W=OQ*R7D1PGV#G>D0P? MG#BBLMQ1)]I(8LI"IF?H1@)'BVNE*3+A ;8I^B9%)2YZCW>,$%\=(2(3LUX% M0.#!+IP0(&9C3^'+I5$+R^?8&Z+==Z/ZDV+[JX"] MB_E%!6 H;;LJ>;X#I@ZF@[E3I&2DT=;.N.?V)VNRFF. 4 M&NABD=@-F3AU:U*<E;O"]T2G^;8/E8/R.)HB_+S MP8EQ<%9GL)M$(DZYT,BE0]YHXFG9X-5P:=<7E]-/9I?DQ6?51;0Q)D? MOVCL!B=/W6?X]7,A&?C%@%Y$'RS+.<%W>Y7":L;4.MXB@ CH,Q$4#(N27[]^ MINZ-@8/(&R:=VTOZIG#W>0=-?()_%#5BKP()+^8LA>8<0M\SBSPKJS9)#A?> M6O!+K27!UZ ]),*S_@/?B/B059X8&B)A+9=TBZ)&ZU4@P\5\I%2"FXJCQXXX M>(P33%_29WH)%$E*LNL]NYO%)%!6-&$Z,&6\&=QW%+I+] V&O:+0,,:#& ^^ M7#+IRGR@ERQ=3Z;G>;/1Z0B^4Y:QCN[-[4%HZ=#]H:#_D\!.+:-=;2X(/J3A MV%,XQM4-,C6D( -D*>%>\VFPCRHN\XE+ .(RG\_S3';&V0A,D[44;F>8-7!R M0\0$7[N, SS=;V3Q!,E1.NJQP6V+P99Q[(9A3ETK'^=U8B./ZWP^S2=YHXW7 M,5&H8FXK(0!FTLN5T_V&UPQMG EMG"*Q;Y.AR=NVLM ,(PZRXB#K*R==KLQK MV9GEJ94GHMZ9I=>:C_'3D2'1-MM#,\W@DF?HH1#)&XPDGXFO8NN.K?O+I5"^ MHD_S# (8];[;)-M@AJU&YMHW\&$]']3E46'1S5,(<.U%-_ A10L*2=6"2Y4#3_@Z3,@IB0S+M[O8AT,./-9/KT> M3NJ!&T.';LP3!T_$AAX;>IR)B;#7\DXPZ&/CR93*%[HX3Z+@BK;NQP M)U:\ ^O+;[/X-'\I:ESY#M7O MX\EHY@UMMCBJ<"BF=03>J:N"N@CP!'I7S U&Q/NY#O9SQ?NX/C0\?8@R)$09 MQ?:#!=)H8.]%+^&*'NU?SAM[N.OC!#@FS4X)\(E2G@,349\3N#U=5" XAJ<= M4PGZADF=@L<8&6)DN%RN*GJD?S8P7'@[V E@:+B^L)[3%0PS9R+;E66MTFJ& MP!#L TNF;JCDJ:NUKCD=]<#XCQRD^*[AN+[ABQJ9R7(O_WW^1J;\0KBD4V_TX7Q O9W_Q M,I=(3),Q(V+3B%REQV=.IQ&>.W=)J]4SK'+? U18B1FN^]&]??4 M\,\)"N,8<)_ WOW_T55W4VD57+F#Q,[KEW=>+[K,&Z5\3W0*92Y^+UYC8[Y/ MG_2'\@M.',YY"NM6],HR@T[FQF0A$N&9GB3SNH..8TB((2'Z$>I5(,+%K]%[ M$1$,K\&,YM0D):P6:&^0Z!$EDU8#1 ANT(.(D'C%X7E7%\CK7+N>3K,B M$1[\25$W"3H^^#.V\,BE(:["P"_IF;S:P/$";E5K8B:-^62:5J>9TDA*JX&! M!P5IJ9LD[>OG:_;7^QKW7(SCLP\OT(W !J%+>C[70/]58.F'WA&\ ];5 MT[#Z_]G[TB9%E6WM[S?B_@>BSSEO[!VA?1@$H?>^.P(5%6=%G+X0"(@(@C*( M^NO?3+2FQJJN[JX!J_+$O;NKK!0R5Z[UY)J3SIO5T-D$LC#V>B-YT+3G>@?H M34D[4H(@WUZP@+%*6F 2G!DCN*>89 BV?Z\LIUUC].5J2;/DEK!BN1X MU3LL\.VD-LQ/*]+>W"12"SN5XF2.QI^Z?N$C^(_ 2SJ>JYU(A+Q&R)S+0'[K M-1 *Z41GG+A#CPL NXH:XKC&3PE[W#=*ZHRR!JH$+#WFU+V+*B!O$H*?[! * MN9VN3;=[$GT*E6%GL-)X3SBLJK/P6!T?[="$Z'/J]76Q9\7G<#,A]]+G:9GX MTL&_K"WV*L#P+52Q"Q!86NP.,MDN;.SNCM^T:XN)2K4!!!9/?JEBKEA F5 ( M%#YQ>]3KU7TNB/MQL=TLBTU.MYEI92SU['5MWNY#<4\<6FR.YB[=AOS!'%J9 M:=V5;I^@WB>(PU'O$V0Z M(G48J<.?Q73,Q&&("(%$(W.6(C(,+QJ&#UM$LR11?)4FT5>ZW4@_1A8@XG#$ MX<@"S,C9_5TWA9Y_OK@;O-?3[!RV47ULISJ1@?W[Z;!QQ=I9NG$*&B]5WP@4 M822*;*;XQ MQT%4Q1F]4&1JM6%G:L9?_L&_$I>"ZM]]@&T,'TO(@"6*$/'7&GA!- MUN-%MT0.+"O^$>O\^N)_AG%>??$*UQMM)LW>$,]KKL0-%6^QZP.YH7$\A^// MX9K3^C'U]CW99)M\8&B0>K'GZX'A/H=TW2@,X%P!OE^D73CDYQ6C;(;X85_: MCP9'39VR&66'F:.)('EN][SN<8* MB\$(;;O+O7 M(4?,AW?$O'Z_GRR%XI_*\H62F;?V^1,+?*LG_RBCA3\=Z\.V9X\/RS$[*HX; MBL"GG1F_.OO3K_!!@)P )9R_+OA&3GH ^=?)$X)\I$@TK]/U^:*2.1\5M&ZW MUEP):J%G$/%!HX8],TN2>74^VE2+P/7:AE.)A*/U0MLVC._BH%YCMK)Q?P95_H&LRA%M5K%9$\V;*7ZD$^HBU[CW3/ MLN5XV>7K\T,O+S1'A\&\OMRLE&$_F_;(RZZ<;'M]9CW=+@2IPH3+(B]23ATP M"Y48L1_+D/U)RHF)A761:LZ"[W.K*>_(ZTV)60V.GY,]KE&VG;H(-IG(%HI KX.D;4Q)3_ , QH](4QEQ=9HI MJR*^#D4')QI$9^/R)](4B(M52#>\?\]1@:DAQF]\R\$ TF!P90G]&JH;J?X! MHXC3ASD,?&]C@,?L#.> (FY7''%#G?*NN13Y'DPD&NBE:Z;6S0E7MGP5+XN] MS9[WA[5NRU2HY&(&,D<57_^6*2375RS76>^2]Q';K3Q#K/6MV*8U ^_C3&5C MST:]E;PMQ%"LF6>+]0?,'^#!V^%B50?;J):>MUQ,4S=6J#K(T8LX!81;=\DF4[\'C!61<%Z4RX0E\T<[CG;I]D-B]S %D/-VHP! YJO#Z MC8&SP#L()% T*#,8\7IW6/T*1NR'S:XJ-9N:L-7Q3H7=;8^^D& $ S&"S)'/ MN77EVN-2 R-4P6 =,U3?!?- =VTBBP]Y$LBKRF1>O(@;'%BK&P M-.M2N\WVH3QL^MUY6=Y&';S0'?5W^ + 6'(' HDS.9I%WATDZ\B[DRF-Y9=$ MO: =U]7.OD#88V/-B>1JZL\9'HIZTF>NF&,I\E-Z?%I&$&"A;ZA!Y!]N$3K[L]7&U8^U,<"AW[18X:),+-%@.0&KZ M@J*7:ZR6A4U',) -0ER#@_'U4.#5U.]GH0 EEGB]T?%BNUG6]GZQKZPG<1^B M %"W63;'%-(7IO[Y<3R#]TP2S N7A@\V: U,KJ7A!D#OP1PO0,["C]RL_MV4 MGJQ1Y6-I0/?DN@O%NGQ?JD47"+G1 J+=,<+N8JCN 3""A8-W7$!(53@V]FII MTK3'[6*S,>NI(U*-%:IXRBLK%%]33?ILPH$@XT-94J"^KS\WNWG6X*>Z,.;MDC379,S7N>5_V!O+G@47+7907AX.QMH>MP[+FB$P\^# M0[B VAB+YUCN4IKLU7JXGJ=[W;NE-;E6Y:$N1G&HE^XK6;,4P /=B^:.D1$\ M_/$&/V?)6*"NAH$M#)3Q0"0 ;:G R^\=]JOX=+ 5 V&]%3W -L^N,DU<;"[ M$)!Q"WS9]),*2C_$O 46+HW @!L$!#TP=/A3HKHGX<&%Y:JN9H'A >R$M :O M#KYBR=*S"DNW\]*M8..H![AIQE\O-DGX^^-SO/OBQ<4]%UEU:_?/W^ _-X_5 M'$/U(=(LS^^^11+XFC.@XOA_W@8O'C(@64AQ('5O%,L^O)A,\-(W\W#=4.Z\NP(N_J4ZL'H(;VX/[2MW@Z[=;'(5TP0C\ M*T7_![OW,Z1/BKAK=9^_1\(S_.8=8Q%^8^]^3U R^< +DIJD;[[AJ#!1$#[U MP?.2'0J]S1MNS^^?YD_RW$,*72* FH"IPA;G.LDL5,5@6$8I&%Q!X0B64 B= M99@%Q;$+? XW07U[1GV&F<@/:GPGAXF=\M>3@2B7)+$B\@-@,=X:A1F<=[G; MJ0@=24AN"I6Z+;'"#P5HWX)_3K>(=JO/B3QD<&G5[@ ;U@7P_P-!P-K=SK N M80)8;@7C>P.Q=9?/"S<,_$"^]FH> 3!?2W08%1ZB6T7:"%;>,PLKO2A@2/7BT5VU3(].NI R_8A]TXCX^IHL:(L3 I M#&,PLO#]R)%:#HJ-EE2T5;6G[>VU7N[B?3 R-=%XVHV;<9<4;&/(^+/*J-F7 MNO#M!/[]T$!NAWYCOI"$@[^?&U'M>/1VR= 42:U\WZ_6IO-06,_"YE*QY%F% M2H:FEK_K^_$J)H6"T#T.<:LL-^OTF(=#N>^'\FW >>IT8H^5J@T4<=^Y*ZG2[]C&QI!*P/;G$E''HQ, M$95B:[BH32Q#MBJ,1)6K@S5> 2I_FJCYN% K-)>L:3>C0FW;G*IZ%[I2+Q#5 MU/*$TSP**WRK>.3 V@MV7H2O4=@LVF4"*J&-.70?V<-#$&7_85BJDM>C7$DJE2#6L]Z4> MD=_2LJKA8]GLE_SJVE2 L'T_*"-53&5'NBR,$ CDP1E3D26[I8 MK\WP@UE;S Y[N3 I]L'(%%%-HMZ=]JQE$5_;P2X\-+WQI@^?F2:J++0;TLXR M%L+8+Y&E_M1P186'0U-$[04EHZXL+0IOED*1)-L8V/ _^WBOC!L"6$)/I5,S97N%MOXLCK*XX=C MP=GG*^,J,X1/3=-_O!XMCIJ;;\IC8U"?2/DMVXIXA4[3/R!-=A-U)6!3ZX4M M3@2'L%:(P1P>9J0WS5;8)GYJFZ7@IM,-Y7RO9%H='"AO2 MA ",*_6C8 M(6,P,D6H-6'UN5JGOI3)5AA*_E&M^S1\>XI0X.W%:4'B56%;('F].%KU8Q6^ MG2!2KX_I]*:4+EQ[5Q6"1= K>.5/,PV[8CT^F#D2E" M<4Q0*)>7(2.O0\'@K.3MPUYIY8J-:K(<;=@LWFV,TG6E%K^4 AQL7BLDO;8=IL$+M;X&8 ^-DTH);_3EJ7Y M1!+(?I\NR_2B4N[#D2E"&9N1,%ONB4!6&P.V*&U%4?5B,#)%J/&\NRG/-7W8X[;CT-F;G<# MEIM.AFQ]44^&IF3/W@Z6@^5,-05&9 3.3R9MVB M*,J96Y*I<&E*C8B6P1:MO(%'T:PZ]3>J.#1C,#*U_N*^=QR28;MO6Y-Q;2MJ M9 _?\&!D>OWJ+-[0.M!6\=K(47M2[$R[83(TM:C%@#W,:\JR8#?5CF!U:RI> M[L*AZ47Q="=L,.0LQID)OR(TLB/- :<0>'I5\A(G6]I!Y.0Q;_?&FCFUEP!Z MP=#4LDQ/6["M:H$4R*G6&M:;FQW-)T-3 J JK'XD^!&#Y_M#+E*Z<6NY2X:F M28 W_:/1+LLE>;P5/('FZ+E['INB04,/\>%!W9=DAK*]NKTT:7%EPK%I(BA< M16\VY_D-;N'&KNVTS"5!\V ":2(<(H,M%/VH9Q]Z8TI"5*##?&6Q]W4S&9JB5\\H8T-D6O=D6W:7ZS M:-C&BIL $:H3>2*9PH53B&EKS?ZZOA*8H2$[U=*&&G? <\DTO2)W1ZR[RZUD MCX5A?K&D-\VR8L*AJ=EJC>9**,?VWK;H_6ZL,CN;V?7AT+3&5.I-BLS.V,G, MIN$(W:ZP*!:3H6F5:=L1UW.K?Q@+AE7O;_?QM@J.AF1L2F?2\3TSVP_:M!V- MJ]OYH,3QG>'IN2FEJ9,?20N5\4NXU'?,6KY&]4+A]-R4UE1?&_G:QI)"/#HJ MC2(Y\CK6*'ENFKC23MX=Z!;?EVN2W-FUINW!Q$R>F]:;!GD;6C_"PB8+/-/9 MR8,@A"2[H+@JHQGMC!MR63"D?C!3>94KD"8(V>RV6:[8D5 MAT_&7K ((BENKH%"+,F:7R6XVGPP3J:0W@A#=^GV9+/U97(EM _JBB_U\G$R M-K415:LU9I=C'4*Y9K:PZ-VL['/@SE< MT$KG,XIQMIU=3QZO\6BYL 0_LG@X-&V_J6U/M[4QH "A];R)I?/MB0F'IE#! MBP?[8U3:NP)S) ]XP0FF7"V90 H5;-HKXW(A;MMYW&7Q_IBO1>UD AWBKM&HODL6E4Z%+%"NLMV6O*XX-ACXSCT*ENU0BR2H2EZL;JQ)C?] M]1K?>KME?T Z_<(\AD/3ZBGC3BW7;M$RV0S)0=,<']9.\M0TBNZ,CC\I$&-; M&G==YIA?MF6&AT/3ITZ\';?XNK@[RF1=9GIUWYAMH!?EDH;*3$K=IAW1ECQ> ME(TEBZ]Z5#UY;II>HJB-S;*T'PBD4G-+=%L>BB&8[@4=M>R:DW(\&H IK*2F M7]U.=H:7#$W12YD4>#YN#?FZ-6<&7-I)%DQGJ_79%X9 M$L>HF3PU301W0.)^8]T3!(F3>*I>B\S]($[&IHBPK:GMC:*U)3OOTQ;;(NW5 MH7*&<53*%]-+TL>A:#K>D;2L8TX=1ZP%8G+NF6 MNZ54%#K#LBBO14)J=RUCYF_!V O*)5G(%WIN5SS(5DV8;IICFV*G?3@TK5V7 MFG7_,+$%/(K'XM KQC@)]24N+1 R%RQ,0M(EH;8!_W0WZ_:PD4P@3;#NWIPV MJ5BWA"CL[JOSMEEC=J>Q*2)X?'5)+7JU'2Z-#^%RQ86#R3P9FR9">5AGZZV- MP>,'U^O5YZ>LQ)OR M%C^(BT*SLIJ)P82'0], THJE 1DV#L)Z*ASJ+KUJ5:M].#1%KVG3YTK,EL?Q M+='DJ8.TJIFGIZ:99N+W78KKEZ$CT"]S'8ZLBE8RV32] A'?;:AUM8V72=.L M 0)V6U"@S2]:IM@NW? !LMK03P4A-"9E3DPW0MJZ[18WNXZJGH0F@/7J X8 MAF?[,1R:FJU0X&HU6M8$F:D%TDXLZGX4\W!H:K(*.:);O4,0V1%0H1=\(] * M=#*!].E_)$1I$^)=VMZ60TJ;%L94;">/39_^778:[\VF-I.WKC*72^328UJG MYZ9._T57T*5UL:'^Y$#6$5\#AK R&"2V^'>^/]/H0,U"KV; M#TZ!T^23!^&%>[DNYS'I:&GHWTSL)DIQBB@\+R^5(KX^F5EU+]IY[_$>>.3" M\>*;<.G-[TE&W+=3(!I>3/K#0/ Y1I^\^&:H.@\\)PJ-]XX*W_LF^.-/Q8C/ M__W=["\2[4P6=X;^RJ&=R>3.()G)ZL[@2&8RNC, S0IH9[*X,PC-LKHS",VR MNC,(S;*Z,PC-LKHS",VRNC,(S;*Z,PC-LKHS",VRNC/T5XI!.Y/%G4%HEMV= M(9]L&X)VYKUVAOW*/'D-#MH9A&9H9[[?&8) .Y/%G6&^XFAG,KDS",VRNC/( MTLSJSC!(9EYW9WZR^^&/LLS>D0K%GZ#"J^+X.],@U7?@)XFB>0[\\/^^%+[\ M*H$*7TGR7?O9%R\1\+>:CB27<&-)AZT7ZICY6=B(_%4V8KZR3WH9L\X M8XA)7@^ ?Z2N?4JB_"C"^$[MCK)&I@\N4"^!NN0[7Z2-^.@C\!'WE;NVT_ON M@B!T>K^FY#SM.OZ41/F1UQ:A+A(HI Z_H./P8PD4\N)E#THNZB?/UT9.MQBE M__M"JLF/2A^SIYYUHS" [??!)*]%/7LK%OB,OK:>ZB,V0&S04RT];[F(%1 K M#(Q0!<^[&N/]FGCAE7V"+\X+0]]0@\@_(%Y ?KWDMF_LP77?B"U>FBV*7XG7 M-2E?G"TZGINT<_(]QT$VQ:NP!+R%Z)I88NB%JO.0$LBSDCT1N$9_Y,G?\I%2 MHJ2EZAO!M<#FM8=33^;81^*?D>I$5Z.((?;)&ON4U8V5.JT1 R$&>BX#":KO M@@FB$^Q-$\L^$@>A;/ WSR?[2.S3\H( Y8F_$?N<_%,?B7U$.-X(0L1!;\5! MT)WUD3A(V$: ?"_@[[J[Y/S;OS3-,!:+S'I [V_OQC>2BE#PC9+JJ*YF!#D, MJQIS/U+] T:<[EI^4?G*&J5NG+\OY=]Z_^7=$XCDHH5[$\#(KR1]OK'Y- ?L M;VL/UN%6?56#A5M8Y%KAP%C\WQ<9_*!(,-](]74E2'Q=RI&IFK9O]$W9\IO2 MNDAVXOHA_H(EMT+L3U_D Z6[4 B%@C>KD902!7E353?P6:&Q!B)ZDCH8CO)< M\&O [ZW@=M2ISC!1+-O&>F[XBK/A]Z/1;C#%N_F(8JA!\Z",^E\PW="LM>H$ M__=%[%2_8 O/7ZOA_WVQ]N$W-UKK7G@>\ 5SU34@\OD-WTYNNWO)5 /P3:# M$?B7V]MB=H?8J6TWG #@=*^.&G1L>S&\VO7+/P25*Q2(',WA?__W(?&N54JN MP*6.9T6Z'E#EWR]6MI:!E;T*;LA210DJ:\%>%H8KV3A.=+/'R/5FV7QOT,A3 M/X,9\-%+<'P:?G":B>AJ3@0WI>?YD !\&/K6/$JNUQEZ'<^]%UF]451O@8:Z M!1JK4)EQ!-[CY3Q?MRFY$^T=$0(-_>4?,D<5"PAC$,8@C,D QMR5ML.,2]$] MN]_/>-.2P\%H%DJ!(-G[DC>>:L-*(WDRJ[A'?-96.K$KBH6$=Q@&_,P'> ML$"Q8<@Q&G.4,,O_.)<;J]5>8Q/_:*)=PI'Q

MU-0)QP\X0 U\,)-$B_F6(I$6(.PY@6P!C;CSL#*GL : M""Y_9 I=;A+$[UM-4QJG0IVC@C3\/H="<-BIL+ZB JR_-&@2%)/L/(PQ^9O#Y5 M>%[>XG%L;,6Z>W2A(06OO"9S;)%!P/.6P -;JF1 /%\<>$Y]43*PLI\SI. . M$^1+Q-40QW\R=9[)2IPX4ZZ#[3+4I69C,B[%; ML_,TKNXWX\-DOX0:.4F!0@_3F"1'9 M%MJ7/J;0F?39:?#J76@1UV=LQQ'7(Z[_?#N.N/XZN/Z%S9)*Y*OP.0JIG V3 MH0>4>PI_P0"G$@\%@E\L6K;1,UAZO%E9P6^8.CW?6U@AK#6YY,;S%[;-F?1. M)O-\O*/FD^JVQBOT*4B9(W#N]4*4GUMX$(#\^!KA+ (.C9?/D+VN6GPH^MF M$==_M!W/>,?[C]'@'G%]QG8<:3AOT(7^ZDPD:1,*,KM&[&;5H>&N;0E4DR&@F$P\O\*@;631*,^8%U\R$*8:N>#_[D8EKD^X:K M';#05]W 238(,U78-QE%J%^UX=O[,P3*7,@47[Q'YL(5D.5**R:0N"!Q0>*" MQ"4K?('$!8D+$AJW3J6#2X^J;EQ$)$ M]<6F>JP<.IM?=R@^]K:S)ZU\=J0-H1_M1#?>U8=W7K6::KG0'5DRP"N-@:$Y M:A!8"\!--V/5_057I5Z>-QOF8!O+4=1F9G-YH^['IL(D]52% NJU];&+J:Z M+*@2"XD+4J%1&5>&@X'O='9O]MRN(?:& V%]V%IMDE_$FSX/SFX89GSZ[+[. M>J_(]0TPNZ.A8PX@%W@XX!1UIUH.K);+ ^+E T C+#"TR+=""]X2A%(JGD&# MT-M\EH*R)Y?ZZ??Z,^3._(C9,U];@)@=,3MB=L3LB-D1LR-F1\S^X2N<$+,_ M38"/7]OT) $R5]CTURMT!/S842[H_>)O'#E5SY=4QY!NO3B\OHJ"$*ZJ8X3= MQTQ\0(=#3!/CX=69/ M$N!C%9DA9D>ZY9/,GK':LG)R65PR[1AZ\K8]SZO41VM"G+!E$XH** MSU#Q&1*7K/ %4L90\5E&8H?OX$41"M2A,)Z40IFL>0.E[8NQ*_05-@DE_LB- M@D[K:K*$%# MUY/]"AXDVQXH1Z9JVK[1-V7+;TKK(MF)ZX?X%9VTX..UY]Z_0'S,T>X8-TQ* M6(_=/36W-EV/C^]#BMBI_NPUA6(01(8.9@XO)TR@(8&1(/EC-Y&&0#A+@WZ+ M$O@M2E@D(ZY87ZD(ZT/'7>S#8%L:Q JGD%_^8>AI=E4=,=L& M/%^36";+T;^4Z8Z0!B'-52(-.E\1UZ.;XS*>7S3T#36(_,-]XW5::%"ETF2^ MD\DH'.R)>J4T=-[VC$UU16QQ/D_9)(D;C.AMBGBLYEG;"F>!YCN5>MPH^/V(./Y=,7.W%# MFX=F08A,1F$FRG"S$1-S$,8;J1S#$L@<1*6CF0A+9AN!T(']7L%+1!94.HK$ M!>FW'[ET]!WTV]>(AOZD=AI7%G/O6))TW)HO][/UBB1:.SX)5E#/T$ZOK]ZS MK 9+3+=V%F!U'=5O7HQ,>KYN^/G3X&_$9H\%GF/IV+_PY']9$EJ4QO,V!]K[ M<<05T.CL[$12@Z0&20V2&B0U2&J0U%Q-V&!@A"I8CRZHO@L(%9PC!TH\% A^ ML6C91L]@Z?%F905D_Y=ML\J-Q7$O:0V:(I=*?R?+\KPU-5DAWY=J#,]1%9\# M)AD!_@^:9!3]:]=<(0A"$/2"PJ3F^F-O/V'?*8VBFH_7!1EOME8+85*.K9'0A_;=*>3V M _ON^2&WQ]@CFW6(?\\?O",^C9M[C@[^6%(=U=6,((?Q&]]R3@$O"L^=?H ; M^O=_YR_7IB-KM'GI %]Z>0_!@@)@H7O1W#&RB!9OTM25#Y3NX@5+$XGZH4Y( MP=06),,05+H4=6>#_F^4)B9+Z49A !<'MN-")6)9ZAYHRQKD<6ENY969&P_] M1:P0)*Q$)*A<@2CD"CBZ%BL#^4&9D[\'9/OW:Y:$9&[I[]I X>UQY^=SC);@ M4#;\X#03T=6<"&Y*S_,A ?@P]*UY%,);K8=>QW/AZGS/ 60V1;!.@%KA!:W( M7!<[!TH91W9W8K#,HM(;=\D$JVC8E8LJ(IA",(5@ZF/ U--]>4?S.5YI>T0@ MK'VQ4N@%W?U8C;,'6>.P-R6;N[EF'_:VZI&C;8W"$\B"37H9(D<5TI8< BT$ M6@BTKA&T'DD4P-NU49V)NH%MA80LSE<^<= RJ& Y?+ J+NFA8!^L'3,;V-QN MT4S0"J85D#B3HUFD8R&X>A.X>J3<.7-+?V.?]>\!U*4"Z$K+]&9XP_?P0ET>O3B@S%M2G*M+@KX8=R9T#M6'3?W)Y@J?/F'Y7(L2Z%Z MZ0S42V=.5E\#$6QMG M\'(+0GDU(:B!KN8$^,6QZ]$"]N:6GBDO2F51$]SE MK-2QUUK55!:6[NR]W^RQ]!H.$*_8[)?QXBH6\OGJU R'57[DGZ+A%#B72KS)++ZD\F[>Z)!&28VO?F_R91H\;3:\-U$08Z!;--[D,D(D'-?) M&$@XD' @X4#"@80#"0<2CLS==HN$XSH9 ]W2^@:WM"+AN$[&0)>YOL%EKD@X MKI,QD%KU!G>^OJ-P?(C[3I]99UPUYGZD^@>,R&$D3I)77%]\!5)S#5>BOF'9 M,:%02<\"\K?+_RICK]EO*9XO=TT\TNK]?4D[F*];=KS-UWB^PA;G@B$+)*M7 M.7I4CQ6BD)0=TSF2+N88ED6YYN^?U''U.1M7>M']P7XMYX-BK8M:D9LW&A M7!+'&02<@KJLUD;$J&[GE<#D]L2PJ2\2U0:6_-)LCN!P!#D(E#&)-;1\O5B9K^'9SZKOEH#X_U9(RFU)/%? :52REH%RVZL'F6NX83A[(//\8MG*=K6E_$+$ M"F6U;HUFU@3(<)8K_5/ M/-=P67/VD.>R0-_X:TJRN]]T9FW<:E>M732.<:&6 1OJ4;#!B8KNM68496\7 M7<^<#7K%-IUXBDG\RS]%[C6O5$)0\VDLJ6NXZ/KMW38S=WJT)RK6E-8NZ MS=C%MQE B^]!8KGJ=:?B8E(6FN,RK15+^=9./P6N86=^DL[17-H:NJH*X1^+ M0<<(,2M1+%%6W'44]V:PK<;GWG&4!_D&M5>(ZS.VXXCK$==_OAU'7'\=7/_* MMXN1]V\7>Z% ==TGQ*6YW[K"6)\US(ZW:+*S7S>;>KZWL,*6%P073)^XO.U6 M1DJC:Y-3FIEV]B5[8)L*02?!YF*NP#YE^" $00B2[6)D=&YF;,=1E?$;5!DC MKL_8CJ/RX3N5RU?/!GUQ,BWS?<+4# M%OJJ&SC)IF$.H"0*@:."9]1^_:.G1EP!6:ZT' :)"Q(7)"Y(7++"%TA+\4:(JL76JL]76T3YU[,F M'GO;V7=6/KO.AM!S=J(;[^K#.S]:3;5"5QL#0'#4(K 7@GYNQZOZI MPI6E&\4!X2X%09)ZE?RR/.GWH[Y",$F5')$CF?2EW:ATY4-5R5T!6:ZAQ ZI M!$B#S@A9KJ%,[!U4@A>."+[WT4VU8_RP9S>!4)L,.Z:=#X8A:<*C&P8=?WAT M_U*WY7>-)R:%>6##UQM [E,4T=C#GU$I&2HE0SN.4F<^;GD!XGK$]9^/ZS/M M,7JRX:PS8\;M25MU[4-U3C.RP=6+^*][B7A]%04AG%,P]!YY<](Z?ZX&AEZ^ MIR$-#+"( /" 9/@[2S-Z8)L\'2B;GNDF3QFI3F1E2DAHK4 M$-9?B:%8"G S[!/!@AQ)+K&?,)Q3$U!LR#!488.HF+"97 H1*XU[[S M\T7=GNG+_(HN(?*A?E1EB?)<=J#;C7GU=ZX A<\6@R R=#!SV'0U@:+3S:#) M'[N)K 7"6=;T"W>$QA.IK+G#L(R7\ZU)E!_5'64?*P0+[PBEN!S.<>AJ&Y2F M\^X(=8UU(5F.ROP*//U\<^@T.B7:T=/@=*-%K\$1JTJ]=*RM:^;MG&T8H:CZ%EQ84*,8@%& MH7L!$4@AD,J"4Q7Q!1(75%2+Q 45U7ZZHEHD+N\5NT9D0?692%R0,O:1ZS/? MW<'RPJ'QEW"*;#KE0LV>UGF!],+63@A9K[1.'+& MMWUC$_G:4@V,EXM8O^OJ_M^_" 9_">3/7,WD7S]16/W!H\B#6ZZ]$$J^$#6N M&29#DO-F7E"/'L6WRP(WK<<*P<&H<9' <18>BSOGY1K]=BB^[QP*))LV*@'QCCFH:U$%+[\0Q9S M>+&(;"54.(H*1]'YB0I'4>$HXGJD-7ZVU M9#'S?GDEU[MFXA^GGJ/S?=2+#LMJL,1T:V?;EW3./5\W_/SI^]^( MS1X+/,?2L7_AR?^RA!PH#25#:2COR#=70+9'4^R1N"%Q0^*&Q V)6Q;X!HG; MIQ6WS ZWKC#69PVSXRV:[.S7"UXK-Z;7 MO;PR:)-=,&%W9+MZS ^4M; F^DI]NV9YAXW!TA2"^/(/E2L2)+KO"F%7QLGV M:#7?%6$74A7>*VZ8+;ZY K(]6@V(Q V)VZ]4"R)Q^Z5J0B1N2-R0,OEFU8A7 M)&[7'X_]"1NVTVO+3:G3;,JU_K$2,GR]KZ]Y:,/",.P/;=B7BL*^:\CU[_F# M=\2G<7//T<$?2ZJCNIH1Y#!^XUO.J=:/PG.G'^#N_?W?^Y%<\?((EB\2===/E"ZBQSZ"JP M5]5GLB99#VCT[Y?SQ&=MG>_:'.'MX>/GL\>6X+0U_. T$]'5G AN2L_SD_NK MP]"WYE&H@BT<>AW/A:OS/0>0V13!.@'XA!=TF\/>.S0L+XJ%9M7LXN,^O:^T M8@@Y])=_R!Q53-]IC= &H0U"FW=$FZ>;VPX)@J,)<3$2#CBNR,.).2*8W\Q; M?0WDD:#70JP^)D*V.=;PV:2[6>=$NM_G?K,)^ M"9 !% 6OOH V)KEIVW0_K G28EZ?VSV+85;]!&T*7_XI%',%]C6SGSXWVIQS M+[(FA2^.-N=DB:RM\ZK0AM>T:!TY8*C>A7<(PF&^L33'H',"2=;6>540=%FR;[S)87&_T!AW;^>C:6ANVCAAV1GP M)C^*.LVQ,XS'9)N52;&:%XY'NL?U$SN+Q+_\4^10JQID9+U(%DW6UIDIU\YP MMC-KK6A-"H<>MQ%%P8DK7@9@XWNTL%C&G!\=I2,P?F\M;W3)G8M,*!P!@;<1X (\,YJ\%.2]P6U46QAN:JK66!X M<'.,!%^3E;__.A] W3/![7;6NA5L'/4 =]3XZ\66 ']_= 5/ O1%8CP7L75K M]\_?X#\WC]4<0_4AA"W/[[Y%*/B:\V&%X_]YQ4/I42J0A=1&%NZM(OGO__[/ M_=7=7DPG.FD9^[ANJG5<7X,7?5"=6#\&-N7KKD/]V MB\Z0*AC['^S\+Z1*BJ1K=9^_1[@SF.<=8P$6C'^EZ+O/_!,5SA]Z01(L^^8; MP+X#YAQ\^H/G)OL3>ILWW)S'&?)%..XAI2X10$V@5Z%9CB8*&J/@"Z*H%(P" MJ;#:@E!TJJ@R14,C* :'FZ&^/9L^(^V0']3X3@X3.^6O&-^I8))G+6LJL"M06*>7P]&TN]&DTUA D\F5^*TG MV:IW($BKO]29%AAZ8:?BZ60R&$]Z,\&2=Z[<2"H1?V*BH%1TZAAWLA\J=]99TG_*/)]6" MO5%6+6\.A._"%E2,%5T1=Z.RG5=6ZT.@5^*P IYZ80L6ZX";#1RV)3>%$GMH MK31NBX.A%[; XT?NN&;MET*3*]AN?'#=,9SKA2T(NA'9U9H+T][VY7:]%$23 MP$B&,M\/'?7&PH)NUHIXC?.':T\_C #*^2%W3*F8BD6F\VEW.W6W?U"5WV7M[<'KML+CJW>S =# M+^R6V2';;GO0X 6&FA0IJ2K8Y76L4!=VJZ?/2Z,8$-=>UR:DU6W&B^*.5Z@+ M6\ >=*-"CHE0,,9AD$*9!T?E%HCN8_7MG&3##9UW&LD0U-X;7D\ M-;#D]1Q?LVTPN%*Q8]6$0U. 71]-Q^O-SEK(^6#K]BMZ29<'X!"XVZW$XKZU M$DZN&& A..HF,+[=_'#_5&? V7P^T*&6FO@NW!L?R4F75Z/0N_G@I,@GGSS0 M]^]Y<\YCTII[Z-],[$:#..D%S[L/K$A^Y9[L^WI/];[W? \\<^%X\8WN?O-[ M'CJNOIULHAC0Z8=6R=E<3%Y\,U2=!YX3A<9[FRCWOOD33LT[X_(W'7_D5Y)# M.Y/%G2&^%IZ\:P#MS'OM#/<5;4PF-P:!659W!H%95G>&^\JAG7G-G?G)NW-_ MJ"N_(QE8\,>4 _!-XO _0O;?)@K[0YJ'2-PRL#?ZP###!U0W]8F>#AUT-D-A\1K$A?U5L".(K MGBH3N&ZQ(7&2>J%.'Y^*#]*93%?/!^1+8&/V.FX]&=:]C=ABU4&WC75[PH ? MBIT:QI>'XD@Y7Q_%1O? M2)R',)'_I3/YO^^%2=WOA4DITB849&YKFO8XD&1E/#ZTZ/*O5R'V?&]AA2TO M""XDY]ME0='ZE$WA46#B;HGMFJ5>'TX&-H@B<.Y"8O[5> .09+^J9#_MJ$>B M_?IM;I\4[4*EQ^ ]KKW"\TJUS.9GTFC)P.1-YLL_L#E!NC+XA92/S"E?O+Z* M@C"IKL%"#_,-L&.:Y1B8>ZNHP,_A;QJ\?#2"A3J6BWD; ^ZF:V*00#LKM(R7 MN(\4&2W(:$'V/1(5)"K(OK\^^_ZVNI @DS>6EZIK@H>#\U+5-#]*CLY3,3#F MP8+8G7$^>Y')<,4FPSL=BEDZ ;-H7[RNZT!T-=BIS:@8IW]%ES^)^$VY_\#0 M#&L'"P4ZQI,M0[CU;MIDCTU?9K2(%TQ1-*D1KS#0ST#D<)9 ?@8$&A_2*_'7 MU5^F\],H\+WPE_?EN4"$8E=0N?Y4[Z\F=!290/@9F$V0[OWQ2]?K9-<#\;W& ME'1:P6 '$<,-DGW$C#W\^>7")=DB +*8WEV/R@(=D&IE?'=C4 F@J5Z^!P07 MP).:UI0E'@:>W3T*O8H^7K#4SE2*9\V)NG2%!W*_(##YZ.Z7YZ/)=<=XG@T4 MO5@F?+% 6G*D[3<%MF_]"5WT$?+3*H8"\/WDWRD4XJONG]Q1>ES@MYG6S5R$KV[8G0CS*?[VH;J M_HQ\)<,U%M:EK(/A/K_;L45S8ENZHS3Z4<@?QGW8P!E&SI#C"&$#78BW$LXG G[)[3ZF3:/FB8% M!F-;V=:J7#'NP]LM@![%LK6=_*A;1,M6JXN MNCT30@70J@B&^01.I]/5F; :SO&" /OCY'OZ$VI3@>>H/@944M\\H+HX9' B M9]2UZE G.Q/VW:CZWOHD\FTC7'K KT5ZZ?*X?(3?CYN=\N^T*V9O9TO.OIJ M$\-KP."5N"1R32&D^)"NJ0]1#/X@,):+0EOF3A77_&+KE\RZP-DXO_ M@&K$$&F'TP-=2L*CZH]D,+OY MD35P?"PKF]7X&-MZ+X97F\*V@\]H3(;0 J'%!W I7;\Z])3XIWJ-1N)LRC*A M)927Q:FFA/VVS/6AU,,*M9=7@-Z7D^_U1;K71_ 410-;BCF6F@CY2_84_)P@ M]ME6_3X.H$QT OQLJ_ZL#/XN?HOW;.B7!47EB;P030-3 P>7?]OI!^GB2!?_ M2);[6ZCB[]"L+Q';N_Y%;PB9W2BS@'0O?+(%63B=ILGB.*:3# M$7\BZ4?2CRSQ3%GBORC^+M&S!:I[ M,?@F7-?9,D>&"C)4,F^)H_C#D[!W(])C*UR6HP!LH.$G&6M/121&BL?/9*I= ME6L%DBOMFE.=V)L*<6I0S.58YO7[['TVZ?FLF(&2,EY?]WD*!+Z7?48D)TQ= MZVYE0ZM:5-GMKKQ2#&4?9JWFN&(Z;_53)&>\L$J4K24C4P\Y>CZ,RI/(ZVUC MB$?3\\<5*K1,?G*0U[1,:0MZ-IB->85(>@D7:;\ M'UHR[]?Q71G?#H)%43P4\[J3R#^\B"%'J_P5.\DCKRKG^^5:=VE1CWELZGC?F_%+13/7N]V M7)4<]X<3W%2(I#,PR>2XPI-9]4B^/[-\(R?,VP6@?E7 -QHA'?01[MAK?^:P M;2TN6!X/!1PZ9N@<2;Y"<"H+ZNLSXE6OD3Z:K:5GRT2;>[YN^/G3][\1FSTL MY[9T[%]X\K]/1ZC'7#V9HQ.*EOVTH_P&G@^7&@\;2J50B,RMH.[4?3&42D/+ MB!4BZ3P,,!E_@\9Z"*<03OVV3RISA/IDRN&/@.=1K9 *@V.USXP:@K06:Y-H M/._35A\B4'*=:(XC7^%&T2RH@&0A>6/'"#%8;H5%0=+;^'YY$5CM#I44O0"P M9@T<7C->E[6U?F@W&)#>,A#>GN_M+-W02PKR]E;;$?6CEZ&4P0M%!M$04^ MEB/98TM>C=DUU!AB M"+*"Y7I#Y/DYFSJO0 *T[#\HZQ"),)O6'9:K:HE"V# M];,1XDIRI-ZKPCL+E$&BD@U"7$L^T1O7BK\S&\P?O"0^C9M[C@[#4[Q4QZJM M[EC"JH-N&Q,[(T$:BIT:QI>'XD@VD>4;=S<;-S2]O5_79O8V\CS) M-4;Y]<14R*1W*8?G=J62]B2+UV0#@L]I*&4O=_WQII#W? M R>-GER!(0'(ZRY^ A.K:WY1[Y<$459+9<,96O*26<<*63C=R\SEGG4[/8(* M!!59=:M<&5:\LOKT.UC1;U:GJ_Z*;,CETO%P*!\EI=?L0ZQ@'C6V/I]_2MVI ME@,KK/)@5_(!H"$6W%(5F9[(]$1NJNM4L[ZW//D;0:]Z/L32.^RL&/-+K:V( MU5C8*)HPL9OM=K>QT*H@N0:M(+>68Q[4(AY M5Q=N1/B"0E">\*QGF7-5J(U=:SK,=U22 @95TN>6*;RF-H!P(!.R@ ("KHC4U[I-O-1KN$J]%A4>WP$ A@%2WU9/W8AW*H?%]5NSE7X6#S _;' MN<3VSW.XZI5J;+-%F6S929F#E-?4HZY@^5?FVWZ78E[Q!BP>%.ZENO%VK>ZR MO*#+MC1WM!F)+W75 *I8THV79-\D#(:0!R$/:I"2!67NIZ#DT1K@/N/373U;D5L4.WRF_8D5N]LB3'9/BLQ$B,VDBF3@B$2&09&0O'>*3=K)( M-U9?KSVX=$^S,=_8W.1)( 49*DK>EPVA;ZI8GHS8/Y1XV^,X5"?)CQO9O M=)IS(3&V\+TU%BX-S-@;OF8%1M):)''<>!NX;.2T03GK'[%VY?,E6#YH'@ E MO'L2<.$L^?JE>Q#F,ZLG#TW-;@:-H#$7M]6^$2L4"=4CNE! O440:'RF0I9Z&3#9]5O]HX1/+)P9E^>]%;.L=RI]""9,TLBH^,$N M_469_"A[X0,F*B$&1PS^L=-S4&7*VVINJ8Q4$.CZT(3 M!/X_;(FT [:%&P8#(PA]2PL-'?Z!=_6'']P;><$>65JKCD84YT4Y/UB2E6IG M01BVJ5!)8U6.2T?B43$1 K+W586N@5 ?VA/R.LCTJ,L$#U>SPG95&>),YQBS M VX]I.L)1,&TZ!Q-IH-:U^XQ>4K=[ A#3.R4!P(O"=@?%>'TTY_@LT3+Q/A. MY?2#T)?%$=\2.D-T5?&UFYTO&YC*$AQ^/L7NMX"R!PCNZ:*K^88:&!7C]"_X MW8G@/MZ'Y!-,7P!4U;-)BEO;O"V1DV:#7C2:(<4K5-([ER2?=QD) I'/#"*H M8NREE:HW1X5']2V+DWI$5'5UV]HT%DU<%6=-.H;P .]ZI-D<27SX.K0?*6&/ M:EHYK"34Q$X'-J;I5K&>,!"[%>3Y0P8S\OQ=L8+(!TIW 4X!ZJP>;I>A+C4; MBP%>J_);7BHOV9#LOP_V7^J)+C:9?53O>O)AE3=*OD,.#+RO4$E'7J)(Y;A" M&L&18P_A%'+L?2B@(I69.SW:$F4OY=K2FD7=9NSB6S,S0!5*0F^>+ZV70MX( MHU&\V@3R,@$JF U%X[E"\1D1B _GXGM"NQ3 IZ^C5WXVS+E4[4,!@-&]:.X8 M&8'B?[].>6 6UGD52'KG!*PL:H*[G)4Z]EJKFLK"TIV]EQTD;=5QW#CN(T5> M#S@CWZ>Z[8[)*Q2;J'P<_28J'X*0;(C6*T!(NE@P"PO]B2LP7Q4>2&4XVYFU M5K0FA4./VXBBX,05+SL6(5[?J;6->& $R1Z5YJW&C SZ?0@/T*?'D3GRP@6Z MOZ)A/<9!F?7RO5/N+B)$5MO/9,=+]]GH@"0#2496.SB]9SI\ACT5DMSKM82V MT!GR+>SVB@9,[%2[@S8_%+L=##HI_@@, ^MX(9A6,;F=F\!1E]IK3B5 =5ZH MS@LQ.*KS>G"P_3=4YX[Q%L:^!LQ0\6"1O$@)^2,),*;.N;5C%@>!"" M#Y)6AU^3E?_V.IF?2=FZ?9MN!1M'/4!3W?CKQ4@,?W^4PA>XX^Y1\(\IU2"U MK.=RDV[M_OD;_.?F/9ICJ#X4GN5Y,K?^)_C>,V#@^'_>QLOTD"RPN]!WG$?? M6T7RW__]G_NKN5-E\YKG>/ZW&]?9O66>7TTF$& :^;EOJ'9>78 7?U.=6#T$ M-^HA]Y6Z\HK1?\'N_ML 6Z&^O8,^PR-GA_4^$X.5AA\ M34*0DER2Q(K(#T1!PFX#CAF<>*<[!#,<=K%RMU,1.I)0@3])W998X8?@E_.% M<H*7@8!NCZINI:Q^1!Y5NE!/S"NWK/!TJ+&R:_=A?5&RU% MNE52*E:@.5X0^<803*KD),V8DWC 7-$H/0[&);MGJ].>5N^TAZ.EV3^%."PW M,G0^?&*< H<17S CT-0-F&[H1\:;M?5[UG8EFZX;FG?:A.\.V^__"E_Y#9S) MA@]_2OTY>(@,X)AVM:_8'Y 72?RO MY+/D9^*O/Q-S)M+@U2D <).5!F U0/2]V@9$31// TBW5 MMPP U#5CO5:QGA<#I)8. < 3\&&K54Y<=^IB 50I%=I3-R^N]:2;U_Z%0=MK MX,V!\1M@Y9,%]MT\AX/RW7 ^=%2 .1K6\[V5H=U]"6M9:XBVC[V4[]T^)1DB M>1'8+-_%VJI_<. G96B.?O=NJ7W[+:#?0((E7[ZU ._LOOLD22Q'\' #H"S4 MP\%(QS%@PR_#.6"^L3!\'WPE]# U2%CF_+;S4KZ>7XEEA7N&9SX &Y:( 9N68.CM+ \0)/FUQ"/( 42>@8 M_K9>6T$ ?DY&KE5H=,,CRDB^!G<:TPU /F]S^GJR"X:V=*'+)'E8Y(30= ?+ MWUD:F J@+ISB)F%+TW#/7 V>[=L&>()U4^Z2#//!@!@R 9'F@?P'"WT_*\) M?P)-WKA;DP;(Y0$ #LZ/ .\"JA=X+-@8\)%N; SH&0C/KP;3!X(%AH.51', MJ5@40N,B$9WS$,C3F+&-K&1U@)";X#+]""?)A2";7S!:A>6OP8":87+ MI"S'6@ :W+[.AX\Y$?D\YF:^-X0,, #G"<\F^I:!P90&\%NB"@"!N<>0\E?I MAAG_/.TXO)XJ600@A BM&3#!&V$Y__Y S.X]OPEHK7OK[U[0_'HG8/?X"]Y% M>=)8[C-:;#K[E^8E?"7QF0B+ '3QQ+\"1TQK.7TM( MJ<[!07IB#/CFA64X^E./NV-U>!2 ==UCN*5ZVCKP%0QPTWE;[S/Z"9R A9S@ MZP,^Q\+(=]7$U@=_")91J .L/7$ V$T?<+!VP-8>-$R/9WQ>>/[]Q=Q#[CN& M_&ZO3["G!B%8FWGOT(([?=XPL(JU>KAA[N2O]\B4 W+H " #5(?#+; XU7'4 MFP,0H+\!Y7&]\=R$!8-(6T*8VUB;1#Q/YT/R7;C!4-_$=N!?PPGNM@K ;@Z< M.!;XZNVY-#\?J_!AX.\ IQ>^>J(L?(;D.=&9JG#&H0$ %XA,Y)[G#:7UP1=N M]RVULS> W!5-2_"U8-5PZ7Z(BOKC*6U, *N@M>TZ -![;XI#8^ICR&';/5 M;#EE43ZXHY9%>R1?,2Y8$I?'?6I+(J$TW.[[IMQ)E[EW"MQM!);L0=*I/#N* M*#Q.?\)S_@"%U-/2$AJ<%=HG-=,3VF([\$L"X5!$ >G 20OH$QYNSZV1*-R> M64#D *@"R85/AEMQSR"ZD<*%%_G@7-U&J@^5N[, '@S5Q^#)KV,-U05_.V 4 M<7+& -41*$7WS^ID*OESQ &;JPY$CM.$0Z!H!*>4N@!;JCL#FQN&BP'070," MG:'\P;R^ BQ,PN4847BHERW5X ;6 +&!CJW>-;,'= :(F&08PK6=/)-0&SKI M3>?#!'P 2 9TJS,U 5"?-@#2)WT\ IA6X<9Z)TH!=G*3<_H,YG>(BNE6H)HF MP+!$Z;ATQM_-\_0>.!=XXFTB?^,%1C*+M6K#CQ-RNG='(/@(9DI"?1*<*EGB M_?0B8?+E+?- M>(>^V"&"J@&_WA21!^1G#/_ *W!,$)X/D(!>> ./+'%(U^_ M)VY095=]J(2?]CNY7@K(%T"HX#SG1$\%T@.W(CEIE[X!=AK0:1F<^?\[5R1\ M$,QZS=UJA,^:2'(#P\+QXN 7WI688-&-"^ZGJ?>]!">2E,@AH 30?O33;5SG MQS\C @@G\'-!PWNR#Q2EC0HM1L#Z003QXRRD?N2<40,(4N2<%9W[*IUD ),K M,3:283>E_9 /SP;7 WU<$N[9N^4S8-R'"?@0&!V%\GMV%P;@ _!GQ[G5&1.( M J(?)<;*A:7=+@B. ZCNZ\D.).:*>G> @:T%7]W -9X,./@.\'=C\ZCU CD_ MT7346WA/Z%#C^=XMR-]1]FX_ (=Y:RL,4U0&4'.9SH"='>BN!OKJ?[)/DATX2^C3CSPARNF9T$#]_^R]:7/B MS)(V_'TBGO^@Z)GSQDR$\1%B[WNF(U@$QNR[[2^$D 0(A 1:V'[]FUDE"8&P MN]WM1=VMF#-]8RBIJC*S,J]BUJ7/PS3*0$4FSL9JGN:XT+-7C+0G+V7:%+_SUD)8 M3$A52! #ZD8ISZR8#U@X7#Q,2X*IT9^;$>XB#N97= M<;_\2AK,N7@Q_.;0"(-G/E&][M$%_O[-BR#2'UL$D8P_7P7!Y4Y5$%BY$%5! M?% 5Q)VZC"?2\']<)NU4.X"4.U$!Q_MZ*1?I1@9>D9'DOCS;QXO1![H _8^] M>Y %&.P+L!BZ!A]%JK=?#K=,E>+D.-25];*2*N?LV3I>6\QW?VD )>2AD2K) M18&I/3EL7IK>']9Q-Q^:3$&'_YSA]W*^5_!@+N![&SVD:X\.U@@%3MFQWL![ M#+N/L>"M_:]R7KU'B*E8,!V1#!= +L4(!(AQ__#4,6S(@(II'NY>!TO'#*$- M ;__W0?@(C()+O$_7_W#0N/G>QW"O+ZP9XH (Q0+!NV$;&'4IINO@45 8@(Z M>OWY%7ZD47&W>UBDWWRSP*A M @1?UDXQ?M)9$B#/^EKY?T:X:?CO,#H)(_!UAS&:5,I1$+(Y* YQ%%(W,=(M[XX.L- M0D*?VQ@:_Z./OID#A!U!0=D@M'/4S9G_[K=4E'B$-HBB#R \Q T)JGR*P#QGI!-ETTP4 MT]4MVUMT^R-NU3IVNOF_U4B[Y(L!_6)(0%\,*TSF.F_1Z.QY^! %$=21-PE0 M9C%3( 'R4R#.0"\1HUZX7"SJ&:/B@2=) ,;6P'U1B?Z>@M%!OK@((S82Z'>1GB<7UD8D9 $3I6 MY(9, RLC1%JI\TPTZ'O!97^0^]P42#),=X599B<&1LVKCW7P.ND\Q6&N91&S M.K"8,:TT=:L)J+U^\?TP%S#-!M8I,:(JF.;I:>30BS+DC6$WEZF]GLN'BZ() M'R9PP^G>2XF5=>S>F1$2,.T%BI2RXBIV+.K2::0GC'6JK^+B; S^ETS%XK2> MHU?T?< .ZI=/P%CH-&BA8/XCC\VD7QV-W MM0M6+F/Q!@(J6-WD!U)J,I4Q\Z J @WVNJC*R;UB384!J@V6NB!M014),UFW M35>_NFD6[]5G[X$^29P=%>*IJ@6&9^W0\7/>@=MJB8(CB4JJ+5_/7]Y3MLUQ!,G[+ MILZWT;H"3[Y22/[T:\QM=[$*\/\3:;(,ZCA!WR:3JB-PM 2"Y/)@NAM;)]EM M@Q0GDLP[B;=0-CC5I 3$8J3$K?0YL51YYSC$NQ*'NT:<DA4>KV^G&>OB.:T%Z1^-TGAM9H#.%* M_=)E9<*-%SQV-TJZ[IQ\.L6/VNYWGIX$!,U5BFWJLT%:;[;/4U9KGBO<,U)BQ.?L&7JLF5A/XN/]/(XMJR,JJG4RF[V M,@=LF;UL>2R W\'?E6V^ J:'ZQ6E8R&9Q]A!8* 9V6P*3]NEN#S(5G&P$>:K M3)8T35XVG64:C]V[58-G>[M"52L^ZM5V?(=-,Y=-[S.C45I]K!:7HWQG?E2V MB^.V-ALG@M,_WA?WW?;3LCN(W3^JZ_O>G95=YJ%E8/JYX22G'C9B=UGA"U+M MT:PU);QS)3C]RGQ4[(Q&K06_.FJ;_C&A;P]3[#TX_<(QM>J7Y<)@4)R5.H]\ M0N%6Y*7!Z:O'E=*9W=>2@]B,2RSKU6FN-MIAT\#T1_76DUAA!P^\;;;T?JS< MJ^T7G7%RS%ZV[(P6N_I6[PG+6K6Z%*J3E"9),V@9(%1G(\K3D6HO>&Z2&:^; M^2K;>E,YFM8.6Z=HKC>.REA [ MO5R#JQLJCC-(_(:P[&;YG%E:CLQ,9R2LEJG4/6D:('[GJ3T3%H=-C.?NIH?\ M89&4DD\XTGA@^NGQ9GC?;%?*@TK1FC5W7//P]$3>&N#3L;L[VJK EWF%X^2Y M5&P*P@!G%0\08%;8L]D#EU;8"KMM)->;O=7H=\:I($NSC4XQ6[&.#X/-4"D4 MU2,?OU=W8W+?]WG+R3A7;]8;@C(XJ-E!ECED4!YMZ M.9$6!ZE1]@9V2R_7MJ9 MDMK,B^GTK-V!EH&1FHOAG3TRC/Q2&3UT%H:Z3O8>=] RR%)^/YI:>X$;]+AZ M<=Z*94N=-K8,C#.F%#,3H7 G\;U,3-A6K4K>O:8'8TV93.I)[K-'6D:D--ZNFGO[F+:@-\4BO.V MJ35F7 K[#U)_TND?VTK9$/B6P.G62,UH>1U)>D6?9)K)>D):3'BY;L16V:68 MT^ODK2X!7E_Y]T(MWXO1W%!$,=U*I--F3[KG#5V\&^HW,<1O\I4?W9QVP]%0 M'_%^21$TC R/9/?PKULJ[>)B?_B!IJ(%4]?HWG<8Z"FNJKJ.U+40S>KS;%$_.4]9V<^Z8^Z4Z?PC.ZFE=5V: MD2VQP>$_U@VIFNGUEH/BYFFE+VR^F2R_5T'-"KP-]U#$6W9MO> ,G!^"^+-G M'CHR[+AU])(-/&!$6)OR5_>#?Y0807/Z05^"\$ESQTD]+L&V=/<+ZFZ1;\Z\ M,O9TR*C3YN1?@4.8HXZ>9;A#-.!-&SN1N,YF(,V'D3*3-PLJ92)N%E3/9VV3$F5!RAKW-OG@9 M0,293]1F+U[)$7'FLSB3P=/P(\:$CS$1- LK9R)H%E;.1- LK)R)H%E8.1-! ML[!R)H)F(65,!,W"RIE(F865,Y$R>U_&_/@ER<]QZ+M)YT^Z0NLZK;*OH-6[ M*OM/E!>D06#[ZRN)(NHJ?OE_7[)??E9N.')3HE."X:RT^'K/D(T+C%M@_XX4 MS/Z,6'WW$CFZAR3!WM /6+'C;?J-1.I=18K+W69S?Y9(.35RCE#%GQ6J5UYV M_UE*.U+1G[">N)]=3_'X>U/HS=>+LW4RTK@?(R'?*]$)JX!P;R0@WXM/A@[[ M?K[(9&_?EV+O)#$1B(M4RH?8G$BE_"TJY:V,4*12_DSYB%R\\"^-JZS_<493 M=S[X;T SO)DS]R<%1^@Q1K^+%OU]1(5"L$A2(H3VIA8X$JA(]42J)U(]D>H) MCT!%JN?O$I2?\-=BJ$CA#_ M]093<_!%"*;F6]GD/!#_(3R)L[,I&>>HF++A' %N:PH]* 9O;QZ[5XN,![W2 MV"RM^.4\V5\,Y..#-&NG!W>UXNS+V?$R>7/D MZ7OU/@R'@0O:^+A^OM\+4WOL)K+%[M'#56] MDX;.7D841(/HAS*J!^?Q=&4]::J+?'%0Z2G99JI8Y9I&_@NY[WXEJ.;_?8DE MOC#T&NG_^Z+LK:^:O9)TR_G]\HR=HF#.\YJ$_^%/APE[$REY=Y"!30(9A2<3 M7[SC!JM6+YEN5RNLT"WVM[O^(%$NX-ETB2_?XG'N)I5,N^>NNHQ_.X,?A@40 M*;GW4G)T/U,8IO8*)>=<@_EF3E+(I_]9,I\+!V7>7.9)H7@89O8I(A]I]4BK MAU+$WP6ZQL>)^%\'70=*IY5GCJ? EWOS$POT3DD'@<' M?C!GGWAYF=[C2=5X!'$Z>Y-.9MX#ND9V/;+KH>1Y9-^06PGK2LU^:AXEE%3Y]+QVZ(S:WR8!T;IXP:D-&U4^V\-]E^0,]]X>;I\5 M-X=Z*F4M-\58O-B]S^[DZL]G5SS[7-:-'ECGGF><2_+$.OUUQ4/-/;4[I]FXQ3>>Y1@;Q*9=\FM?'YU3IB\T;"MZ4^F"H7Y82-*! B M ! !@)"LB\A^1/8CLA^1_8B6Q=^\+/Z$$EWO=NTX1WKLZQ;X?U%"Y ,*'<[7 M0@+6@J3;>.==.#3$NQ;QAF_N?V0@Z=U+)9+SSF*X2+.;@=+9EIXVQZS<4G\A MD$1NP/RQVH86%]\G]OV'(5^KI(;6MCZ(U_9X9W%4EAOIM<^J\ K?W/](O?;; M!2YOUP4R\/FLO1W4@OI(]UL4#N./^ B'@8U%I(@QR_PUK_L(J7\$T] M*OJ*L$"$!4*.!7[/I_D%69X %HOKM" Q$8" " R$% ]$:"?W4?SGQ\6\+*[Z^N?:G::^@ M8_'ZWP@%%,T6J(%ZFQFM%,V=$'M+OOB!DXZNDN('5\7[RF#6H7G6H_L+1\80 MY@&^T U"TIBHJ[KQU96ERU^QRZ\@C;*!GP(_DTZ^DCP<)H , H4.3,_2Q:5W M)LW[2^'"-BUE>KC,39WHX8W,Q)$QBLD8. E)EAC;A 7#6',90*=I,2O9FNO2 M+5/51(KI!)61%&AMD=]-QM*9M0T04S!EQCI[[0VC:*)JXP)DY+VH8 -A?\,( MANS\ MTIVJDO?4H^FW-H83*"N+&A(^B[#U\6]15(SP&&!S]A*P'4B3 [&R6. M11!%T!868LB+X=PRY,CR'49 M1D3XBN-?$=9@%_X1&K(%?V$149D<"*3'V%]K;#Y1-;DJ2(J M^!FD5V"&59[*,#ZVE@UT45T]"4MW@?I00A=:7^.R9="!W))";89<+X$TP9=+4FN7\XKQ*]=8.JN6THJ,OT MLQ]@1G00KC*>"#!\4 6^5S-S08)>92U@"IR1$Z24^<=D_!TR4W>J'=&)O%_U+MTVSU>8:C:#K^#]/EAWQS MP/>8"[O3"IIOX507=6"ZH5! $&E2=8 M-!H1"10HD]F!2#&B(U/$V$\ >4G82& 0NJD(B59@PN>R9BI;4!;P#Y!/7C,K M79)5JL8PA*<81#NM=8/T*:/^1H5EZ5\)F8A3XI+*\;J AZJP-N6O[H=_WD/. M7.?NY(K$+'U-_B2#BJG"0;>MKU-E+TO^.TGI*%V_Y;R>S&F6I;]=^*:_-(L+ MQY;( 8SW!;<^&_!-X[>70[KP70-.V,^.EOY)EI.&@5;U[+Q:YRLPGA(*Q/3@ MP',J?S>>$Q?P72-I^4!IX4(M+0X^0I//Z!.8)5'AGO6/A"EPC-BY#IDU[45\7TBR0J%9*7" M)EE=<$QF&CSEHO3;YR5%4K;NT'SL7H:Z. M=$)<^D[#W^%_9-0G5H;%K^ZZ1)X:^NJ,IE=Y1'Q?!YK*\.H5D:J9@7%TF/-4 ML6XN902([$DT#9;3P/W-B:+HCS6Z8ZO2$9 %B=IU7@OM1C&+Z0#EN@23@8A*2@"<35"/\#3:RLR3!( MJH $#3P8=1XW5%3U-&VJ!\C(:8Y!ZK@QNF;P*NLF>S9F5K5K* M6B7D62FFHZ-=-8"R T2S,1Q-%+I?F:^$ R/O%2?S="!CT70+525:>YB.!#_" M&K!(R,I+\Y&@*T[3M$%,3G,!61# Z)S),1V2%Q\F"2K,/Y'\(0B$RVF,0,_] MA'&B6V<"C7E*2@_F>KR86&*?L19563"P2F%^ ;P2R#P?KOJ$*XBXI&^[(96E M+)T5F07Y]__]AW\VIT**BSBL;YI.UQS!7S,Y-C%D81D3IM#Q5T'="0?3+"ZFRE.8.WW,_$=0# !/P3#0&,KFR3!0 MQ/=, NIZ\!T5D6":MH$:-H8@T0?+T."=9;H%T]%2H+?,M:X1 .*INYUND#H, M1T=A;BTLF*I_U7N>$I#J$=R;"& "F!\I7<#I;K$P]])S8(2=8/BLL:>CD8\* MPB'ZFW06"')0 [S+@]+GN,SIQ0P3E M "]<"9+L SF ^ B$EVS#2RM32'6&[7P&'>8K*H9HKTR+YE;EK:YN97^ZF9A8 M\+)7)FD]%[29[&$W4]1!7AU70CS#D "115505A0J(X0C*PF:J@H85IJ)E805 MV @G^1H2*;U=8LT-&:8*O\VA+PU5R%$6CN_K>P_N !*134X1'5F? MY'V>6B%E?2<-4O3L)MGPXKI$WI"WE0"%7WQ##'?3G3C,@13FN M$V@$7>8;JB)]G?@G0[2)J6-!)E&]EE A?0SR\RBK_.%\5U?J-;=T7*F>JKNJT@D0>0%XR=OJE::%54W ]F-^ M;'"K\<)JLTI%' XWA][>[NR^?$NQM[G +B\T*"I2"2G\WJ2+^TG'C3=/\='B MKEK=LK6E-#-*N<:F4/Q4TG'M1^'>GF<6@^*F,GN:&-)V6 ?2I3.WB6=)=RZ3 MH5'ZQ9-3@MC.BX0[*MQ=^$1+W& 9.Y@XS?+@O-^ZP@)3P8P[CH(3,'6#7E@& MS4P./H. =5R &8&/4P+5""2B99[>F@?]Y,)'3S.=G%7B/XJBO+8AJ-&^.5M1E8"*)/W3;4FZ%Q0W"Y#N1YF Q: _=YG^M"ZF=?B'42L*4A M8V>P&E6ORIQR[06F_4.](C\!3Z#X9+(GAROX]IE7GEL1CT?PBN][!T[8X7HV M"2/^5^Q+P#(0"_#6BNORR)'2M,)K\Z="<[D2R[/Q5)'4O3Y[M:829ONO78=$ M>4*R 5*@Z". NVK-J_JITKX;BGHYM5O*;;U0.J[3I8,\^_*-2]VR'ZO:+S=B M;^:6U*O=3[MLI9S?Y'O%>=;B.A]/H;N6'F\=,YW' 7>?Z*4>)\U:9I__\BV9 MNXV'08.'K);8V\E0] > PE0LG'=4R]2OS4GUY ^<.J._U M\A0>MJYO_ H&%DFL@.8/?0H?9C(A7/)BO6>:V"31655%QPNQ^Y9FQ.8&R7,) M6/I,/'C2CR_U[:2:W%@=#E46J2^ -,2-4*;SB'!EK$XPSQ>3\25I77MX.(41 MW3SF^9XVAR;F]:A%L%?HU)_Z]<5&:0#58N3]FDS#Y_X1OU*@@;U3$ =D%RPP M>D>>%[RPI=GJ9%L)+TDN6#"!FQ,,E[AW%," J3HC:<46"4N2+1JJ.R /V)Q( M=/,,WQ$9$.X!R9&09%,=F0!U_,C&%_)N((ZNVDXN\X=,I+,=93;#.5EG+M]9 M'M*_JKXKJ:;/R0-V (U<3.5%Q2F (_&DW\U(-]LX1ZE(U$ +$WUFU:%(5>N? M:$&:73=$_6%B5GUHZ/%!3YD5K>WCH9Z;@BL1YVZY/\94OP&=ZI;2&-?-=(^7 M^18,S^![TV8>CUZ\#1Y0]HS!9H8GR;W8JS:"WR2=F(W3BW%[VS,/P#(6+9N4Q9@7?@"HQZN)BQ>#GL32H [43"_Q M=G#-CQ.F+3IOQ1F2PI93B,0NS"3=#Q@C$A<(!!N*%?SV!> ME,9X8SFIQ,]SF)])G)S5N06$A80)37$N2S;8 ,DI+W)]FW,>+ZB$.KH2R(=" M(8AS1=X22J-A-&W2[+)B3'T<%B*3 8(4X!4BG'9ED M*"N@!0W3NA[WY.!85C!MBCDGW5JD&,_Q!IUA$^-(7/G3VU7<^XE?ZK:UMHEO M#U!"$14\)^F6X07T.8.NHQ,?.G23;M=33*KE&K3RE M*8S)E,F091S',]%O7X:%B*U.7'?/E-/ZQT G%UD4Y"ZPD[P(MVN2!">\S2NY M.=^2^;L7W>2BHINHZ.;'BVZX5Q7=),)1='/%_S#/5/5$5E$MFI[W@:#?0\\^ MO:NXYU6X?I#6:=2?*&F&""Z3TM MV,(\BVV8X,R>5TR@)J7@XG)*\EX6;4M^J6*'NG!!XI#DKV2+GD'QJ7W'*?)* M5=WN3MOR78_71#J>^[S@6=F6;= M!X8IJ&<)*T(2U+XT"^YU 8@&CPB@*6DL M$+DX3^74X4GA![7\C5>;3,P -?0N3',J3! />J]8 <=G% ]-R58!PGT7\;CY M-$$"^RV(Y,@!4G(ASS#(C/7W:]J_"\K,7_.DOTW8\7N\P!SQ*Q-D5307$ ML:%F>,JJJIH;#!9,E\(N5U R".[C@!'<4]A8-F&JXA+V"N T?/&2OI, ,"@4GM MQ(L^S.DX )I-HC&Q8"!L*FQUPXN#(1L5>>J+AH$\'G'9$T[Z:S9.Z7Y:W'09 MI K+2O'K*UI.:5[6GIPVUU!IFZ(Z>7EGSF4(\UH,Z'SK!B&OXXW>.'LVL 1R M95-0 "O9$N^V=FC5PBDJ!;_0K*@T*S$6D/H3FFXGK;;]B7^,]Y M/+ MI**:N!)HE9X-"X1F=7Q.UJ0KKP1JR ?::6-9VT?[EB\@]-^H=SGVG^Z@W2(? MX__\3Y@R+#U[@L8-HU%11:,Y-T^:V:Z=2CH>7S]6)Z)VDYX/R4X0<]Z5+] MQI<=(UN7%(@D':#6H5]UZRN]3U:$X]:S "J=0+49UJ%,C M*.,9/%NJ>1R"3\X*'P2<#)ZJYXP8BS%)0=J%:!&>.+5'[@!]V_'\51(GC^9L M/]K-BPO Y\9Y"4!?[,XK:' *46[PRZDP,8@8GY =0T\/Z/NY MAPV\*2"Z1Q6&Q\\)'FU=G\2)*"!= /4SWS]Z+C3>9" />NYWX'2IB$S?/0GI MW@C@U1LZ2,$'#D[8@'?\]C[9JM&:]@B6H .#D1A6"6A-+AH09ONQ"%IEC.P@ M/;$I-CYN%]B5JNTM/9 M2BDM5^9#Y\LW]C9XL0#=N:!K5+J)13 M=S>ZMYR=6@*"]DGUO9?:(*@"W&&0 M&!FKDXES+SJW+CC>G*^BS(5??+OHHB]7E?J+TJX7H=$E2IW?,W#MFA?3L4/4 M^&*%]$$6L&S]3M]AJ.KFHBCPVK:*L[[=6(VSR5B48?6]<'IC..7/)W$Q4Q:_ M K5VZ+G*VD^)W$OC;!,O*.Z317:6W::'B7%BT-I61P^S.)Q6WAHSR56:?;'_6UZ.LDN094D@IKD7RZ*HQK#.6$Y M4!3C1H,N8?LIU'!FZ[RXPUFX_?JF"(-,53J=#S.E9]&BE#%.0// =9Q0H6G)>UDD&DDRQ,%QX^DZ1AT(WV8"R"M).-V(!*,U=T: M07\0#E]*=N&"+-3_M?Z5$K&DT[ 9V=XG*1V!Z:'IJJ-GK0SONHST(+U4YD MO<$DDEL_2(\V89::OM.N1%[A<6]:+@8EQAT31_X\#Q%20-GZ+JB:;__0I'J< MC;+J?V]677 O["K(0H^/E=J)07K5SV2ZJVJQ6>V,X^,X,D'PM4S6XN6"6<[S MR\-\D)@7&GE+%3JXX^JRY1T[C?>ZW'#!KS+EQ[0]8$6N/X.6RAI<:S[&Z<"K8\3HH/J2I;*+&CW)P]U@OVDN7RXW2PI3BW$ANK M?6CR/9X_5IL=SC[X:V4ZD](.+U5S9_3Z&HEW MK'H(60B]I)AN1;+K]3D:/TRA\3[)=*I@@0A0(JDB+YYT'32Z09C7[#:73L0X MI9EFLCXSA/4<'#X!%+@OL'0>4O8<1E)D30_]E+Y^Q"TBYSQL31T.]I%,P1/_ MS7W)>B@.FQ4VME[HA_O^*&7G9^]TAO^'7^KTBB-1Z2C3T)G3#UH&PAS-.]24 MV$_!MG3W"VH\R3=G-I8]G1?JM#E92S#O.6JV+<,=FCLUYQS4[]U/1MZ33M_F M "8\?[68S^#YWH_[4*:P=%RZN7_'\+S3KQ248%3@NUC =^:KUU28D&T0\F<# M ]^3>-[K:V""\^\;7!88<29\G(ESY/+3B#7A8TWBEHL632@Y$ZFSL'(F4F?O MS1IR;OKYP?2_!,H^D0Q9]S!YOS/YRCN# 3/CE__W)?7E9]5\XI;-_NOBRMSX M>L\0K^TC;LS-OBH:^%UW'/U1="H;U*GD3T[E__>?\33[#WB6](/G0D>"]8)@ M<3\K6/$DH="?)%CH]9]+S;NAJ_!-GBZ:X+\!@D2BUCP9+[!PJ#@-G33?(OKZAUT&(:YO>(^^G<^[>XBIFH:Y)VT>*[B!7<%E=1G MD+)GXP"=C9]626T]J!?W[*H[:0WZJ9EI[O)G15V)UQ=E/'LO955ID]E9=FQ<[&VYUQ8LQ]^99.W7#)9* ZX\UL M21C$ZM=3@Y'NB'3'ZPX9=74']^.ZPQCLXYRD%]1ECYOM5H=6=\I./UMWZ-V[ M5F=U>-"7O4Q:V>D)(163,?6;^O(MR]YPF>#9FK^W]]*5U_9$541,:U8QH(&7 MZ;V1#OC2+RZ>RJ6KC/)98QX[.7N-*] MYRNR-:SR7.ZI)93GCY*YPYH-@ =<\B:;"I[E]#NXFB'& I$>^$/TP$^9>M # ML=XL>;<2OGI/[/^)4:1/4!&_ P'"HU5^"EU4"F-)GY8UC>6* M_.BA4N.;L^XQK7PVNNAN2E8J>W0*ZB"=N4IE4%'SX MC.!#Z-9?I(!"HX!^"M: C)K,2576%<+@\WROM$824>M>[_[9 74&@^.M41R MUUL*FX=M4[L?WIO&#!10"G=LW"12P;/E?^,(AK=?&#!>B?J@6,_9Q+=(KJ:MD;]G>YN#$Z M#O7..$U@")NX2;\G#OE+04?HEDRD'#X=2QB;S'BEI\HGA[H\MZO[>U0.!")@EB.X?_T"(_R;;"()WL[^FVZ)^?#] M6]FK^[=6P@(O&Z/'BSQ[_>7US5P71^CYSPJ;*GM9BCDWH>AGYX6LKF[A]T;@ M',]Z=N,:7H,,BR3FGCE -\_XN>97=;>'DA9L.S-SNSI2VY=*:K-=-:T,S-[)4>&4E6T>B&Q MW !O8EIWTFQHN/LT==E23=860,&%Q%>4?7XH^RFL2SVE)59+*6G=W/2-+#_U%R4=MW]^#@< MI#-+]-=&'" M5^+5V21A+G;5X@Y:!N8D9M:EU;"X,Y?7%P,! MZ-Z^U]B-=)^G$=SSEK'6HE@9CRO3@3#DRL)]?B>D36P9F%-L6*TNYY6-/.!2 MFW1-GZ2UY7('+8-S6J0+S<=L?V,N:RTEETT_#>]267QI<$[%E*JEDX.NMFPE MTXJ96MK#OGYU]V^F5DS=]>H:Q]J+?OW.'I?[7/7J[M_Z,+](+#+RD.>X8:;> M-MJSA)&G$.^"]P/S>.0/C[/E@>5VNBK3P,6RS7GYG3 M*E]O-(_8,GW9LM:2:[5-%?:=XY03T88$I<2^GUEZO518IA./C7BJ M.IRL2.^YRY:\V;X;=5+L?MF3UI-M55FK\R3.*$C[RJ%1!T4WO!OT^+ZZ33T\ MC!YY[#Y(^]HL,6P<]_/]DMMV-L<"5*TH"]&Y>%#-CM0UI/TLC6< M=1K\#%H&9M_**.U'*UZ1^=CFZ6F2*26,L8KO#,SIWMZ:_*8ZX?G6KI=61YG$ M:EO90B]7#^-D.EWB%2/?+,;: MZ;VF8,O .^_F7;/?E;J-9:REKL85G2\;0*=LD/4YK=9-IA] 1 [Y77Y6'*Y; MA\8,6@8F?Z\UQB-)$&-+QVL@5H!<8GKTF].9BSOFRLJMI6=LX/">XLKDKJ M(;UG8^GE1I-V;98O=Q=Z/GC=P/5V9.-]_)WV(8=]&WZSU>>9!$-@4/P?IICO MW=V0?QF^,Z@.\W6^V>\Q^6:)J3:'?*_?(']__A;]]"?3#465;. G'WQ"&R;2 M7+_J _XI:>V S;T5A5%KCHX>N26N14>[DJ/L"= UG>6 8!IP/ M#[-VS_IT+H!'NL@GNGSV.5$GJOSHI7GN27V^0[(O)^7><8Y4I$<\X66+FHSG M&AE+V6*FMN86>'CRX M[=TR?;R>T#8._J-#_SF[DPS&3EK..!5VMT%/ \5K(Y8(W7'T /SK&]+N,%\$2_DE&7J3]$C_/SWRY-SD?&X-J>3/_9*X3R=Z,E& M5@DU7>)VR8&VZ!1>/;JS-%@JZS$81+XWS[([(U&?C7KDZ,Y@-/-WO:?PURCT M%%\_9OG.<,G*=G*L#R8F-]_/D$*_R:7PGVTM"8R+(8YC?$ N3*:2CI <#.[7 M-0)1)#^B,XA])5H=)HWGA#IGO=+K)*E"DF2R==DSE;XKX@J"MO3.A2R6S/^A M5H/R!T\^!_V)9X"?V^6?!^7N*:/5TQVVA4,1!CK3C4-K6I(G5@]U.)@EDJ!U MV]_)JF3ISB@.3A,834->361CG-CKHUKZKI@'+Z:\G/9BL^4#'GCZ_?-@<96> M9*/A=$ /=_4M12O1N.N4#X7BLB9.ZLNERF^KW.[+:]P3$DP^:9EWHH2:';?W M[=AF.$BSU:G ':3E;/N6E"AKW-Z^WTR'O,VMNN6&MA3SR_R7;W@6,1[C&8@B M7_SMXKCSHV_GSEU@Y/QY>C"D0$.]:)/GH"=H]+1D.O?RD L]"15D[S8S>ANB M"*-4Z*70Y)#)M6J;GDW&]X."M/ N OK)A0#/F'?R;N7\8F)Z 6K.RS&\%^[A5=(HC'#*"[.G."#CSH'^(WE+]W;E1_)'6",CIR:)BG).S"T$I4P15]>@]'2KZ\?MBO67J$-Q>E&BNTB^WA MT5QNVQ4 'ZDKER3_BS#T?>C^[OJ@D!7&^WEU-V97=F[3DW?ML7[,?QK=AXE! MSPW5(Z'3FLMU W09_';;.0J_(BKD-\*BHKDC95U(]8# C,GUGZ^ MQW"*UY8"AZ=O0$7A=:/7#OL\OY#DY "1DX>-?#6&OK.R5L\9=55!V4]=5+WIUIBH&/9?$ MF HW [JBQ#>+Z6;LJ"YKO/$PKFKY^T!._ MFPP;I=C#0.:6^<:F=UCW],Z/7U!QNFC46RPPTI@ID+2_.PB?2^K>3>"=9"NL ML!CAZ%SK>(,Q87U'[C4AMS\9L@1NJJJ;Y&Y6>M6LK;F7:3+DME7"2]KDXJK MJ: 8SMU,DX/_"C97E@]7_>H/.;*V)\YER5;EUO221R?N@8K709I4>@_F,Z?9 M=N:3^:&NW'>6\L%<5[*-3D*:1:?9_@:GV2:RM^GHD,%0'C(8'?\85L[$;[EL MQ)DP?Y*@ M5'![?20GD9Q$"B7"*&\B*4,\C.,M<'SH+L.\\\3)$CLP'U@)%A'#* M?R)"1$OC;!-Y1 =WSW9$B6AIG.WBB^A -\U%=(@61K0PHH41+8S(S_C[_(S? M+E_H7FN,)R'_@\?\RN2J 8U<;&7M=/=\UO!'W$(IWY^TN>ALUF]Q:_?G;P?Z MX#NYGSL<_U?/7JYU&K5MNE3/L(?Y=G_/E1+ID39[]67>>#/"RX

U65F+%U MKU7!O2YX7X*$ETT"^U39_:4$WS["4F]I^EB?,1*+-]KQ+EA M2ZEGFC.\A#7QY5L\=#N\_4&.5V<^R>2U%_Q M\7Y_2?W.@3^1G$9R&LEIA,.>NR_G$GU=8#-1M%N5[!0\U2)C44-!AF[D MOK"_@KGB@JTO^5QFS=ILB36[Q9U9:I([ZKDOWQ+!JXPB]1 Y:I&C%B(%\7U' M#8O.2<7*FSAI@\YQUR\7AA);V2RKW?IMC@KJBE[OC)+Y MDEV/F0/.'MKK?==,)?:[<<8)OB5RN??#@I&">[;Z*73+]K/I]&QU5.@H]8FQ MEVA!/5L:$CHQ^73 <+UT)'1TBI93M)S"3Z=H.47+*?)G(W\V\F??-T+YHB^[ M29N'IV4UJ0X.E8=B99TS[?ZT [XLB5%^SYG]?4OLXASIL:];P)TH4_-KNOE, MOR1 OTBZC;=XAT,3OUTJ)WP3C33IKR6#_='!@F JYA45N523]C#>:M>6O<3D M4!IJN79JF1]G,=R78&^2\424^GW;V%[HEME[%>.%;Z91%=0'QPE")P'O4R85 MOGE&DAY)>B3I$4A\QXK!CLR/$[(N:,MB75HW8IWXO?V R#&J&(S\T,@/_9M5 MS*F_O"I&/Z@LWE^(%[9I*=.#.Y.L+W)(9Y4W M&7W*D.L1&> !@[)WPRAX.IIL6HPAB[*R1:*3@L>YS @KW=8L?.B_WGD%E*85 M7@.9:2Y78GDVGBJ2NM?/)3?U"LG]3GV5*!JV+%6=B>>G\%_O%B]H0R\+0$-9 MM T#%J$GX&DJX$W!,,;=SLYJ)W)UDVT5"IOY?G08WG4[7[ZQM_& :#/ ;17) MIIC,F6S%3%F,*?L8E9RO=^0_X^-3O%/MCA_80:4M=Q2[.&L)W?Q5N?Q90:)_ MXHM@H$!5]>S ;^>K+]\4351M"<\\=R29_ ?E8R*HY-(S$ [!I6\,&!0S@5*, MZ1&?T:DL ?=A:J:,1PYJ))>#X,1[C3F79$6/ =K[M;,PX!7XSQNOL9)M M"/B>,3>.TU76UWU+KK>V^$%N,YLM1V9O,!Z-#O54,?_"DD-9Q66'ES:;LG:Y MYMJ&+LJR9)8-?86KK#5]V7Y<753';/QNRA57L\%AT$H,J_V6>.1@46EZ<$TA MMXA&>S5C;Q@@):4\ N$_B DMG$G1+Z15(J.HS+JRJ JFJ4P!N^&0\A):# 09 MR+)\JUAU^-2:GCC5E*W6U.\I^+E5N]\>VXN*M!VT!#O!52N;AR6&Q@LG2QW^O#A BK0*[9]5XF+ MJBP8"%CGCI7T\"CJQ ^Y2_S9@TFY9,!@Q^.7]X7_O_\XNQG=RYO'1%W5C:\N MEO;-T^F;([!Z)L?HQ>L"VKRO@KH3#J8S[TSN-AEW6E^=Q]SO#$H1Y\OOW #O\,K2UQ_(J%]W#U^4OG-* M72, "#-J$D6SR7*ET'HRKDKJ(;UG8^GE1I-V;98O=Q=Z?HQ-XQ\BMAV/C-\87Y?-K=S 1;Y1)8UM+<"XTQ>MTWR&L8E$GD;J'X37@E,B7..@;UE M^B=# -ZE3*WR1%85>2N3_H,C Q,/&! 6(B,2U.=^/Q$0JCC81=X*JL,$4$WR M5@&> V81KN)I\(/%.>, )S!$,!5\HXF*%MOOYC+1;= 7H,$5V!]&59:R>J#3 MP2'[#!JS ^0(6O.(JO MH-)E S\%?J:8G0#H?_ Z#0VM"/V-Z2KFTCNW.@0T\:_'.:P6@3'MB0D0R@*4 MS""V=I:4 L! %,PY+CA))@O=]4')D=4[Q9HS!4%;D@5'K+MPPS1O\[<,/=?\ MO[$I"@;'_H/MR,?X/_]SKA, 4.F T@% $ 0BR@9^8'C;T&-TP4^P#T$4*5:! MWZJHD0$LXO^[[==H<8&ZA$.SYYZD@Z_=XF?37N-LW46IKV7*,:I VL5;IB%H M8)W)2KZBN03+\:%6$^"'Y'/,B:HHF2Z@I51T2 @-">'P>T(\,@ELX'A=ID<, M?*?%3-WX$XP96&O9=(P79' GAJ$#1MZ+J(D1U:'>T7 &,7C:1E6EPNA50-LG M)>NZ2(P!HNIHG7]?&+IO_WL&X]X"3I\JU?J&(,EY32) N>M%/,R28HJ@^F'8 M?>BKH.KB\HMK<>]C;;Y9JBV/_.8H"45>6:G;#+Q5!DB\AO=:ABV_.P[)AD3C M-%M]GDG2]&+\'R9?++8&S7Z/Z?)%OCK,%^I\6#703-9@V:E@:.$%X(R;KLD' MBPIH UX%WH1QLOQ@D\X-/UE?3C//FI[6#$8X"$"Y(*W3QFZ?MPR_7Y-U@QTXX E'Z6I"'"ZY:. LOF@"#]:R M:%$\(RG3*W)@.S)%&ANKR_0!B9ZY77W BAT0**)N/,EQLE^LT"R/RQ,;J\'@ 32Q_A.729SV5PZP;(^.#;YPB(Q[$X7 M@]XFT^%W^GURV)D!J9*7+;>3HO0HWI?[O)*N]\9F9=\N]/+0,IZX;%H26^:# M,AR4^/1BUY-3I6W\*,X M 2Z%W2SG:R5Z@M>F3SFU_OIH#'O8LM ]UKG41D, M]T\FJTS%Q_6AMT[(=]@R<]FREWZ8I&:-NQ2?WB?D)#_-:[%M!R$3>]GTN(H7 M^X-X8M=>KF;Y^ITP>K*7*FF:OFR:E-LQ M_MX\;);*.M=1X]G8TW&;QZ:YRZ;]SG8XD4I*A8]-&YW4:,\)W6-GG A2JC,K M#.[&9K?$MQKU3JTMUX>5^QVT#%#J<1)/]@?]0XVU:]OIPW0ZJRXM;!F@U."@ M+-+E_=. W2Q:%69(_5*VT\5 0[H?9#K0,4JJW;7)" M=C;>#&J#Q*)O5/JE=A)?&J34?AA; Q[:2^PA;M2+XE.YTRN0I@%*;9[6>FI0 M/-SSMI =#9+L-+U,D0$$*#5+))<=M3Z^7]:2K&$NEZUZ!>0_%:14O;8II^IR M0^.YSLPZ 'G+L3$>21IHF4G7MK-.=IY8IF/%@S9_L+:M$K8,T'0&P*-7*Y;5 M 7UXG(PP[-V MUW.8"(C>D^ M/:AMU(;9+G<[F2R^-$C3AZJ=%6M6:\R/.@LEG^^O!;E2HX7TR^U^/!'0N3$Y:W& QZ_PA&I%G=F:Y+ M-.[IQBE(7!Q0*[P!NE$P6$H=A4J[1U[4[Q:=="W":41+3I:/X-GW1IUN@4[! M-H%0IID7P>^CT6I2P"/,]N.*O%H);1W&TSN8EKRJJZ)3MI,=)^:K3*%8Y7O' MI_*#LJCWN,3NI\%8Q:'>5:AUSV6[\\.VWQBL*JT!M]RT\ZUD_LNW=\:;OT:@ MQ7@RK\8*K0XH$]T6$V+O;K']>;3Z(H$,,2\]'&8 ;BKW[+#:E5OKI^$.L&CV M-G6E9.GC0?SKI*ZK P$MT_&.JYI'TM+#JBGF[?OE9CFO"#US,M([[R1STE*J M3@50;4NNW\BQVUS"MBN[4,C<<^119UQ]/2_O'MB8*2T;]QNS;[=?RLO_ GGZ M["R?':@]EK?GJYW0ZRKK277VY5ON-0)WZ0Y]-YZ,L1+X@P02P)]7#-%>86@> MM2T)4V %WX1#-V4&: @>/[7M+5@G5)3 O!P3>MZSG->UY4Z!G(4$NUR-3GT M=T61.\Y=""R9+]#D!7\4#\/0( W8'=V9%-##G?6-8\*"%DS1).B6!,5?#/.9 M\&%&"$K"^+IF*B92VB'O5$$^>R9&-!25D!1LIU M$$[<\UT%E#,]?7.) @N'AK#0C2(6A?0Q=A $@\?Y-J>7%_?\8#-:JLW5*)UX MX-\+#'YXK2BI?/6*/&CA-(D;KTWYJ_O!/TH\JM+I!RL+"!,U=YRT_D*P+=W] M@A9?D&_.:C1\M==.FV"UA66X W,G1JGP@[OID[>9Q$NU_KYR"=_[,6(Z!?%V MJ>;^'<,R\Z^TI 4KHKY;2>*4^Y".W:;"!%"U;9=,29,'(FTF;AY4PJ6C.A MY$SF-AMQ)I2#D38;-P9IAY4RDS<++F0B;A9,S$39[9\[\^#4'S['HN[4:'WU"RHNTRKZ" M5N^J[3]17I &@2KT-R7*#]4C?#(%(BGX=2D0=16__+\OV2\_22 N38[V^<1[ M?+(_HUR>W\WQY1LIJ:3G3238&_H!*R&]O1:12$4B]3J1(D"/N(_'X&/'( MW29?C*F$3SQ\ER%$0A+ID.M"TI2M2#@BX8@,S*>+1V1@(B'Y W5(P,!$/GT( MU\55MO\XDVG\)OCO&ZD%ZKW_20&P@2E/;96I*U/Y=U&='R4B;Z4D_R1QR=.S M+R-1>1_0]8>)"AYS3TZPB.0E4BV1:HE$)1*5<(M*9(4B>8E42T"U_%RDX'0[ MV-?_%$59GDX_.7A [MX@QX.9;[8,0C?)C[](.A,:;G]/\'_ZJ#G?!;QN*YI@LVMU-?,*WE[$!NREQ^4[L*" .B<>) MZL@D(]41J8Y(=;SMU15OHCH*E69]-]]G'I:CX>.JK&SS.[/XH4[,5(AMI[NI M_, +U<)DD-W/']:Y&2J/9.3%1%Y,Y,5$RN,U7@Q7/*8>IOV!Q=<>"H5NSUS= MV4_D*L ,8I%XBHW4281%(BSR5ZN3ZVX,OYL,YYN[%LNOAMJ\4.RIAZ6) 1". M1=612+Z$1'['@FWOBGEZ$(ZNF7-E_7;IU[]-]WW2T2>A3*RZHM7U2Y:SSC?I M9.))MZJC07&TLR3>?LRN\,;&=\JQ-K1^,6]QMK;<5"8)8]&:*[HP&Z=(CI5] MYQSKW[8&'/O_>44WH:2* QW"1I7/QA'OKVIR>NQ@E"J"QBO&L5Z5!]UD:[C[ MR/!&8CIYJ@X>R]U!>AJW"HND\:!L=J!]4E^^Y>+I]W-&_K8UY@0RPK;&/AV3 M9,-(E4CS?$9L9)GA=G5S:\R6RF+4X]5JLY^\ZX NRG[YELZ\8YSU;UMU$0J* M4-!?J8NN!U9R]>F=F3*+59;;/*XVTF \KG?0 R/YX40F4CR1XHD4SV\:QGU) M\53$N^-9ZR^HT7WDP!IO'33*SOXMI:3&/JB<9 M^5^1_Q7Y7Y'J^3C_JU..V6TEQHX'=M4J;9ZRRT7&P%@0YJ;3J4@913@HPD&1 M,GI[!RR=-':']>/TN%2JQ\HCRQ6-T9"DP#"SG7ZI).9/V%[L2A 3YTB/?=T" MHD=E/W_B-N-/-SR11+Q<"'9N?A)@?B3=!OT5$JO\KI5BX9O[9]O>4_"S-*WP MVORIT%RNQ/)L/%4D=:_//C)6D#RJ9;9=;ZO+U3&Q+L=JB:6HY<=I3-6F;I+Q M: /OCF_C]V3@6GQSOV4,GUV[V]\JN?#\#%4+V MT.;8:"-C_1% MI"\B?1&6^.!F;DF]VOVTRU;*^4V^5YQG+>Y#\YFQM)2S%VPU-U"*LT*[4+&; MG78'-48R]T8*@#K)%-LN^ M8R(RTB$1ZO@]YOXWZI#K7DKGN,P+@J17!K9N##=/Y<7A\8CZ@NZ+3;/?W1?[ M;TN /KX%=MF]/^L6MFDIT\,+:][WLO6/7U1T,9&?WF/96UO\(+>9S98CLS<8 MCT:'>JJ8OV1929Y8)<445=VT#;D/[RZHNKAT.#09LP]SK113[S:LW,W7:XM6 M<\6-.E2J%,T&BV"]T&Z,S>)?&!DXOX9>+<.6WUVG9)TEE/66T0M'7Q.&@CCK ME)8Q45=UXZNK&BY_Q2Z_@G*1#?P4^)ET\I74/$"OS5:?9](,\C@>_X0"^<9$*+X#6/-9::HKT \ M#PP(#DQ=8A3+9/+.9U! 3%O M*PC:DOEO_(2DX=A_+IN2K^/__ \#REZ<,S !VA<^(N_7"J4V(T&?C#ZE0[SL MS=*9AG!@$C %F$B2C!/:V*+S'K *AK[#V<+;Y%NFI4%[ WI+DP<2YS,GFY]Q MYAJ\%W_H =/AC80*I#__?"Y_].;C/'PYV%NF?^V5*UU2IHHS7O<9[U=+OV& M3\!+D),;F!LA/6FKD-&:%OXNXA0]TD,?-LZC!<950QEA0&4+&FG417+^MSN% M5KGK#7NMVN:/6J(UO'_<$1L=LIVOES77@FB[JGV\CY[ MI2]DVF5!)(KSK"JF*V]U=0LC/V_CU,6XK89 '[00.+NSQQU2>)3P"($M>_K4 M\'ZI@O#M>SMAC;\XKU^D-_8T7NR:RZ+6!_M8GI2[L;S?<+[&;J(2KFHF:$=D M;4$P%;.W-F1!:FG^\<<]"QKCJ()N"H8Q;M34;44QV/1 6:PRJ7QU)-ZW\E^^ M 2P.6,]_D84 * >$ 'G,F#; )-/4#;(.&!6,MBW,9"J2EX)ZPPBFJP5N0,Q$ MU99 .Z%D3755I>MI*@L64-:$QBL=_M;A9\/\R@B,"@]B"U%?K12+2#$LW_]Z M%XSC29)ID'=89 (]4=: H#J1!&&V']=E"]:*V9K2J?*H7>26!JHC$4>]<2%- M/RV.#^FJ+L0.LX>!+,V?A@E=6TY3Y^'@U"L$I@Y:WAVSUY.P5U;VJN JMJ( M(!F^]X0F[9,9OAS3A'NK$%O&K'GO*7.LUNN'SI=O*?8V6++%@"E2D3.4X\A" M 12.,U]&U0'R$+&"_XA@#"5LZXB!H\,%E X3)TA: XC$ M.^N:SC*E':S<<#H8[0?K1FRQ+"RXW:N9"_)XE;%% K5F0**J)H)6,.6\1[\? MXW;M^)0K*QMY-Y!Y)36*E1L;]K U2\P.T;T V3A2P26RJ",R8H&E*5=FTZ M&L(QD"NPM3!3G;%-^<*^"A3TDK?HH%.I0F!$JEL43^V9C&*: "B9R>$$$U!@ M?(:88*G,/R;I!H:#/Z&\P:(^P-MMPR2(8&*;0$?31'4ER5/X++FM@[;W1$RT MH]?:G*L]%_F:."-'!S(B*='$48 Z69DW9*I@4&!6N#+D+9D@# V&(]BJ15>" M2X2IPVEL@. *X1QY3B-KZ/;3\"%@PKSEX,$$>PT920J,4K>8N;#%(1].C(?I MVI:)2Q6E@(#F9SAPI^^ 0,;-B>USP9,&E6IH)(TG,J2AA:669WV\GP)Y;COE M"RJ#6A9W+3N:0FUMGV;;8>'(*PF6ZR>,HX,%;9Q-:>@3*(WP8C_)[J%X)B 'PP[?5:-RP7A>-#6UA,,F'7 M57?VWY*R_?:_\(\KS:(J"P9&=^:.W'F1&I0_)Z[%LO_ZC&..N*2OPIOXJJ#OA8+IQ\=QM M,NZ6U7_U(E4)4G#,WG*Y?S&^STBA 'E7PC[F(Z(3X(JI\A0F3Q]SOS,H19PO M=9-HQ:_T *^MC&\_>R_AE:6O/Y!1OQY>?5'ZSBEUC0 @S([ZIR[HBT$2)_@1 M"L\^WRXZ*E@&)641%.X>T8;#Q/7NF'01-;N!/L>9Q D;^/,@YNK7BM,LYKVK:LW!OKY69\F#_&M13X;MG;[+.Z^//@P(50^0$@6NRU*DLS)UZQPJTL/D@CD"@P M0B:3.-[DRZD7? !:@.=)\( CAH@#/+@'[#?115!, C8,>6,K&,<@*$J$/^A: M!=P%:UN&83L>J"B8<_Q* 8T@@:P: *UFFC)51 '?IF%;BCUA^"IZJ_#?(-:% MX<&,9.NZ5^P.!QUA6 -^=(1K23W0^(O[6F?2Q/?Q,*+ET -%A)P;%Y,U&ER# MGV0!/"CGMPVL+Q S_/E5/CH%W3\(3LD\<,XG6/L:O'ISX2@2ZKA1.9B+ CTR M5+\B:)10T("9,&N-X,:)#+V=PEB "X4]AFZ+!H4'_M9'4KQU8@_W/@I8#A;C*F-2P,'8B9)R1P00YY_Z4Z.X>^J-N( MF "/%6"I?(JSG0C\3'S2SZ5;#RCY;G_>K^U',NMN!^QQXI[2(-6.Q]KC$KNQ' M5>"F@[O9 $\Y#;;LZX)1''6K Z$UZ MF>JVFMH1RUX#+:OYXG%PG-4';.V^6T@\EEOWK)@?9X(MQ<':L-*YN;W<- N* M5!C?67PE/\Y>>:V#GB?;OG/,I>C$7\Z74ST(; MFM/FL/S$*ME^X?XX5:WD^$KJYWJ[3TG]!&W4)Z9^,E[JI]AJ-*I]DN]Y[W1/ MR A1QW"5&:8<5_]*-$DEHR06STNI,#H8!H$@9>=G8A6=$-84((3,D#*$&YJ3 MPH9@EK887K9-DIS"1\ 5G,V9DBP2S E6!&T)VA87#J!U7!-#9)NGX)=K8YQ8 M!PR%X% T,H[-14@$:XHB:J#3%@9D^K%\#\"]8WY,V=>-,QN,V$W@>Q@6R09 M3Q-#%]!%$%PK95*+9MH3][VZ05#46>>G5V,X0%4 !)\'!Q$;:CKT"/8<<0]% M0+(SDENFJ6M>(B] =0_!^)$;=4-H/!D:0-\(^S +!C_.4?; B<:!8@9,)CK( MV3I]RPR(&^22G_9R;M@!9>H3D":2TP3(L@92K0T<&88Q*191-%":. O*S96 M:(5.2]1-I'\9NC^7'(WTB,XF_8%")EQ2Y"\$$D )F-<-D&CO)%>W3@((1^% M51!3C*>+[O@(SO&>9ER'%7_2)R@:U)D#0 1K8T6>(JZ)H"+A"8G,T#@5K7,! M8$A4(J9/8QCR=;P(@OU,4T'NGXW?6)KD/'&D$> 6<=)$GV9(V8*1XC(SCSUK2UQJ[[.D]*#WS^^J;- M#V-W;.J1/93&F61W$AOI@]F7;SIY@"Q&\LAEW!-7'_P8]OGVJS;@!_;ZO":0=,XE,OO6= M0KJK4:3M41@51A4UMRRNEYF&6&C<)6O HN25"H!31!\(]MZAN1^H+WQ?RBS, M.VF1KN;NV,K#/5>MJ?HQL264>3Z^AC#"1,4%-E0]A-8PHG+5<$4X6.C,YB%_ M8(A80K0S&#:,H)D/+LJXL1/C O<_:^TDU M^28"QU-B7!6T6&*?G:8GNQD;:\VWU$HCS$X@; M&YO,>*6GRAS/I1]&;;.D96.]CR"0:225_Y^]]VQ.75V*CU>:=_'DQ4\&D7DYH[*KO MH(J'BE\8 ]%6WQ"KN()S.MF!9039%!AY;W:1%#H807(NXCP CK:1(3D(L/;2 MZ43Z?F,"73B[>,--@I-NQ!M/O_%5B6VA KD6(T#.X60\Z'<=;I;GS)#4$O&WI[@>D@ !_LE=GX+E9XXS950PDT^$T*5VP#'=J[M(( M'=[6'2Z5""=?:D;I.?/W/!YY0R,H.2[9W-\I=+'H-ZG+0$!1KY9#.#4K^,7N M4'X(9<.VP+5K(SYV#657X/+)BUG,*]AEPQ1:/C3R_W[%?KW%TN"57['3;>I=)8RO'O[]^O.$8 I#+"GS_6%>K%T,U-UIONQ+:&!5P#1S25Z=Z;.K#IW*QE:WW MJM&LU*Z.*OU:!-4^17_]B=PQL9<:Y'U(HUU=?<7/IK)^7J.,G[CJU[S*0'U= M0'WE;5"'\^GB\M,:SDR?4%Y/56O&U^7>B)U7M(S1J(RS>;/%18GRBL;/V$?? MO^Y8XG9=L&NIN( 0@1_G'T6(/+?N4C^A_Y)6O]!I#O(SMB$U.4OG:]-R9XEF MC/0?_2*"[/=TWI*!\Q8X;X'S]CUT%BHK.*&U:JTN*#-5[I&MUME&*S%Z2#87 M"/4ZBL!G7^J7>C,^6RKPV0*?+?#9;EO_%73[5,8M,I(3PQ+7SM$\R*A#OFBR MN3RZFX?47R1Z6RY;=PP,@'LT!([;Y]2;WT B_:'K_$:5FU-\N+W62TJOJV=! MDY?%#!+R%]1>EUEEE]F-.:9!OUT?\/+&3%!++HG47NK%+ODWX/6=!+P\J"H, M7,+ )0QM1GQ6*N2P%4,7,7 5;Q-A=C31-D4T-T[(+(KU$3Y MH,_73COVV%IYM)A,\SU9K=L1FYL^2BIJ(P.U8Y0^>Z#L!R/YO,?8/+PZ'CB/ M@?,8.(_?75<^HR5/:,,5Q5"+QVEOUEMG\V9!Z#?][*Z;GDM; Y?61 M<^TWJOPT-9XC&N&$-E<[@(T]&4556V_W=TU[K[]"%5+Z_ M=M9?+KO_8 R_[L:-_];^T_3_3E&<, &)9E61!URGH3!ZYV$&F'4TT9100UN4 MW[B+Q)COC.+X1K&_TE11E\FCYAVG>F^0%I?$ *#6DE V>0EX._.A=B]'?W=S M7*1%(&IY_4+_CK?RIH<;D87\+=H&NI=L NUE=NP[L\N0R9&;8>X?4>^ZB*>A M2WHT:^?&&JCU>'.Y-@:K8:[RM/SU)YYP&@0=]:U#!#@WS-W[Q?7CTGI GKRS M=0@ZK@D,P2N\>P!R_6ZN8QOV8-P#E;1>Z"=4,7TO0=$-)X\!Y Y[WKS @*?; MIW\%"[[>@>Y+6+ 6[2\SS2:?9JE,[C%:$\!F4D0H:ZFO9\'W-.7[>A;3?;8>Q9ZNB/3T9FE4T;=&)6J\3C\XU2 ;C_VK%O]%(?RIN#TXH&<%KD MN0&U=V$O3TP@?Z35=$.R9O(7><3!ST <$B,L034"M\$GXCR-Z@GGZKB MUF_X2ZB).+Z,[%HP;.Y,I^6?J /2@-Q%MH1/VS6WACX'-)(.Q"?!@%ACE!]D M2X_ACYYI^ZQO&SV'0VU$KL-6MC()-L7G*.4K:WRA;M"H7+6#%HZ]A8] MR'RIT6HO8LZ*\^BJH,RK*9 ;MXP(]$)/NU)?T QZ9WF[@X54O+>G#+MNIF?E M,JLN\_K[FT%_F#"3![XPZ17,JF+3&3&GQAAM68,VF'FA!^JAJWFR%[EV"H( MZSF"SW!"8@W46MG)LXX,?>KVU7RFFZ9YP=ZB_@.-:7K03K(Z FY#)"["6)*' MW.4O.)DR:8E*,NHG(8@U E/G:C\,C(?@1!"T\@'PB(/)LH6WPP >^%L(H0GA MK1E[4#!#'3?MNL/8RKP+O8R )&,X0XUH.ZR!A[IM(5,O3S&= MMCLAHAU#.XUFXK!-:*G;JHAXA5_P,C'N&(9&UX"%4BXB/X6N,+;M#MPV J7! MIEXWD0;:/L"S3@)< M\Q1 \\ +O#XTE_>0+/0!X$=PK^%7_@6F_L!IQ@9?1L M7G9C;20;#I[)#I:&S!(CA4]GD'>!AYCP:W!J4-.;IQ.!U=P6:7Y M+OC59Q.RN[7OH%5/ IYK)N03$SJ!XI89O*!0NTP%@7?$[A&OJEN(1H\8.; 8 M_ S2,Q%8T>&K0N0]K@ A5@BP?3UU8,"8IU8 MA<\VLW140F'X">CKH0.W&GI^]TZCCP^QS=KN A% 0S85TXN,N<28ITBI>[), M'J_!%0'1 ZM]A].?B,E=,"V$GF6Y&PVMSTY%.*+G&@G?X%CL(X.))'YR3 C\ MS:.=MRKP#K$O6A6FBQM&(,0* J6V!6J]9$FC8E]@6[D> M)139>,ZL5;G>QX%63DVHQJ]0!WGH86.\R),N=DFD)V+1F)LT([%I+F)&Z'8) MQQXO -'LX\AO'2<10)=;)_$T&,&I(R\XX['R2!2@^H2:7H9.LKCM9;]3J47*&D//8,M5WB 20>XZP>/!J043^@LI88;^AW0?Q)_A3R+__'U1H?*95]XG M^DKVE__MU282T( !5>':52?FS@VEK/4,N#I7=@!MEKJAN&9TFVTX E<\P$?W M/(. 08I@!!P'99L!NMLJ:(Q;C+ +0\X+(4G,L3QS< ,1K-O6$A H8N@ K6>H M; +YKK9&XL,WE!5%XQ6]J0V3"[::K5.%R=/T,7\*F M'=U8!="@E/6J/JU%:WUETI*NL01K"7=Q38V0277/ZO86A//++F >,M2(55"8 MY64=#,,$0RQ+%FR5WQKG<"@+2+SF>'L$-_LYWV\7+.Z\!^>S$ J#$ 8F25(@ M%\)Y".9MC#7IJ+F]B2'>@_X,B061;V@AEL81K+N8??]_[/@=*%4'?4@H4>(. MT-/6MFA26UXFKKR+7\J;<-']_;_A),A65V\1%W=OV.%I8^&%"\.+PNB/<$J* M!A=/_*H]S,LM'";QGK8TQ\>$J'@9)1!1;+S+UD"_:BRC$(9,:6M2L!N&H<2W M\W3P5/;7>;>/OL6;;CX'*PY$%C1Q:'RVRH:(/QRUQE_U%MWM_!<\S<-ZZ[>A ML)C;Q!%:]LYHN@]VXC.B<1QELT5BA\MV@N80.1/=OM2#(+K%?+"D7BUQN,$2$83<_C=T$; V-L\AGZ9C:5X9].]'RI,TZ 51:76 M:CSSD_&K4UO\ZGNVF+D/Y1KU;KE>9.NY,GMQ'.MSYN".DVQC?H%XGP1N3LZ% MI'$ARR"-(0" _@;%QWFX/H,1)]'P.YC5NYW6VDOE['(R%O$YH="0? H*NW&: M8GO'PO-VSWM)$H6DB1VA@D*)I\WO]"XO0MV$4/I&(VP+7E0,)[)>IQ,I7Y5K M/FG6WXWL<' @?F&=@@I:5!S_-$:(H0!.R^A:FP09Z/S?[(SAOF418[AWYH^U MC@/UDWIK6[J=!NY*I7- M=-@\U%"U)EOO9+KE1CWD)PW5T$(5Z"2%4-X(>$>J@X:$F-/>AO]"'3IB*_X8^=8/4K:OAHH8[#WIC8L1$ M[&QRFT1!4@S0DGJR4>U,DTQ]65HO3^5&$AP4)S2+;=H"S:8.Y6B;$$$?H!%. M]H+)F?P2%L#5+U'TW>0BX\3 M&H12SWGQ IX4V60"7.^>TV"[@-E_[]Q_^\VA#O.AWB6YYP99-,(.@DR1T[ YZ\[S&,08"G1! 726]34 CKNX^YX!9BHO M.%S(T)'(\UP'_^;ENG].'Y78UEA' 'QH1G@!SJ0/SUBVST,&$)\@Z$B&H)<: M26,9BL"IZA) M+L[6*S+[KMG($.*B Q-( [;H'<+#.=8PG'6G77LEF>&G:5< ML[P;@SL"'!V:>\*_798IPZGP!J&;;AZ'$ELJA$,90FO$/&YY!V3@.0R(9'RP M0'B3J!H2;4+KA:*J@S\@ J/V)M#$6N1\RM8\O^/1A)-06 J?+9",C(D#5,3[ M.$;#6X\7(>J"C2RE<\,TM(0L8@%M5Q$#8Q48D8-]S/"M6D// 0"N3U7WI^K\ M2?3(A&>#B3^U!1V'3A"*FV:XX@3-"GI@Z+S>0FD=Z#8YG GW1P%N^X+=X+=( MO>.@W68E7RRHY/NYE7P\-IM< M#.7N6.TE,]"?/QJ9Z::3X_[,%GK 3&RD5K0G5)@E')D^'+FR.=O.M 2:M=[< M-I\,Q:SDYWT)CCQZ>S^I:E:%SIELOY!=UH'8ZRY7$HQ*CMZ^646C=;55Z"F\ M*3YQ3"HVLXNH0?[1VT6-7:Z*0GO<2PA10U":B?9DF($CC]XNU=:*/J>T5*]O M/TS4-5\J:$]++LXQ1VL7-XE5L["(LO/40I4GA9QR_X!&'LWSH.-"=HF<>S;,2[PS[8ZJ74ZBA M5%*&]WPN(Z,^L_01ARAS[G'82F_8N65FF?1F0BT'2SCR:)X@T^ZH0T"5>]!A ME*+55"D(QJ708TAC]Y>-J?TBD_FU[W&?40)6+3%)VMZ"PT]IGUN03%)J957BIVUD8D8V0G?Q0U CEFTR ]E*3&PV*IF M9DK%53Z?>L"WRX\G,*ML:+/*/2KR0@=U+=MN+R@)#3V: &?.LID*F"9IWLBS MUJJ?*X]Z>.C1! :S]OWP\2DILWU[/(Q7J].68<*AT>,)M ?YXE-I-*FR#8M- M#FJUZ@/=6Z*A1Q,8#UBJ4V?Z2Z5:U\4-F[LO=L?XJ4<3>$RN6X\]JESN,5 % ML_%\OY^EX5-CQQ-H]-6O-R MK]>;5+HG==4Z,9BV)\GZ4@&YPH/6%)OF8S]S2E?Q3"LBMNQL6FF G-IC);5S0CA2+2[GNU20F4WV,23:) Y'-3)'.61\%CTJ3-0:]CWTPDS56D;R)U" M-"GEV[/,>VY[XD013J=XT[L9=)Y%')T350&#N[%0!WAP&M ;9!+3X>?<.I M^N-&V[2>6B-H=#+1\:H8%_EDYRK]1O3#N@#*&LLDMX4S MZUAA;HL!'5SVGD MCTZ$/9(-&)*_8=G]0LM.I&NC&F?;,<:[6*D )_(GR2X;SWOWD\LG,US_D6-(YNG=R@>:WWCOZ'3NW.Z%[6>%.%Y$%/;G!PF.Y0L>C7:G7R74?!7428\L;Z=>?5.R.2;Y]=W>' MRFA[G2J4YS/^/^K"$.%LQV?8GOM=^"BX(XR!:*O X88C=O+Z,1E2P;WNH@T\ M/@VNS '7+E"2RA:SE4>:+CY-2]GE5YWOODO]ATQ[.D7EL9 _]ZRU4Z2^?B;5 M[A;GOGI;\R[$(U?3N3NS9P^/.H-X4O6DK.D.UUB1!L.H%@JH^C+TER-1^#Q$ MMTVHQGN!R1;CS_92^I[FH,Y8W;I^60ZG";G!);A3LU=&J'#VQH4QI+A MZ(LHC9X,N^?YJ,1P!%G5I9O[.X6:H_TFIR H7GGU\,$Y(<(O=H?R0Z@F;0M< M^R3B8^4]N^.D3W<8I./!SOAQ9Y+A1#K8&3_N3" S?MV92#@=[(P_=R8:CD:" MK?'CU@3JS*\[$XF$8ZE@:_RX-8'0^'5G(KA==K S_MN95#CR(NI,L#.?W)EW MXD:\FI:Y(AE2[R##117YE6EP=%[P)41Y+??PU875/B73C?..H*OHP__[Q?SZ MJ"V.AYE$P$@_G9$N%/U\FBJIC_#.\T>YO_ZX?=ZWAZT!6UQ6O] _1[D$SET@ M0(%S%]CDZ]KD5PY8 MYYVVE'0*= QF[([W5PC0*W]R;Z!NZP8!9@LX(W#-3K$(OC(?RO-6X)WY7SA.[OX>"?[? M_T02]#_'_Y[-S7+N"CO5K9'9*H3O_X?<%@+?B?=) XGOHAG/M/EG\Y-NB1.: MJ.OP#V.$3WE!M[3Y",*:T.FZ)(PJ\;!!"/: &X^?PC':= MMW__CR ,!I=V5EJ[%!3[T(%,#0PWB*!6XR>C?M]M^QSNT,^6)^'TW%+%6_C MH.A>>_B+]1:+<%&G0<]\;(F=:F74IHN%S#S3R8U3%K./@1K]BB9A3L\G#Y>3 MMF';[F#17]N>IFMQLEJL?A413U@&=0 +A8[!AFY7?'X4-OZ M,]3X^8X0_SI?79X?UG8V'9&7$:8K 6HF6H)]*)=3]>P@J8"AT,R6[ ;+4)G/ M:@GF.DK"/>%V$JMN7A7'!X>-!:'JN.\:G<)JLM1H+DXVJ-5]_->? M6#2D:F'PR,HVQ0#JL:"RR,J> M:)>,PI.S]4I^E?FWQ_J>-#**E9@M^X\V Y!7V,LJ2+&\^N$6I(A13;BW,BF!Y,DLJ81&GKB=#@2 M><&[D5HC"GH@&^76G7:;Z[((Z@F%XQ>,Q7^:O%SI,E/Q#B M94D(_?7MXR:4(4'X4T"$+X;T)%X0*3_S(M1L^?Q$6#3C-A5.ZU*24ARQ0L3@ M-XM<$F'0PK H>AP6_1V(2G!&&9Q1WFQ Y:J*C\94;6,B;_J\/&/[F4'R<5W( M4[-'!!,+8ZH(](B8'W1R>;4PRP^4\&?DY0?*7)M'_'F^=ZWXS ^$\%7(YJ/X MK* ;(R 'AU??^'+-#XW,/GFBY3"^;>S\L!.A6Z+\F."$5$FAJWQWV&CQ3&Q6 M;G%I?*)UP)1$2" M:@$=:T7#J9>J70+-$!QK!;L?'&L%QUK?Z%CK\-8=QEPG9?-1^H[\<-NW[WQT MRK4?:T5AK"7J-@)%]V.P]57W^';>5GY49+7Q(%M7ID)!XD:RJ*YTR=?W^+A% MK\-G9[I-3R>LE%:.HR:^QT4^NY9> M*8M"0E=RG<'TH9);S7*;%M(=Z"9?+!Q-_"#=$=SD>^--OC=F*+[!33XIVN[& M>D\CG:8ZS4@BV\C)K86$^)]AI!?$-G?B(-PZM@S",7]'8I[&/W9 M4/RI*RZ,Y3S=[C68 2UVJLH#"Z#X1T@HSJ2#LXW@U#,X]?1_1.T1]G=&U(O. MBIXNQZ4,"Q()9@R87I.OMI *(!%U*KC*>\O'F[<25#\O ,\%U9&="(S7=F-H M)E=LKE#+C[1*L5:=9) (D*":9BX65/\X"?#!$>_YPF4?"_(WLH$7BXV?UPEO MBHW[ML!%#%$3>[G**!^I,KE.>X8MHQ,;QU)GB8V?XS%?A,O/].J/1&:WTJS_ M.Q#A2CUS_$6$@!-\$D5>GPA7"D']185 'JX84OF+"@$K^"2VN#H1KA287(0( M/ZB6E F.Z8-:TNL>8#%<=["0BO?VE&'7S?2L7&;595[W-R8$UVRK]6J%J2FY M09?I4H7-<,1+7"3JU))&7PK1 TD+:DF#6M)W9OW>HB:^1RUI-))KS\!2+RIK M6\Q70+4GEJ<9I#O(R=>/ZJT2U)*^!Q5B)PS&/,E-]7B!89G$8[]IYK44U?D> MM:3Z?# 8Q;A>M-?(@=@TR[6MRA#;3G3LE0C3L:"6-*@E#6I)_68Y_5I+2K$+ MJ_F4F<5H>]J+";S9DNXK+:1/W%K2F\*%>&,MZ?DB^QMQ$():TN\7BK^EEG1> MS>1:N<;# \M/6QEKK-O)L0G=Z1@)Q2/I"U[K_'G.P_5/ 8-:4I_Y!=>O):T^ MV%/SH5%**HU[G6=JR68YT<$JP*DEO5D$B'.'SSZ6B&\;*W^F1+0\3.?-@:#0 M/:8F2]R@^O2PR$J(LTF):#PH$;VE8]R@1-1?ILVO):+*ICCM=GA^WF-&S<'!_DL_> MJ LNS^43V[3DT=I=2C@8(^G>J(.)!W$,/BYUAC X 0_-P:FR&@B? I M. T0BM)W(50B?1>"L2 >NG38*\03_@J-(%^%%HBQ0C,X%_PF_&# "V-GAO#K M\,,9G ) F).A(5#U9>@O9U9X,;IMPE>8?__&Y,;,Y)+9RJ?L[A53U[Z$!>(5: M0D+],]--&3' ;P.H4+4LP,$SG50%?K$[E!^:NFI;P#5=-/WO:Q?9O*/&!BYN M^^]%'95@9ZZU,U#T7G1"@IT)9.:G[8RESUZ,/EY,2%UX6X[W L[68TMO=4_> M$$P%MO^2._/.X[?7?+$K4B'U#BKX.SV3>F/:\?C?,ZSN-<_A\H&=@&(>XX?M M^96I D-$]"'.RGPP?4=_O4R\1I[AWEM)) X7HHKPCV[:YW__,_QX-4*@#GV8 MK;X"#;Z=TCP2B(!5 IWYJLYT4N2!R@SD(%"9 :L$*O-UE8F/$T/H/#'0FH$H MG$EK7A&'\NP"@L_NS7WA\"^+G"DU$ML@*HM"*%PS<49E*4?[J'LK;^^ M+3FX"Q7 T+!Y8QV*D'J!V[UA=>;$I!_6]XZ:2:^Y\*YL9@!\&('*L2YVK2#" M19V.G?.Q)7:JE5&;+A8R\TPG-TY9S">O%7RB(A-* A$$NRWS#L:COJ'"F.DV? M6 E?E&Z^1UF\^U;".73%1^HT'\QZ7USEUFUVKO*52.VION9M":J/^*\_R3#S MTK6$[Q:@N5P2BC#XC9@^Z'C#_T[UUWL1/A;Q:[D,GT;W_M*+B9B[M\#>14,W M3WD/X\E]GH-RWV3E=:>TV#3N#2Z=X1+8>SC5W_YF4Q5?Y2G,#^U>W&3#\K!8%4Q%\WX1]\(FIX>%MZ8:7T,X]1+L[VJC)%&RNK4(GV)2Z) M'(1D_$@+_'V[,A+D%8*\PK?W*3ZM,#[B2Z@1J[;)IU1;*7+,@_BXUA*-QPS4 M(="72(039_?@!\_A64WPH0.+:7;QH#TD M4G1'8>Y3M53)FK1;4#E 9R(>3IP'>,RWB8F#(HF+HW3[;O67SU1\Y_Z+UZVF MN"S@]Y=44R0-*YV?<+-$KY@?-:,)L5.S"GE$E13!%F/(.MQ?:Q4 M7U13B'.J^,1DTAR;J%1CF2G5F4\,I#YP-47REC(=5TD%W&:<]OTJ,H+-_SE! M^M=OM/]"^L^0X<=$G3>,U!=$G?Z/.B\##? E4>=X/:3I?'W<8J>1-D]5J4S? M%)9<)(+"3B9Z"AX@"#N#L#,(.Z_??]D78>?$FM6FLV2CU;/3Y+5D*Q9AJR9LN"T,.:G4.RL$.Z?!T340QDU M/2;=DMW&RL"!CQ!#H@V_++VMA7)HR9NA?[W1KF)IR4]991SK3GI@\RA*S42O M5,U)YSYDCG\](@?8UKIVT1Z4W2W8%Y@$$9@Z;Q@<2 [SM%9N9.B.TIQ$-NL,L,WF5-MT(F9$1Y!%6_9I&9\))D F^+P39 M4@'6WE1P:VX\A].-NDU[. &"A6:J[]#-#F:,6G2#72/X@[]:8]X*+8$!0D@F M&?H?*/?PC11\"5CCCR+_P*]#W-V*5%:(804_#T3%L8[]YL'3+[<'UV M7O_ L<57,K<'=>X-'*V.&[-4?;8IP=6O^LEIMZ!44YE??Z+AZ+,0'4 M=?@Z-HH^LE$OM!? CX$$UXGR1YWQ=>.W&WL>_A7-XC?T)8&!?CKZ,W[);UR> M!=_:AFX-E'&D%3&\1 AQE1G:]B_P 6&0,D7,Q&OK$(]8Q40;Z,Z:*#T;SQIJ M2Q-H,L(B6 '!1AMLWH6F 5X6XWK/ IIP$CR'S,TU.$CT1]%V8!,H1M$L0K0 MD>=E+:3#[\#G36>JO@; #($[L(\./ I'KCF\ZNYZ!C(KV=Q^NN,>S#R8=]J=7@U3G"MK ME7:YT[J/*;S53B<'T_538WH:-PEU,X9;=S9MPJ+UX\'$\?"HC$A39R*J+*S8 M?KFCZI%:2GKL0=\"FWH* 3@=8IC [=#@MAHF:GCA*,)8!+-O88UT*T_TY:?S+\3N:D"-,Q^'X&_(> MI"2:%1^RX&J@7P0IZH8+KZ[H\L41IQF>EU9<<[=P[!.<8GZ'\QN3'DUO!GF* M[I@%:R,*ACXO[AG5I?Y]V-2+ 9) M@:^E=7&38.>,"?J2F=.L&!2#Q!VT*<^FM%[=H&=TWQW6EG!&I@#^X&U]!VM-V!H%UIS5IJO4X&FV7C.C_FKI*];*ZK/59,YFTVQG,,FF M[M-F/+^&OFXD?B'>,H &EC@$@C\8TOK]G-6^%? 9!A6H1)8G'CFG?'C$A$_\E W/-CUC8IX+ M,\3CB,0/01C^^[_VX":V-#X(43SK=-[-X,2V!(F,T2SX$7SS;UY=\FMS![\5 MB[@W2WYOC]BB^/X.'6;2_PYY?D84.B(O0@;S$'$/^*Y"\XM%41MT^ITX2FAS,;0)O&@2AAI'(VFZ*-*U 66P';V=,/.#*K-,9;CH\4A6 M:::SJA6=TI1:JZ=*Z=YCN='B,%SW_LCH)++)=N,]FI6KZ6:J7J_I@);@R*-G M+M:=I)T:ZCG%'G.91I):I-JI%A?GZ,.1<^II7+=4HZ%TM%5/+&85PQJBAE[' M:V\6-IU>)3]@;:.F=2UJ(D]+$I#)9<^?B;@RZ/&_+$-E.FP.9?M4O6QL,C D4?/ M+-6Y;#(GW:]8\+1*B F+%>&QW]$H7]>D[I M50NX]72^A7>#2/6:-Y-81CK5A44;-+7()^*;Z4)OC?P5>U$UYFG=Z-S76+M2 MX2*CAZ>-.6L_S-CQ?4^\OY_Z:V_%1(RBU&I48W-:07_4*\-6398^ M'Z:2],2UU?C;M_E[QZ3W6*U/+ 6WYI* S< M0@!2?P;G:QDV\(?K? )]'0;)\M2>>E#8GSGHDQT&W#/TCP+2GV@,V]-$ *=&;!*H#.?T9GG@JD/U.:MR<)G MU.8M 92?&Z?^AE@D0+._$)K]*X?*?FA[M$<33TN'2T'<^Z3;TV7ZYSE:TP?K M^R[M\7:HU9^Y:"^#GLYTRG9/Z32C%?VA.1BOU>77@]NR4S]](X'$=S^[];^O0[YS??9!OT]X M/N(HGTHJ#YRE5'/T4RR66\;X";HO##V?]//WT&Y#!J_BY=R*2^-CC7,->+W+ MJA-_N#/[VN0C/DT\V:;D9)5BE&DV7EB4E$']TVF!W_3Z5>[+*1]BSC_C,S4?4_G";/SPR#96 M#_-YVBR8W:<,U$[(9XJ$Z=@/RP-MH:*#*/2[UAD$WI%_O*.M.+W@("7%3H^3 M)T),R:5:[;3\((WL$>K6!AVDV#$4U?D/KI)BN'U,SM M.N5!2.W_D/JY/M=O\VMS&S$Z3O:RO#(UHR4Z76CGH^/O&5*O1B5CI=73PYY, MT0F^W&T.'F(20E6!,3633 4Q=1!3!S'U66/J2^N>&XBI*]EZR9YW,Z!'V?$G MSE[.F:#_KIZ,_X);]Q M;M+I/A+:;SSB$T 8#[@*07+#V"\$244GS@Q&9GD&WP7!K!AHU0C1A3>=OPD> M=RH$5NAG@##@>/AW@T>3Q>1#0'(R?!\4:P(2 XPI?CWZ!3X3OG.F$W@9%Q^. M=1[FSA7WV8:OMG3GU61@: G@Q/[UQD :.[3Y*:N,8]U)#VP>1:F9Z)6J.>G, MH']4_-/>Z=9?3'A0G?AH?=U1VQNZ5S7,^U&LI5#J/<+["Q_?XPY!1E,1,="N M7II"C)="#&?,D]Q4CQ<8EDD\]IMF7DM1G2^A4*8M]53I7@7L7)R5V_4H7Z4: MF5]_Z/!QA>&60F\&+\*T))"$B&!#XZ3S*YN\:KW M[SG=M.JZ]03@E 5=TJ B$T]NF*)UFQI(#4=L,99\J(TX(9^O0I9.A8]+TK<; M)B,:&ML'[^LA ;[:JR^\Z%5[NL,:\]8>M"328 )4-O!+6V7FZBP-4C]T?JPS MSZY0)A!^B[:! 9,H'W9MI""W8)N.!^A<1'/#L4V#P.XRD63EC-"*=4TN%DE M"T6*2,L:\(9Y"*L5]I/EV^XN' MI#.#*,#@2K";Z,_8OX)V28V6*&L MR@L*U1'&NHH U?!70E 9".C/4UT$:CCDG<<0J#)8 (?_D'&=\9!CO6^$[ <, M04;VSP&Q"T'[:=JC$7PJ(*!L,T-'61KX@-!2ML9P(@;@35W#(%_$X-K0JH:@ MURR,,4L[Z\=+(:P.EZ_*([PF#2S5';CJWO+#H;9L*M0(;;>,VK$!)&"8DL@M M$ &RYS)">QW"U:F B!IZ"QF$U.N>1XDXG9)7%/$7?Y?P?[A5?L"T&2:YINDN*BN7AG1BT^U1JP&;4=J;=::[?(MV^-2]HVUR*F.:]I1L M-NLPQH..@$V06]^&F[C5$35D'-5U3M41]S'GAN^>O/"-I)K"H.-46H%^Y \4"L:QOKD*9#AB'BX@(,A]8R4$7$_WMP MQ(XTH4@CDOS'# DV=".A9/ :C)14* N2K?+&[BG$D22/AE9(L%7>D>W1OD L MM@N'*D&P=(-P^=[+IX0*(8&0 4L[V#[J:&I>@$77U[B&*?$9LZ0CM=;*IA1. M*4Y32ZMX3TVK#8DP"W6266;XR28"?!3 5LN(6,N\%$Y 17ANMVH/BWFLE;DS5] #ND./Y$T3SA4]%LR1 MI$ [,N1Q "\#TX7IML:R8:'IS'0X'..!\FOH2"%G"KX+:7[B.B'1@J_ ")V? MTX]=V4(@KV4-BRRDJ MW3>3(P@L,*^0'YSK;ELMF16^0PF+/O+ON&0P47EQ5S M%X%H=ST,\9CA<2#DZEWBEP_!6P_ 9[8!N)90:YDK0VXJQ4GMB7V8Q68CNG7F MP/TM!]I(B\)M0)UI(8':0+3QY,M:1I*@V?$>^C1&F(W(8=$V_*$8S_99PR6; M$:0:S2;LV'#3I)19/P,M9BH5/JZI_+>[';S[*E<;;!U7++U0_\#/'+#?OX@' M" WH%Y/[&TOU^R]_[SBB,7*<.]*W&@I*%^_'/M*WTXCN-%. ;F$Q7@UK#-UY MJ%"/)4#/01O*=/PXS;-EB7V(Y[^]&,_$'A S@*P"D5[T&;M#9R= [420]V.A MG9@3DV&>9D%BD%R[=H0TC:*=.Y0Z=%EX.QT7Q!G9(16_<4&4W;[3-=OM/^)" M47:"$W$:7'6XG!1UO_^A_>, M3%8RN\24S;+6AVCD:N3?=K.YAL2''GT]OJJ1-6YDC'L\4^-)V.0Z4V$5@L: MSZ.WBUHD;1UHCFHO5T M(J/TI?STH3>85XUTQAEW]BA\W^F$7: MYZWU1I>%%B"$JY18T/=S"/;"?GI"/8ZY"'L%X+\MSU014E^38#6 M@J2__$2C[HG15];8;(#+R3,AS'[]*AU;L/6-]3'\E"ZN"CS*VZ0FF\?4[)6 5" M![@6R[9T8[TW^'0Y-%]SD[T^O'(I"4L^%'T,?/KC^_B?E]0BWWJKB0P M'$05&!G3,;BKUBH"J<6)5!-Y_2(Z ME=*7OTGD;.DT0\/.1#]P,2 M[N!/]J(B3_&<,V87W\" +$T"+ #^')K MX,Z\>,LEV)E/[LQ[KU2^$L=\+R3ART0,E\$'WB?!2VC I$O%\;]'8-);(.7X M1X&4F60X'K\M+.4NSK#62(:5W658#QJ=G F9^S7]=F5Y.J+/9=K@!*KE9E7+ MQS':F6NW1#N[:B']AL^B-UX+\WX8H]PB&P\UJB-KSOK^2,T.*B7/37GT3TU$'Z MN82)N"%^8+CK:Y68#PEQ+JWB$]/QS;3*^QM$^$FK\%5U^B#G)E1/SE(S)KUZ MO!]-405P GJH=_0)]*KSB1-Q6_W YZE>+!;Y7IS+_IFQ\N?NOG7K?YJI?/5'^(3SON_33#\LO M'2( (^=OOT#Z+J0!"Q7SNQ7_..V$2Y2#K-/-9YW.!F@0I)Z^5>H)ZX&,)M[K M<(NW8U"CFJ,PL!#/C("!+J/B2ZVF"7U.7D278S'"1)!1"C)*WSNCY$?KLL5 M5MQUBG1QXU72!B6CJOH2M3)"M@)2$;[QA-%XC*X:M*T4$DI_WJHP758?6946 MET .)\,<-X,*,G1!ANXF,G1^U"&7\3 OKD.JJ9I=S'6E.9W(U=7.D)VMDQW4 M%0@ZGHG$Q?W.;RI,-YCP+.@&'*?MVI8X75$T2^;5(,%Y\PG.JSFG?J#$RZ=! MH;^^I?_Y2G;"$?@]HY+WR/Q+5D,H#Z?C>::]IJNI1Y1M+' MP(1_!UG.F\]R7LTS]0,EKJQ KI+>_(P"F5@-*48;DJ!TDHEH:4F!F3%I004" MW[*>Y.@]R'U^SN.\WKTO M7U+%=3_]1I9OEO>XBN]:U]%URKQD^!: =9TC.XIWX3*Q]HF^OV?[@);7,51_<]VL9<&=ITN1%' MRKHHJFJ_6>#74:1MH&,;/X9L"?*IMY)/_6?;3SNXCORU>=-]G1J%.E74;=0@ MUQ^VYK+WE?VW^&]F4;[(?]V_8W@JI=H42\VDV!NPC6DMO9!&[+"11[ 7J'HT M?4G+$2167TNL^D_(OO#NLO\6_\TTS!?YK*]J&&XC)//SGF3316:ACMMP4W,< MTC#XFC*3C 95IN]S6/^#^_#_.030_*ZH E^.\9(ZPGAQBQ".&_M\!M]E"0R ML*-#"'W4D'DU'"(E^0?_\0O2S97 DH 5:LP ^ILFA>YUTPS]A;B$H?^I-^[Q M3Y%__@[E>,-8(T'V$S9068.[C2[CZ8:%H$X@]PP="&)>A*H*\@^*Z/6I+(3D M*51/U@Z.N_%0SE.1=$@PH)@X")$8=CRG:Y(!(!EFJ Q;=,"[#5WC%[)APY$9 M6;P+M8$J@Q'!RV7==W2 8!L((SPC6*&_T!<=2N8R;;:#/MW2$P%?8OA;=%B& M>UK!^:O\$F%'UGA#&(>8)&9H&J&3RV8(*E1 (51@M$TJD&238)7CAR J0"TD M 4U8[Y:,@'=MU48K$10$VXM?"H5,M9'T&S0++T;8AL6#X43XP#C>C;3@QV,WX=^ M=S<+JCR5+1=3 MGJ""CFS+AHK)1M#H&[*%<+ $*6T$)0Y<@X&/15@(DLCFV/\&L&50 >J!ZM$ M]VLJE%L"U'TM"'GHD,#M-$%90SIDJRZVL.\Y,M-[/%$/OE')RM6X=336H4&5 M3TW$;J;$EC($[SV$@*K-0T.+! (00D$AE# 0.:;%ED!8]YW>,$><]_'$1 1> M#OT:]-"MI4'O=BQ,A==LM+_1"!')NQ!!3\:B-YL9^@HC7*OKT+_.[%1F3*XQ M@KL5Q1M&@^:F(J_L;XT[RP:&H"M_M_;NJTO MF?!L5ZJ>3&?F$Z;%G'\JSJ M,U3@@2$H2AYR<(#H,H>+8XXJ]V5+)JX# M7!]D./@R /"3H5T?C9 _,.4G4 FQS5S().H-@>_I$^PG086#4S#(J$.O2D-S MQA26!;Z4_'P<HIQF0^)(&%8H(USHDV353=IS<;<,WU._-Y52X& ^?PF\1+CVY M2PVNMHA+TI)F^6@_U^26RCV[6/[ZPX2/+WWOO"A/1P$?J,FKHQ>WB7=W?=.1 MV-(D@S7QB8S4@4\3)?IRR*OXJA;ZDHX+(P7B:I$KX%N1$E I@H:R$? G3 GL M[#A?#\$($7A"TCT]2QQ@8^O+X=G,#(!=X#UU?T*9FE_EXNZ$.#\JLMIXD*TK M4Z$@<2-95%>Z]"$A]BA23 7HVS;)PD]U9?"*IS244XS )CFZGVWF'F.Y5B?? M14YM(LP\[]0BREXV HAR\[$E=JJ549LN%C+S3","Q!A78 G8F,'06Q/3U#RN%+T+">155@8IY2;**K(LE#Q*O_ M_J\];*_ML7_-KPN.)JR9E)=K8!VY6')H:&1+V';5TVL M#]P.'+M[L9=LADQ[B&)(I"[=V O9)O.HN:%K\U%>GYQE'/ZUC'@& MIUA$9V0UC*E@04DGUS1PK "' AZ&$!,8.YNB3&P?;P#O7 @2/50-T/VPMIEO MDEE1L4.##('*+]T,N&2K3NZE6V>-<,\TYTU#&&3;,"0U2/2.PAYD5#Q9*C=YA*9O0'L$ MAX##Q&'Z#CY5 '"#T -,&!:@3=!T N%._N3$3&[ ZU#Z;D=FO&?.5_'>(3J@ M0TU\?C*#H3PY"3 QH77-R5F3M89#9722M/9XFRY)MO83S@>3$6\%.1R"2WUC MV.[)!!QD!IRC5Q.HQ&JCT1X:^^>4YQJJQ%L,,<+_@Q/IZ"K<.%8#AK0.-9T, MD%\5#$J.RMH"^DHXUB!G7/!'5>:)W<(),EY#XN.DGQ3(\U!TX9_(%XG PN^: M>.& +'R;^L+?0CR]/=_!F2K,M>Y@3QH(,M11681+)5F#$B-;_]]INJ-EH6-> M]%SOS#S),D% +JC#Q;;I)I.=Y4P!5!7B/_O!')JY)QAS(KM=1*?;QILB.K@P MEM_+YZ%$#9S4+C=QA_0;^M7 9Y$D'X=KUG?*%?X1>=XZ.:G=+7/[,I+K0>-' M<(H6R;ZY#W$LA#L6Q8."8-A$6>.CE#76:3*AE2'N'HF^)^(C!J@7"*5PSO H M0MY73V,>:28XA2DO:^0\QQQ[YPW9"W(B'N>[NSX M;CNQ,G-=KP\RVC>)FMT4)(NYNX:WK+R3BY/!8/KA7MHT^P;;H[3E4AEG1L9C M&@6#X>>!=3Y(Q;U(VY<[991$XZ6.H;G7LZ*A;'P/]CF13-K9;?;72ANTRNL"8 M>BC=4D8K,9L8E130HI(E1DI:JB*=*M-[&SE->44A'VX;Z!VD'#ZZ2UO"JY#2 M9OBJY7\GW+ /+BO_CK/=;5G@D;[?6D%D/?'E<\*@!ABI.%8XD4 RQ]CC=FI\ M4,V<\[/GN>C$#H<01\PG5SPK@%Y^Q./J((_$P;G6+5HMZW>+N8RO9W([! MA01U7=/=\A+R):=BN0:F0V!PTUR] .[CRI+F&YN\6H\:PB+]<T8^^K:D7!V1[G.9'9AWG/;S;T ME1+ZL_->_X$J+=J]?(/-E>C20V0Y3C?E:_">44]LIO>Z*M!S^VE /R;*JT2I MA7CO^5Y\7\5[C&O-43,.]UAH%R#M"B%-)] A^M!PN=-AP4,5^DP 9+J[BI@5 M6D(4 .RJO_=#&2?[X3MS=I4$9<>>S51,.1ALY5#$5%#U9:BL$?:%7[AJ/N$@ MA[!T"JR.B[$?(1Q/^$AN#,59=&9*4D_'$S0 M/;8B]=PH4MS>-M@>&GGS[%]SH' B(4*^"O_ZQO,%'FLG+A6ATY%4@N9H)@4# M3H9/<6EQ"+@4H..T$*.'@$FCPQK>_497X![BG6F=V\0K+%]8*.EI.MY*&!FD MT@]'IC,-,]M_2K?9=:&Z5CJL?L\T,U#]'XU,0AW/THM2G*5F@]C4*CVFZXDE M'!D_'-F;B'+<;,Z3]+I:: @F0_4*&03V2A^.G G9I_Q0HRN]=:M0$$K+$3<; MHI%';X\7+! OQB)IMI^.E>L-TWIJCA'4X]';DSVUS0YZC^U>K@.$5%=8Y>,B MZNA_]/;FTU,OGEFV*7IJ#WA0S AUBY*XQ/'(!X6O3!-\5*1YL1>;Z5(Z.FDM MN>3QR*+QU'CHK1I919Z4Z+3^F(I2D1:7/A[YU-V,BN*@4F'G"=N<9V:T^:"V MN A]/+2MY>K&DQ:QZ<3J,7U?;V0V="F#AA[1:1A3&E1D^I!DF0+[- "ELK*A M)33TB% TG:!S1JV?Z26F:K0'DE3)3$<-J&/,BFXY-JUF0R M&33T: +5:"=:+E9TC9X.37&^&9NI)86'NA,X>PQY$*<[)JL)C YRU;KPZ5E5 M1]74S@G;XV.<&YZ5FD-[8K6JPJ/BW9>2=+W_Q[/!2\'E)825:$ M?3O'JLW0.1F.,EQG#_V,4OIX)(^\,=1CV@S]A8+(2>I_,P$O]T?O,M,P+DZ*T0'VGB_-?<^)#GVYVU+=S\@ M9_[XD[W2 ,\=4V?,[I _1>.[W[]0%Q)W:BY1B51\^.IKD@[3D90]I;JNG^.>( -P].'__8K_^BA! MDN'K=KI-O>M"Q*M9+W1@@8X,:N3(@-T=&9!K>%'ZSKV/-SQ/KZR7-=]W8JC; M5C*IF]$Q)T7F[0)"^/_XWR.)V&H7YJ/:)<+DSJ8Y70L" 3;XWFS"W M;V$0V8X6?Q6+X[MFE?7MT4S05OR,P SA[])8^Q(]?U$N]ULL_IOU_+UL5W&H M"78EAB]=5>LK,9/ALIDEE!G)'[] M2=[%4J<0",[DB-Z.MKC%=,=M)#A\N>I7JAQN=-&O51!W+1.YM^@. MC5NA/42UPT$FZO*9J!]'AV?34GY2H)?,.A&IXS:)@J08H"7U9*/:F2:9^K*T M7EXS\>1JB@Q1%'6L)QHC?#?";.R4!+Y7<"+('-7C?:.1UF1E'9^695::#[5Q MAHMC+.;H72QR20RJ(#/U2F;JQQ'BV325CQ7-%^B0RR:B/JM#S'Y"E)K9!:/, MEU,^7[B/%=(2TB$)J$-B=^D('62J;BA3=7!W#?T_PN 7L!A'"GNIEBXH(7X) M^=X,_:]I[[\9/RL9CA\2$Y5OHEZOZ"T':X!0FNS[FT?L.\ MOS91'/_6;V0)G-VC+BZ&TT(!7]S]_7&R1GQ=OXG:M:GB M.+Y^(\OWTT 7QW8^OP:BGF*LR79DB9WSZM->[PL99'^# M[*\G^^OTBPCROS^^$M%/"6+_D>K[F;2K9)"=ACI'2: 3]FO:!.HZRXPSRC1% MQVO*@*O.UQ*7='+(\=CSG1*#'/)/KV[T4Y+9?Z3Z?LKJ*JGJ=RBKWF()-%EA M$VS56 J:%.\)@H Z]CG)ZO3E'>[;T5;?)F?M-QWT@Y///V[1077E3\]V_KA5 M!]6507[-O_FU^HF.JD':+"B;_)EED]=S!OQ F&NS2%#Y]YTJ_Z[H1?B!,CYS M+*ZX_L/*M^Q9KUY\TXT]9U&:'Y*O%VOOX;N5?FV:.2\C>$ER*Y\DFMF'O.Q8*88+297BABL*8%T1?S4+8D@$W6[F:A#'S(?%' %!5QG]S6_P^*_HTGY M4O?340TGC H=7;#Q?F0Q9>?-W#*^!F#S._@??%=D#."%/I] % MV!1Y \$&>03(LE@XGG77O\\M'EX;! ZN$:,YHKO$SRNTU!$[X5O'^U,ZX#>C7W\*;\2'/P3.7IZ^6&)Z;I:(P +&%+*#&((:C2>W2A"X M-FHNA"%$$:0\?AK M[WQEWG-DK#D6,/ M57R=-PR.J;*I9FE:Z=()O6P#N5B9,876KS^I>.0N%8T]J^*_> WK%1*O?UM8L;4^-C=WD!XE*"7%/(GD7]1'WN%?H1@@X&>I.HJ_N0O## M&=1GD"[J.KPUVOMJ_Z2A>J\]_\\>6/;Q[Q?"TN:EU6_G/FICU(%+E7DUQYMC MXJ=JHGD,FYT;KQ^+Y?MJO#>/Y>E5HJ3'6V,QE.J50OOQ0SK/U?">4J>=#N4:MUJB'.MU&KAIJL\U>.U?*=-C.%F7$ M!\1K:(Z3$7&<.%Q# MB881%W/<_=L##W^DW*"[*XQ#2QXUX_'H6\H$ B6O*!*S_"[A_W )PVS$DIHA M]:@F-VLOX\-[J[L\EY^+.?"-RGK&R^)6%>/_(*^4L!^3K'$/Y=9Q9 M \D@Y#8+\Y*@ZB:FR= V(>>;IN3J/=C4HG2KUB3&GH MDT%^W:"E:_"VEV>?Y?$T8;APB*0/#CT'[$]X7 Y!!;R!$BKC@P@^BB;V)2"I MSP)J,3'/D1S>"H70(4093E1_#-OWEU MR:]-]PPP'8Y%=GD(=UI1? ('F2_][Y#GYYV[MN?1K2@/$9TD *6"$6I>AK_F M?F8X'$!-6W# MM'GHG4"5(UO01)C(^9?-,53\,T.7#'Z*8U3>ML:Z(6]XD@F!?T)Z4@P-UZ]Z M3,3"H%",U];0ELQL0QBCCC*>\ 6]VJL10^+;3=@N,^2U?":^$"'KX@OO__;Y M$VRRVKL5D>4W\;K)!>*39FN@YG/UKF+&>B!;B!2>DX0:T/%'G:G;+TICTM=2/IH.'E,=JA"5?C#70B2\R*.:<;D M&B,/B?*C(JN-!]FZ,A4*$C>2176E2Q_U1#$'-M'FG^1"4:RO^0F(+11;3[/# MV&!#%=(2)$4ZG(B\X'#>8=F]-/.\OUW"Y9DGT>\N9\MW%FA^!6+4- MF8=)AD\0[(NY!Q)LL)"*]_:48=?-]*Q<9M5E7F]=B'MB[<+8[M*E? _,Z\.' M<:8"5G""?Z*I\ G0/B_W'.03_9&\*%Z$IJ?I5@AI?T/FU? V M=/)ZFQ=+L^[B8PW%/^1);=F$4;*)$A&V 8X3K4\]M1.-S;IUEN\V&OT'I2MT M8$PJTU^DV:FP[E&O4X]H MF(;%-;$&L!I&A\PMLY)-CI=67!--O>S,W/FC6<."SSE2PQU)37:=!9HP1AX? M?I [L ,UM=DF)*L#Z_7'=-#M;] M#UN9H[= &XP^X"40V=H=BO$8GCZ[[O68):"A\RP^:0^QAW15@&Y+(G5D=?[] MGBCCPUM]X*G9\Q=Y9?QVC"9)%O2?,IQU)2K<2D^H!6:BDZ!-:Q;()+]0G7"1AY6H-U(G1^S0\9KJ, )",8P\D@64R17@4W08"1#G"Z5KQ_+L/420 M-5)!\U:1<5_(L7*FS4RI3;5734XWK18[>XRW;]?KRCGK?DYX6+FPG#SH4YJ> M3F)4;#8O#];#Y4NI2W3.AT1HJ1LB-$[>W/60-^>'NFT_G*LVT*32BL^;_ MS]YW]BBN;&M_O]+]#VCNV5?[2-#' 0S,ON](!DS.8-(79, 8XP0.I%__5I5M M0D.GF:9Q0TGGS)Z!PJY:X:F5:M5.R36RZTW9V:P$J#13PS$ON/D7K?"]%%F^ M/RR,Q[", 8@%E*0;[)FG*]\+QF6#X7=6N:1%S.VW ]K/?233@EGB'P@',XZ8T MZD[27#?6H?IB-=U?DE\H' 6SF)H6A:C%:_&(+.^V4ZJZ75\6CB^QT7]3/K)@ MX[Q#\5@W)L5E/EK/*8Y,C2VIU9>-_!=N*U(GPF?6LXY Y+JQ03?!4R,V K'C M_**JEXW[2X[_[YG([[:0J:^UD+]QL.HM"4SWN^TQU\T/E59YJN9R:2FO)[[ M0F:*D8*2B1=J?'>PL,IC9CD5:\"@,73QPP;R;>SC"T+QN/9Q/M>(J_54*DF( M'#WBY_2DL&G_=@[^XT"6B5&U1'))['BYLQPJ\J*9+<7!/A>]%-]^"_O=_ M2(;X)TBA!D^D81IG+,HK='9S)*@PAV.%IJ:AW2)"\&'Y8[U5-/>+N(:+-AU) M"I7H,%QMW!S5DLN"0BVH+D^Q1F,T5WDSZGQA()P8$\FJJ2@\7^I.HH-! M?Y?/2["JX[PZ*L >V-XY#R:32V2?3?,M@^ M)<;8,*$+9+A7*)[8%MYF'1)0*>EIF/\IQ 9B>T>6+#FDR2!O[_*8;-O#5"3' M;4M&.17+\&PM_@7;^[K8-J-=A>EQPGJ9+>K]8<%Q@KF]/^/CO6SO@UXKFU8B M',]KG4EUK&9*-5WZ0D3HU_)Z9U*THHJL+.IK0NZ)] J6_-XD]OZ;3 XZ[$>( M1"X>M?ISL*ABA5L4]4I7^4(F#ZU&I9QP%FF"Z2>7C=6BWJ.J<'N_E.;^LF*& MW^#S42 ]F)S>L(/M=IWL"40IHLQJJWJG,ZY_8:@@FBGGI\LYVU66_+13[8FS M5MV27N#T1S?XHJ [@KGU2X]I-QH*^0R?"099HOT='7@X;ZMMV()ZC:V=X#=Q M.[[J<WDVXU@;NTW\-RORO)> M4VO51LF\P7V4X]+KQ0U727+OM5 MN2L(V76YRK>:7)><+X&2L8EF\@LW\_ENWJ="=<=5?AM%9NDR%&HS(K MO&2O_:F;GK[U_OW''OI59:$P7T8'B_X\RN?8-=4;6U);FGR!:ZY'')-+M L) MKM2TZ&*V7=Z.RHT7]^^57Y7=\90T9)B/2G-#O]XCA;E;I?*4%SSNB M4BQ(2I:7FY/JO#O.CO0"/ G^&2&Z,PO^8J^4*Q_W:[EG))KBPC!M,.'73OLI MJN5"0S@!Z0G'D>,#&!D"DT8>H;VH(]<@!NYG<63=U4\(=[(5$E:"K*+HLST3;/B)N!)4Q\N.H]93ZM8_-'AV[G FB].0 MN!'';L=68SJ5QVY5A@$?A=0/C3$6(N0#4$"(!19\N28H<*BL[WO%PJ]GQAJ> M6!14(.GP]")8KN&88Z\#!A@,-V++@D./3C5>+CTRD1*Y78\/%!P;D@[8B"=D" M9@/0"YURLD5! T\ZJN4&F(SF %_H'XIRNP-HPM:O:PIIAHF8H;^[WX>[MN%< M:ZGMZK:L*>E9,=%/C98YN?XQ\_3C/5)>V,]].//W])K/?U^4+V[KXJ@W=]:* M4^1*%6-=J T+T1SQTK9^$"F/ %YSJP#H:P'JXN&TVY&<08UPS^5. %\LVVTR MYP\ C-=%&S56E@19M^P+&YC;T-#R=[?#6V#@SF_;(Q]/P!>U#QR&/SJ+(U]< MRUJ$<[UX.OZN&HLE<6.QQVTL)OBW%N0M71#&W6J;WYK)TC(]G3 #LP$0E(!, M$(Y&MD1GN>N-F@6%ZJ>[I7EM&5MEX4CJ^#XRTVAK4;X'/,MTL4KUXGIMRM@L MP/JS>8['E"2-:IJC4.LF)]EJ(9;8PI%G\ZRU,ID*8]LDU^):A4F*M#JYL01& MGLU3T(9<;2%/>$5HMY,=L3V)-E3XS+-Y=GLF2Q,L;?!+L1=S2DR^$S'@,TGR M^="LT-DE@V'1I\/-76IW^PM8BFB56;*EM,D"*!?0_I\ M]9T-LZ!*O565[R8Z\?E473L,QX*19ZN?M*/Q66[:R2O,O$GK3KE$"EOXS+/5 M$Q$I&TG.R"V7VXH=,5J-YZ=+./)L];-H,<7%Q\.TPJP[HVPF8XJ="1QYOGIB MXB3,@I2C%$HTN%BATLWO^ 8<>C;3^H+DK':B%5&TNE*=5.F-VEJ@H6>$XMM: M6^P8JJ*DNW)\&-463J2X!F; &:'FE4ZQTC$V PYLR\HT-8RDVPD)]K<]>[\> MGZ1:^3E1YYW:V%X1+;O/U1F MR(K5K':VA)9L3Y5'9&%]EAAA_'SD:D1 M7VSVS42,Z);2Z5)<4L8=NS%,G(],#B*C>;-=E'DG6LW)Z53'24EK,)(YDU(N MN4Q: K-22I&9K2F#YJ!)2V!D\OG(HLHZSKI2+RC,PDG/MU1^0YGK8?+\[;UJ MA,S%HTO@:[U-0M&GE%)S4>D13UJ5A5MI29,7.6*8;,I::3&0P,@S(2V1);V]6$<&Q#9=VMAY=<0)2?CVG9W%@K4[4DGR,W*2C M"J=1"[Y$3E*->517DMP:#CT7Z+'CM'1UO3&5=)Q>Y_J==F(9!6,OJ/ZRU= W M.4[,<-T-DU1RSEQ-CAMPZ!E9B_:$HAE69WFY0,_8ID7,+2#\8"C]?&A\FYFV M4@;15<0\P6R*$2'";]%3SUC0BDY3'-TW8D2DM8W7Q$R\X4!J70"*3BVW4\QI M:LYINUA,X=J2NI'0LL[$:MY+&;N4U-&XG"4+7%%)YT8S-(%S?BV4HL*P/7[" MR0#8,H0H,2D&/?9< 9-*MT[U*^DN5]/S4U,H5R=U#LWVG L1D8S:DLIM>:VQ MV^D;D\BU"V#L!5S)]_4^O5$2-<51.T"JMDEI7@:DO8 6\:W5[$\KFQA1TL:] MG3I2B+;2@$//B,!,XSEU.G8Z?"ZVC VF18R6TLL5'2Q7:JDZMG2_4L&GJ^7;9KM051G324;CDO1Z+S M3KM#LG#H.7/;<=XDVOF%J&B)F&%RT]*@.D:3/6<8S3IMF6*232)2:L9WHX[J M9.!E3!>@<*"-C5JTMV"X978PBRRK"3[9!K.]@%O W:WV"X..S3&+;G0W'*R7 M39.%0\^Y8*_(XKQ+"R,B)Z_BFT&Y3_4=8#)<@(Y18CN76+IC\[+9MI/T;KGN M0VT\'TDUHL!$B@/D$-F<->S2S<0\MKYH@PTMH672A2HOY)(1K9>;+W=5]I(- MUIUDN_VZ41,)1JXTL\5LD9DOI$LV&+6>51K;GK+C:XK*Z!-='K28]24;++N9 M)J81L1WCTYO&VEK.BD1VU;AD@Y7CL66!:_0(Q8DY*29"R?,6L;YD@Q5)P)#IVI)(FU2G7HKR6_F#>F2#6:,1QPU6&_'1([D9PDY MUM[$Q(LV6(.K1.QMREDJ+;/J#&VQI\RR[$4;++9>%&0RT54Y"N"F&$M-B?98 MNFB#"8+&FO6.*'&E%!O)FE);KV_6%VTP:A31Q$W#+/$M0MZ::LWM,'*@J!7-U;:4H1XHEFKK=1E16IS*"Y#:FSVHV+"6-9392TO7;+!E'8E/2^5JEF. M*8]ILS.I<(WB11NLD!%GF_6+EE6,TY-.*=%H$9%&<62D M^CTM.Y$N65;MXG1&Z,R@J$3Z#8K4M#A13S4N65;2@L^0XU%LP^7HME')1MFQ M,KQH656[TTG9WDR[_'*<2\C%55%)K*2+EE6C(+2TBCT5^&U](4Q7%2>RA7;- M!7C,K=:U^*J7;BK4PAI74^G9P#$;%RVK7)^*#NI6<:Z41CMA,^.Y;JRT[AH+MF-Y;A3J66W1->F;7J^+(IS\;*YU%-RIK4N M1E9$B=F,LGF[FY[GV(OF$IC"9-=T^H[2VBK#=9&8#C>)QF5SB2MDF^5%+3_G MEPFG3\1S=J.@-"Z;2W(R,HSU>E29Z\;R6KP$_.Q"=7W17%H-=S5BJ(C S['* MD<@H4^\0ZF5S:;CK#>>V1,05H5B)S[<%>SCIOF N*;'6LD!P?)9WTO%=E\O' MXI.,=&PNO= +__4,X ?RA50PNH>V' U\AW(S(U$UUBAT/A9-6Y#UH\2 *5J. MZB5<#ADP/]87F@BV\%)+S:/S\2)HXJUZ?,L=>&05$QM MO2^?Y:MSIN$LAF)V-W&TA1$AY$%)K-M$G)!'[#,1?&TH )'K9*PU6??%D7@Z M7%3ZXLVD/7,?JSI(!+_/> Z/7B+VZ?1KD/[K#UHOPGX?K;=-_ MJS]K[R[5W[U8-TH_)9-_O7*-[E$(_NB5\$+/*5!>GTK^O]'%R#_=- E,*[Z9 MG3BZ778_5!A9!KR$^-:IBJ-?PEMD/Y*X\/[\PZO5B2CF3! Y0SY1#.9,$#F3 M>*)IS)D@<@:C65 Y@]$LJ)R)/\42F#-!Y Q&LZ!R!J-94#F#T2RHG,%H%E3. M8#0+*F< FN&X62 Y ] LACD31,X -(MCS@21,SAN=F7._,"./>WJ^YLWSGK#Q+4RH5MR$*H<2JOMSF-O?HT?R#=,C>+*!^F)C:;B*-"2>$M>EQZ=+0V%_OR 6"2P2[N8AJN+8T+ \ M7$L>7O6(OOJT[IL4.I.0#Y+L.H[CHXE-\NG5V--]2A>[9?GOY"+30AU M*0GY9\F_$P:C\D?W,@V:"+M_@16&WP64+Q+D9/GNFL[_O(I]?D^BX5]E@T7A MMRPQ+ I8%+ H8%$XME<_PX/V&]1MG M% X-FW[^SW@LBM/IC7TU[VX^Z].P+W K_*W.39]0\! X0OSK$Y;FYMB"L+0C M%4<'C8X/Z]$G3=1.!.!X90M31%D^,";TWF:'?"LSM#(:I\RB[3DO[GH3J<[P M^9+?]_2#]R" Y]JH76/*.^3G]R=\UW6[&=6E6=QHTQJ:W+C,2VF3&1 MLQV6%5-"T^G!=BO,CU\T$::)\_LR,29A3,*8%%Q,\K*M&IB/BT=609^: H I M9VP[IO@,EK8I0^M2&7+*.ZV.F(K2]50V>6M3:9BM"-EU8[+C&#*72^P*L>)L M!$VE)("E,)D\OU$$HQ)&I8_6=P=A:>]')?=*!.J?3PO"!6'YMQ?Q> )@0,2 MP=EXW[YYX0;[XV@C3?KY1DY18!G(Z"W$A]K4 ]X+8"HM MVAN+ '_P#CGGK2XWR3LMV'6?_O&+(<(T_0XHQ4B#D>:-$$C0%OLH2'/#&.U; MR),A+*?!3W-]@MD*J?EDE^D6-[#7-//C%\6$8\SUXQP8>0*AC!AY[A!Y;AN) M?0M\3#E"KU-*K\4M34.("Y&.2$K0[$D"\ G'8E&,/1A[_CC$&K3%WC#>^H#B M'@^@!.!PPK?9:C\Y]OK6CFC5F'6Y5.2JRK;2V4D[Q8Z0J0:\T"7VXU?9_UL: S ^KXW&@8RN(I H8XPX0*B MVEQQO"9C=)EC9N-X0N\/I79B/8S!T&HRG(B^ T\QOF!\P25FP<*7&X947\>; M=*TY[D1K.X-/;^>VKK5* M&#M^?!< MMC6G)^E"J\^E%:$?&W;R&W4!K_9,_OC%T D,.!AP<+4JKE:]XVI5'"@(V,;Z MR6'3-TSN]6:FSLM#1:GQLK+N:H-EQ(+['RI%C88IZAV)Q#NI1&V)*A@@A4.2 MJ(NFH*);1H6))NLRL%50;^3]Q: XBWK'6=2OIPK./SU*Q-4#F9P+,:P^84\ MAG/QY0)2SPLBSZ_M;8SKUI@,UVG&G%)'&C(P&!L+QTE<\(&AZBNH@JO2'C5X M^]O0M3:)63V;K,>49;135U?&N* M(70QP,8,1QD"0Q>&+@Q=]PY=MXT#_S9Z MC=E\@K!2_$:)9.L\N6K%(\L61*\D;/Q$8^S"V/4UV/6]"W*#B%V6:0_3 (<@ M#=&X H P%[!\6$L;YL( #Q&KANXAFH=/O9[1%G.+THC3"LJJD$Y2D@W?_]7X MI A$.=:8B#4E5ZJ*U52B8<;;#8!/) 6/ ES=,\2UT4%11AS$NC^(^N1LP&^C M3&4BE'MY89,D(E9M8O5&[=5NR4*403TKPK'D0U=7%W1@V8JAOU7#LOX=FIJ& M%C(6HLM9W(3X_JL%;H:V 2#$]P;80&8):BYVZ)*+*V6 *A:%36.4J&LM.S08 *-@A(TPE<$$W!B@,4"< !0'G[Z "SFTC^)5X^R=A"ZZC#W =/8X ?5>'ZY-#[.]S MC=:-12:^)B9;OM2MDZ2:(E12@JX1C*?3889^1V'!G=3=HPLJ0_)Q!#T ,6B< NS+.&"1@?I\)$$M>=8N1YY'+2SSWE>PMQ?]VIQ?+_+C)AA< *\6 *@9OFXLC? M>RS*%X. \F@B)CK- <%W,[R:*X@554]+P+3T@X#)*P8!']"J#'RY[0/[LS< MD<\.V?T^#DRB(U/6B!I16JSY%:IAAV)@!&B'^"S MAAQQ[4A\' ;VQ2 ;,BZ8&Z1Y0E@']+!--#!B *@B"E:EUHE=?CN MM%_.U/K$-M)-T^FM+527ZV$27307IDA<;8O![MK77E^N7PO>VA\%[&Y8@?NU MX!?=:119; UM?IDOB_WI.MFW1A#\<"4O!C\,?@%VE;]+=>]U\>Q%!]ZF^1&A MRZ.\PLRTU9)9 MQBSPRS0[:F=&P']"[WP"#&JSA6ZHA#;F4"8]7FUP++LD"11 (<* MD\3Y.=I[K37!*1Z2!%>N30O[/9FU+-&^E&!0=^7Z?#U,II1:E9A6*FVB7;4;0Y*& M[8N2"=R["*,71B^\Q6,EP0UQ@JPDN/P%E[_2H,4*2V+>8[+>23U,1@12,)81Y7 :Z<_LBL!A1"""[L$C MR_>&SD"VBC^&D0MPN\JD[;2\[0^Y7&0<7KZ$8)'4SV, M2.^^02\(9'D41+IA4/,-A.)TOEGNE:06I]%Z0>YN8JVN@1"*^?&+?D\S/HQ0 M&*$P0GUWA+IMD_8W0*JUYLO3Y*(3)7+#9D7;">WV=+6&()4$9A2)00J#U%<> MH@P<6;XW2 6I\_H;0)0:37M61"EKBF,IV7DA%]>[I 2!"+9()Z^+0P];M!D\ MA<,!ICO$H4^.S;]ETU C2=\EBP.B&\]/S9@>SS59%TIB/W[%HN^X]N]^ZV/K M)KPRU]Z&0PM5T.T08'1(7#KR B)_",X'F:BX1@#7" 2H-UGP*/6] 3F0$7\? MFNH0F%A]POFPQ/JH= 'LJZ:XJ0V%99*3JUEE-6HQ1$,&#FP,Y@'HQ#O:$&" MPP#WQ;&X[T"I1P&X&R80?@OPVN4V,:8S/9+KJB;?Y1()HL6Q$/#@Q:XQ!@,> M!KS@4.HN 0\74F.5NGFH_#M0"I==!R#$^QT$!<<='L,L__P>A1\WH$FF3;!5 MMI7EQ78F7]L6Y1T]0Q$#&!YFHE]Y^<2C*=HCY_P?;=7?ND$*EG LX;BO&Y9P M+.%8PA]DU0\KX;ASX6,7P3W:JK^U87Z_E5EIQS11#18Z88YS"SBW@/M/!"FT MR5K#VO33:ZCJG=Z&7Y9-@6BU2=FQ)^QF7?N#1FL(/#PHN=17;;3KK72[MN-* M\5XS69A3+2DB#F,S4R152$39_H9IM\7:02Q<'D>G84O3+,]&JM58E2-Q?;\$S#KG80 M2"6!'15.)MZ11<88A3$*EX$%#Z/^Z-3T1(KL%DEEFN0(0/#8=I\/1^)5[..!:N^]<:X=#3$%&HLPT MQ^FS0:JJ:..L-)S*$W5C_'X+AK? )$D;+;U324>XTB8MEZO#'I=D7#") =>+ MBH4)XAV=&.ZD.LZ/QZNR@.!#_L0;A!X0'G'7&]QMXN9.Y1=&XLL'V'@9<;F. MT]*[R75'J=7-DI25-(X&::HZP?B'TT),39A; H"-MTV^OXN>*KV M*Q6KDNO7>2U1$1,5JMV(3I'M!%N7ALDXA=$)HQ-N7OIMT"E(8&8 M#-E*NL!WC=HL9:_EVL9"=@R,NI-)*DPG'[IE:9=QB<&,DPDF$D M>QPDNVU*X!4PFS#-Y&K;6HX)>5A2G,& *%,)!&9) &8$1C*,9,&AU%V6[>/N MK;BB'$=H[L\X^.1P^"M[^#0YY[.I M/&\;MJ!^=A^81T,%7*N $X5!<)N^O/G+!70ERFH[-[02-,'44JM2)I:CBYDU M6 GJ^D(3X3B-2SDQ .%2SGL$H)NW>KETB=4FPJX:M81 .,-85-DR]65JA0") M^?&+(<-1ZLHW/F,\"HSB83QZ+#P*0F.7"Y!4+\:6M5A777&YHE'?3;6"4EFR M$)*2/W[%PT0<(Q)&)%Q._GT0*4CEY"^B#C^)J-'<.)E0&-ZBZ=8ZL:Y-&Q!U M4/\6)AQEKNR9X1KRP"@8#@W= ^YB0^#F_VK+*DJ.TOK!4$HOL/(D, M%M2M)1X+,\EW- ] ,?/_V )@\2]_=-71 &O&7\'1.?!-Y>GVSV4?S!QR1=8= M!/:(2CG3-X ?BA+7?&$Q_B7B_38S# MPQ+@RW>2!C'7?X*GWV-#586%)?[T_W(\3P8\VYNB)FPB2-KUO;I'5'%J'^M_ M!*DE^L0#6(+X"\[<-OVW^@MV5_0F1+TO%S.15Q>>;X!G3E5C[9/$_S<"@)\C M4Q24R!H0X9^%8:%+ G^:H@ID9B4^>Z8'@>C%_E!A!.P)QQ:?+?3+-X2C7[Y? M#OX#%K?_\ZK^"N;,K3CSUBT^F#.WXLQ;UZY@SF TPYS!:/8].//6S8"8,QC- M,&A4PY@R. MF]TI9]Y_:N:+CL@DWDB3C47=%LUG=!F=O'7M_G)DJ!/P97MFBF*H KZ862%. MGXB3T/_]9W27A5N_E2#T:3 V5/CA__M!_?A->B3?,#V")QOH?,9C2,/9ZK]< M/!)/B>L2Z-/%XU ]_Q@R@D7B[=W$+6#&\G M>;A%2>); G$]5+V3RLV;&QZO M!J/N2VI^SV(_K>PD%YL0JHW^BL+.3\=@=F'*ZO_^#\D0_]!$V/T+15#4=P'E MBP0Y6;Z[IO,_KV*PWY-H^.>'[D<47EWNRW(RNHZIAF4ER++R1;"!10&+PHG! M?D^B4+-GGQD2NJZ='A@Y0!;X/8D!:L/T# ]^T_(.6CN[IK@2=><3+S0.W H# MU /SMH2XZ@WO^"S@Z5G C&.BTV=#:DC"TX#4L&WLCP92G]0U2NO/MTXW.^HK MVX5=K;8%*65W?_]LLH<%6=/0TF ID!)=V9ZEP:L-332YS5AU(&?A043POTE; MV%RZQ2;7K<>=UB1&=&L&GU^K2B766@]I>'(N3H>3T23NPXLQZ!HMP#$&70F# M/M(X*M81Y37XMVV02 M8A*\OY@*QXCKMW0)@KQB3,*8="^8],'F4<:ZU*=9)E\GNHE)K96>]NS:'_1B M^!Q8&N8:K<:&KTR(7'H@Z-2BLND/60!+R1^_Z'""PG>O8%2ZRA4# 48E?(/ M%]X@\/U%' @^7(((4_%/O0\W.(W_TX9EAXQIR/SL\.P#0M]MDQ'OH,J%),P? M@6'0%ON]D3&0H5J(#[6IA[(7D'/@%.5(?6SL."T>+6>,E6AE8A)=%IME,*45N)$E=+ PN.AD<77(P]&'L^TH\_ (N]87#U <7]K&%\ "0 AQ.^S5;[R8'6MW;$39]M M)LST(,9W8XU9*;)R1IO"&LP'AE 31#A&OZ,5*JZ8L1<5"EMU! M+Q_5F2;#<3IQGV6F+5$% Z1P2!)UT134$&!B2)AHLBX#TP0U00Z)FX6H6[@$ M%:=(<S(NARTNS.;,K)-I%N6+$L0-*"V6 ! M=,'BUG \=OW6)H^FI!BZ,'0%#KIN&\W];?1:%"H;JCI:$X28:&K-1:V]*,8D M@%[)'[_B##:[,'9]$79][R+:(&*79=K#-, A2$,TK@ @S 4L'];2AKDPP$/$ MJJ%[B.;ATZ# C2JC5;'(MU+C57_.3$OK^ WP:=2FG$A>FLZX4EZ4^IV^0VE9 MZ!B2%"S?C]+,=2$*US,'11EQ;.K;(,\G!^I_&SQRZ49[2HB%BK*TTW0M;U38 M6@VZ9FZOB' L_@X#YTX*G0LZL$[%T-^J85G_#DU-0PL9"]%E(^[T>_]9^Z\G M!$Y[WG&DO^9BARZYN%(&J'(!@->-3&.;RH@[A6&IB#@I4;U^6AK&85@_&::2 MN.TO!J0OCY %@!"/ D@WC.>_#Z#X]2#;)&O9AL)$&:648Y>+NL "@()-@,,$ M0V& P@"% >IN >JV4?OW852WDBSTN@S#$8Y1(B/3U+"[WJP!1L$&%N^I0L,( MA1'J

?OQXVU7T850"CPG$M'/0HY<91LSYN$7%QU.CM":S7: MT$=[.<+^;US]?O?5[SA>]%VMGT^.OK_/2!GJ\DS9)?I5(K*,9*.&5B>[$D*1 M& SUD,P[3HQ]QVIY=!MD2$:D"8=T\?.:B#R:^G^'R@B<=@PR\ 4S4 X! IA\ MQBF,OIRTK%<+R39)EB6%FNH*M6US1G[:&"90*7P"=RO$N//(1:*?>_X6BWM0 M) "+^QUNLS>.KGYTYRUG:Z/Q)FJ9A#8S9^74W(G/"A+8>6&@%>^[&(AP@7.@ M@"A00=>/@LUJ)Q?G3E/?<93=4EK5$M_O%5@ -C#L>N6Z&%S4'!0%Q-&%;X,V MGQU6_2A@Q%(M9SRC>AFN1:2G=;)>XIL):)W "&LL^:B5S",1D%ST(K A6]A\ M8E>2P"T]0)GO4W2A ;I,#&>DB@'!TJO>(QJ\M7]O: UDX/:0[O)O+)5U!W"R MMC\UD4+0XXYK0^#A-K8I -F0=<'<(F,4 #RD@VF@$RP%0!%3M"ZUFZ(-HK@C M<^1(Z2H;Q^J)\,NUA\%;^Z. W0VKI[\6_&:- M?'[0E;<)?CO.TKTBS?.%J 3 #U=A8_##X/>0X'?;W,'7XE]NF1O*A:83X;=L MB4W':[1>R4/C#R8>HM>_'!6CWZ.CW^4X3_#6CJN^;X-8+U:/US,=*F\PN8K2 ME6JZ9IK+Y' "33>O>IR*X^KQ!ZP>Q[W3 V9X?7+VXFOM(X+K3/MFH7/1]MU5C"'V?5;N3F MT5:-)?QQ5HTE_'%6_; 2?G-3^R82CNLP@U*:B.LP'SN2T18V7N5E2M3%%VZ$ M2ZGM.#50."Z2CNC5JETJE^J-(4F@, 05IN)7.^,>A/C7B8I41=LKN<1)*-QF MZ(Y;@=S>2,"J@54CD#T"L6H$@Q!8-;!J8-7 JO$]^C;>7C5PX(2,:4C6;4&7Y)&*>T[AL[@X-/EB:/+3FW9C)7EH)<'M M.@+7KN.&O8J.=^7:M+#?DUG+$NU+F0)!7&I3L6S7.&$BSU?E^&C=[S>&) W[ M#9',^7UG.#./X0O#%][CL9+@IC0!4A)[06PRB(?S)A2P?-EGK2JY< MU";;.D\)[76;R>8)D44F*RQN>9?-^AU+6S(BX/E81G3"&:$_LR("APB!"*@' MCRS?&R@#VC^.HOC$A? M>7XE<&1Y%$2Z80SS#82R6AEV.X@W)UQ+XI[XV^@0SO^]!4A\#$ MZA/.AR761Z4+R%XB]H!X4A#T/>%Z#G+;9D(VK052L4#4IH9?, M\JW)6.W)O25=SZPA1#$_?E'Q<"*.JV8,!V_,A+AHKGO7#2'0TQ!1J+V8"7ERHY&<=MZS'KV@T'HXEWW&0YSN6N?G!=U46$%;(GWCET@-B M(>X;A/MUW-R#_,*P>_D &R_#:R9=2VT;&ZJN+,O9D<5(0]GL 9\Q@?K QHDP MD\"=%C$8X4Z+]PA&-PRXOPN<-GVKD]G17(>CNCMVXL3:A=Q8@N $SV]389K! M#18Q-F%LND=LNFVH_5WP5%J)!H0GV/P56$[7C[<_ MFAIB=,+M7Q\CR/XN!"IU%8U95CB-.[\BCN_ MXDC2MX&@3XZNOPM%)LELK$+7EQ&BU:R64Q&[0&5K+$(1>-%:@@E3\7<$@>ZD MY#UG&).UK*JX)@+71.#V'?>#K(&,T?M@9.$8RC&3!H11&LMLCV6WC_Z^ 69^>BH.2IM0X31IQ0CTV,%@% MV65) &8$1C*,9,&AU%T6Y.,&J[A6'$=H[L\X^.38]RM[N",LRRUQ%HWQHJ2G M&DQG3<@, R!)P##!P.!C)2[9[3 MN8"EBT*S-6],HPD^TBWH')_HY3;Q!E@)ZMX2H\.Q^/6=HD?3- Q N$HS" !T M\Y8M%P")UC(#(E8HK16Q+U6%C*P:.X6%@,3\^!6-A>DOZ";U:(J'\0CC41#P M* @-6BY TK146#0*I;9&M#K%;&)I%LV1A&RDY(]?\3 5Q97B&)%PI?CW0:0@ M58J_B#I"H509Y!M#FMO2BLW-&\JDMT.&D->'A2&O7$*$R\,#HV X-'0/N'.5 MYBN7;A&-%UO92J28Y(6=+?7(*:'5@/,&H0-V74E2X03YCJ@.BI#_QQ8 BW^A MT7!MLNX([O O%_6C7X(OWRGXSZ:-2)0S#6[#[2UTGB_70YY^>%3R;RZM?_@3_\MXU543 A6LS^ M.7TQ#=_L02A!_/4U*C\&F[)H^E2EH@>%]\A*$>Y2T3+0G__]7\?+.:0!(V-# M-**2?X6._@XI=$9>3=A$CHCH86A$%:=@\>[/_,],ER+>AX:%+AG\:8HJ8-U* MA$\_>2[BE6TLOI!1?[YEO2I]IY2Z1(!+FM\>#96Y.",XL3TEENF5,I8J^50^ M+0WA4.K')2T0]A?2]Q6ZU5\)23XMIF*TGEF;?6X-KY>$OQ..1N9YQ5YN%X,4 MY]@%8[4L.T[3@"-CST?66*M.ICME4Q&H:":3CNG]5 SXEN?/7"_2LU*!SR6( MK9$9YLNZ3L;3<.39,[4-T@3DNL:<0K6X,H M#7.Q1'Y.IC?D&NR"9V]?5%BI6Y]NZURIE-!JQ':FY3O2,'8^4MT),3!)?JA0 MNZ08MW9YQ=#70^9\9+,_$&8+754ZHQ325*3LUF>[G-NEI<@Y%G:Z_6R?6&D\91?CM9 MV@G3((1>LG%)0HA)O3**9>,;3N;X6KM@KZ9$A!K]<5 M9M9>Q-;6@"FQTB4)49R\U,Q(RSR7IMO%'!$5U6[_HH0,BQTN'H\7MPIE+'.I M382DNPOIDH38S%@:<]5U7:F-VQU.H(JSRNY80EQ3J^IH #O'K]Y32Q_?4TL/ M6PN;XY-+25*Z5HL?=KO;(: , B-ERZ/=NYGW\+7_D3;/"B"?]V]C5ZR4\4" !OK=;:7(B, M^15JH19?KY>Y"E=ML^50ME!EJ^D"^%NKS;;1IZ%"-5MK5MAVH5;]O_^,W&WK M^G;/W+%L>;KUJ>=1+<3LJ5>S9Z(9&I_<_@.%SI(M6YR$C&D(# !^AJH::V!, MA 0[Q"Y,604&2C@$Q2X$')U040!;H+D-T:3[X4_?GKZF)+?&,W'BJ&)MBA;A M'7MU/9TV]$3.17A#I&L,,RO5^&[*82*K9JN3'C6N),(:L*,\MA!/Z(-WN"L7 M&?I.*PBY7WN#U?7 @.?'>F(/E"$S=I&O"VJ8_-7]I+AW>5U,5IY\2KP:WCXR_H^<;X)E3 M(+H^W?Q_(T_IIVN@KP&EWK2+C[RF_5!A!-# L<5;&\F_Y>P>>3I_'/ZC7KV" M$W/F5IPAGZ)89P+)F>03A1D31,903Z]>18D9!.RQ?T,>&)H9L81,RQ2F8EP7^.Q;E%8I[PSS$PA07 F";O!_Y23^VL&FZVLWJD[JKT/MOQ$LUC(.*R39:Y*C#.1%CU\C$R_8X M!@L/8/]$)DR]YXC_G^V409";FT,#C,\%CA"? PT! ;UO 0WDD/9R^LN9/6F5 MBM,FD MT9#P.WJ;36$= E05X8%="YA#*V!$&N;V'OW(+S1\'FW5;V0I'QGE/MT \JN: M"KZN A6N^!I\ =D:9<$QF&V7)FJDK"@6G5M/;15OY'=>V0,^'1+YZ,8L) C$/)&V]5Q%B^C=!L :-V0X23Q^;W- M@AH;\JS!D+A9B+J%HSX/$/6Y$ _&H9]O;/EX*LRY&OSR+4;)S5+,KPUA1'2W MTX0S:\0*Q R>]*!ABXW$E:^*Q=&> $=[/A$2 H)XWP(2KF8(O1<2Q.&0K*[& MFX726N0'NMR0!KL\"R !-@(+QZ+D?49YT+D7'-/Y,[/F=IG?0%+%-8:"1I1O M 8-7LXR0GKL'VRJR-1955=!%PWGEIL?./#]HJC-"X[IY@M9VRFRR%AM#!MI( M3)@DKML8\6�X'3FYN#21 1]EN R=5LJH^#"4=W8BF2R0P(:JU0O8'9Z/0I M>&">@6 28QXDRK3O&,.@%[H-]HT+YZ=Q[.D+8D_!ZS#V925)P5OZMT#4KS#/ M7@;1=:F7&=.,R2C+54&M[IH9L5N"O42 11:EPO25+WG%8:M7PU;!4ZDOJV(* MWM*_!9I\A7WV,IITV8)J9G*SCK+,%!AQ)V53W3KL(@1,,CH1INGH;_1L/#1K M^;8M4 +048<=CTU'/&0BOUTW'6\!95E !)?%E[KIS.K-^4Z/;@E"-(;,;IOC M^*%TK890N)L.[J;SC0YMXVXZ=\<9W$TGJ)S!W70"RAC<32>@C,'==(+*&=Q- M!W?3>;C>$4%J!X"[Z00VDW_[EB&XFPY&Q$!6S-U>-7 W'=Q-!W?3^2:U+$=Y MBK&AP40%RB#@RI6[/S6%>^7<3=V)I\&E+PN.8DPE7A';=IW]"+KIC$7QS;@C?6)5;N/!VBX-PX&MFLW!_1 S5/9 M--38EP&MHFT+!35+E!292W0*#5.1U43#;8Y#D>$X\X[RN,!Z^X%4!]PCT<1CG%L"+RF+@B6&U$-% M)P[TW'V@YU9'QP- AV\!D->TDI"^'Q5POPR2-%L;DC%VV"6VN:ZTB#,KI6BR M;C,=,AQ-OJ-S!HX(W6=$Z%;'Q0- AV\!(->TL-X/((6Q(602^K!):/*LXO2= M;+&K-]S6.V0XQMQI@V7<>@>WWL&M=P*#A5<^VWUV(NYE/%0;FS(AK3( #]MD MZ-T9 MPSM,L;]H5U(INKQV.^^0%+"NKI:8"X(5_D;K'>'906LR;8(=D.S81):"2*>D@(K63 *PTVZQ%0 M<;PJ;D)C4P;C@=%IC6>B)H9#0-S!TTW1V[_/2\5\/!J";# '' 3^/!\F6RU/HUXR]!XU$\%A9&SFF=7BR+PQ3T]" M#,-[_BS )GTLAA; S1\#,;%"NF$_?Y)_,>!3J'WT%%.T!:02%A@,O@6*. FI MH@2$'HJF):JH.170B2W@E"4" 01 $ +*"Q0&:/94-C4DUQ;L=@4U N *T ,1 M>&<3V!P5< WX:?(874<(]%=" N43!DBTC(;!ER"IGX(?V$A5/)*YS;,\HAW4 MY 7-0%,/AX# R>Y#W5:M0$FF(IBB ;5Y*HJ0:BZ?),D$/[&/.?;86G2XA>% MLJQX=,_FL:I$:BO!(<;"@!"&Z7*UH=F&,0.J0CR='RJXK"I 6!'2N6)INS[^ MB?(@B'65PY>2,W:&OPH(+S=;^S0>CIV*-D],XG6.(APGA]$8/1T*,3HQC,4982HDQ(00 MC0-CZ#_"#?5$8J'-5=S3F]13J,)6V1Q7X:IM:(B1\7]:H4RAE>9; MK4*M&F*K&?!_MMQO%5JA6C:4+539:KK ED/I6C53:/MCFER++[?1D%J=:[+P MB];^U&, "-(^:9LXD:VQ@Y0^9#D:^!%XB>4B!##2=+A[A?SV)5"66%,2=._L M>T$?/R'T@!NFY8PL>2*#!X#?"TCN3F4JO <:=Z^Q/"B2S9"Q$%TDN"BB(?"M M;$PN2RIZ*/@+Y3[>FAF..G'W> 'I#-"+N:.[>+66P=/^EO_M3M^U(="FYNK/ M)4TZ4.%(I^";@#'@$@IL]L9!2T75$M?P0U=#@0(W'&"5BB; SZ:X -MP"$PD M"[#&G01)1!KH>7_+Q_-ZWQR@I8NV:LA)=T(G<.&8P"+2 5:]].H2HG=6AH#E MDA,9\6L!VB"J.'$I!B?4XM+PUT<=,DC/'PC]#;^'*D,1_YR\#GU&_O/OIVN* M_N\H/E(7@.Z&*W6P%Z5A_O3#!,^_A:_\"4PEP$/PM[.OT4M^(FZ!MZ8%!WX* M>XZV?&8!,%C"5 3>H#DR3$\4D+B-11.:Q_#OD!81 MU:/%0;B?0EWXPQ6TKR?BL=3[2@4W7 ^XD2;\EMHA6=>$+=(V6[8=>R_'K\S- M7PHD$FP$9?F_&8FJ#*RNL#_ ^]CU&)Y_*NBV/)87X*G/OUFH"&!//I-A_]/) MV9/!I+4+3X#>@26>?>QBX_-/UY<^')]\"'CF6AX6\-Q5P81.D.E:BH#;B.:V MB\T0":'G :3K5?8&1=!K "%?GF?XTAX(I>UH SML76%$BI$ MQ##!5__+@M7 M!+P=#CX B_&@/_$.QY.G(9/;\52??%IZ(GP'&Y?UF#=RVO70" M]U"%7JOF_O9HPG"!)PN#NNV]SX3>AR.Z*_!(!'[BT^V,4%!BQX)ENP\1@66/ MQA_9!?!!$P.YX-X6Y_HL>[K(8"-TT0CY\>X\A/'2D5W&W5+JWB%IHZW':5V M,P]#S]Y0 0):X)'R5 8<6M VD,I M!%,W#?7?KLD Y$-;> 0!PK-%HX'QADYO OT=SP1=\MGC+ "#5L"F,X"H3 %] M#=,W,< "P*P=&[%$!<#@.I]N!.&EB8+M86S*(]<\^8AU=&;*/(5:KJEGZ"($ M* U(D&=0 CD^ZE=WU)%OK )/"*879G[C:#]7 'GT)2WY7FR?0D6/4O.NR%#D M\[9[__U?)PT&]RF09P;,T3J]=U,HY2&)$;=_H3 %;_XIJ&MA:QW:84?WI3\_ M][D22)D023Q1R;]"1W^'%#HC+^S4?43$DT[U7Z3BEUB0 !V!U=+0;*=:K$?LP3O"0,O_5\+@B[<$,$FGH$,L@L%+UH M*4 . ^R(P!H"R&Q#9?9W!&B%K:#1#'#!?S[\HA7M>S4<0\2TK M$MGMMJ"@S=$8J;X!"R:T<, _QP!YG 7TL^!2P+XE6Z*[@[P"UL#21/:0<)I@ MT %;9-V-(Z'PC;<+H5"CUN 5C^02I1P+#+*L4 :A_\+MCA0L;V-'KA1>6@AP5B!@XRP@X%BSP 42S,4"UG/#%7=1HPUR@$< M!4;"H5R]%0ZQ]70XU&ZFT=;6JJ3A3NS^&GR-/D0CUJ+O5(&I3!U@AYEH;X8A M/1VL102T@+LP& 0L322*;# M?#QZ%I!M)/Y^;L)+F"R,-5 2=0] H!'FXIHAP_6@1?J 4J!;G^ (R68XX!& M1!C9>0*P/L':]HL: TX!0\:TCI]RG/9P7^K/&Y(7CG7U. 3\;C?+'/;'J=!F MFHG":AL2@1WHKM!R%@M@?)O642(#F;;E/A-%>V?31Y8A7 MX!OH$<'G0_QS1\/$)6#%45['1*:+>QF&*&E>@-[E/!"'L)>]03]#DQ%&)GC_ MWN^8RB( VE<>=W#"#U(,]1$89T<(JJ,1:.(+UE M.. _P!T *Y2.\EK\4^O)\XD\Q_W8%3@B5AC(M KV44![%)X$"Q-4=9\CLVQ1 M1#X-L&X1,EL.M)K!C.0%DO4M&*&Y2T*.+@3Q%?BOJ%H'A@&]]7/7>SP8^5 ' M'@:^#\$,@>!2%3ZC!9L_NQ1%,4Y1%:'H.;HW;VA;G_Q@S[,+_'65 * CL.LN MJ?[)JN%2CIEXK,X'Z0\C3J@A":8(]3T@3$4 ]*]RKR),+:*G(A M+S P**C?%9$$:= T\"4=7D*)U )PQ(+3/_8?(2G^@P09IEQ==QAX;7Z\ PJ. M&XV%-M(% /$=5:@,,-4FNYH++/@U&.N&%:!1Y>KS%L+E_DG/G!S7]?:<9%_F M1"";>0 \@$=HZX"K^!#W:T0D0KT^N"Z%/!#2ZXVZ2KX (461UEH-U8@QR$'P@A< M!5A>XH(+F#C<[X"=J#K([D.S 7,9*V"_G< )/9!555M!%1;70;*D7LVUU?9A MH*9K] =IYNGC?,L^>O7N?"F08Z!C_R()^BE^R-[ZA4V>:0!+C& 9Q]A$+21@ M303]%#T,!R\#__XK[+H[XXLS@C\"/N,3?93WA]H*LT3OG"SE!<*\;&Y>51($ MS43I*!F>J/T'[^:K MQXM_Q>FGY!]1_'Q!\D7[S8/8O1UQ+#Q,_"G^%X)",!WP-V@Q0W?: F;,Q-U^ M_DR(#ZE4S_,&)I2Z=2=_M&WL*7\\2Y4)WY@ ML:L\44 5CV,G$P$,B)US#T@)=,$^P,2F_U!O@YJX4=M33NZ)XK/T> D4/!#A MTID"JOYE+ PDS$JP6,8SA4Z7&#G.^[\ N,#"_A<9/2@U$H'3>B725Q,WH_XF MG0^(/57=&),;F5N);@Q='CF>/P-%#-C6'D,N50EGI@35!.%L<^KIPL;*\-05' VUMJ^@BP,C'H[_!$3!Z[^ M:/'GV@*? XNS(WYQ]G&5(3+WC;%746H\*RKW_!^WA/&\KO1O"TRN"ERH$!G; M%P,?%[]\H'KGWP IIE-+!'Z&8$*/# C_"(428!(-ULJ!'WJN!K([7#6$W(8Q M#\__VSLSP*?:>L$O-" <2F?P65YP0G\YU]OPGD4<86-K[V M^+)PL(DNFKI^?0+\!TK=N;EKJ(9'SS11['T:HF)/]%_/D/"U_?CEB5%'=L=G M3 QM([ZB'&OZM\\P4CC#B#.,WP.%H%N$SIJHZE%%B6?O@'^CM!L,;1X?) ); MG*_1_M&$PX$$ZHD\,1X!H)$,?%1H(L-+^F UJ6"*!TA"^PTZ[.)O"BH,4F\! MU5'$;>]:O/K:^,$9\5\;(PZOA2#DO?>!HEE^^_ 40!S5D((4&F*?7RP?]JMJ M#G:&'XT?N=,_9C672":ADGDWP*P5*EO2@?5G*V1O!<,$591P>4P(8J'K99 MMX+WM J9;U2U"D>.329A5O =V$&\O0X5^ ?-47I>F.$ M9!Y]=CQ'E%!P*Q?'(LJC((L=&N3 LT _ 3P%+@H\A H$"F9 $#V]0K>G4-V7 M6/1L6"AW*KIPR:8(\VIG=?<^K=UZ1J\\UC_( &4:Z@L0[T,B#9JPIHSF>LC, MJ\!^.B+S&.YP7D[/<@M6)B['W0X0E M#\@0/JKM1&G1$\4 :5[ 11$C&D$?!D!+E_8K;&$ M"4W!BDQ1SNJH8L ZBY58'N";A_A.&/).UE#Q]&1$]RJ>.636PCZ,P:_ E@N&!ZV6^PPPFF6W;@?C#=FT*G M-)YM)Z8!5A9QZT:]8H\#1!UG__W90$TQ/<"?P&R]!(+NAR,! MEC,&WUFP'F;K'2IWHU'/*DV.WX-@ =IJ<$8^5=$OX&0/%#-&B+"P*&)MF,KA MS)U;MO)L9_:\?E?=/+!9N)* I.!;L-$M"]*.4N^#=4145NV5\+A M*B$ZP;VO#DD+VLB4)Q( [-I,-F#MCVDY4 /A:>F7]AF40D\+X$^D+1R2CW"H M_%1^2GOI!C*7=)WDBB2)$;,C2H%.#;#I7F]ZV+Y_;I%[LS-H?__5_ 6 *UBGY M>F+YCLRA*LS=8BT?'0Z_/:["0A-T]/$,F/7P1#JLCPD?54\=GF8+?NGW1#RN M O+5#"'G&FQB\+]H,JIAB89C>Z1BO27\ M]4ZH(H ?A_(0IUH0UH$"E-/PU"3<] &;O&@7K(0$[T!^J*N1'4!3L#XO ,^&7)0"@.3P<,1/4Z7/^(T_*T>6E\5X&9L$ M0$"P]V_1V>V1Z.>:$+'@@0H+%=K #@P4'0L#OSFTF!FVL3)4L/.,0YH!9XW4 MV ,-\7F>!ORDTD4"X"$,.IVTAN9X4(07&#$UL%^.X"I1I!:52DXFWM9P65#W M_@(.663"1?RI>_H%7E\%_-9\ M8AP9,C*T]7T'!9[F!4KGGK3'1.^T:M"@X^-!4N&FYB_NX(XVHAKS3M6>R""0Q. MMX'5"W?!\*MB^YJ=\RJ"'A46PUT Z#_]1(0D60*.J.WZ&T=' \\ @=T7-L+@ M@EMSZA5W'^J__5)@M]SU>5EI"#(1OI\>07! M;H4(.KL&*70X+.#Y'X= M7!2++HO<_%=EV?FGV_['+Q1[^ ?BHJYF]ZSUBUD M]% "E+4('?WD>BD<:)1IQHO.$V#6"8 MJU<+_KY<=L\K [<2;M9[7_E@@$'?"SE60*[^"8G3SEQS8^2=5O?]$1\0P^[UN6[HS;.+GD+<2M3WIBA MG8D,C35X+DOT#I+X>='7W>-SI]C;7L#TH"=\R1T*BIE5@/5"6\^;.-MY/K;M M>-:LA_W[&"UW"-B$6O"0V#:4,N F^+<'VEPKY7>T>>X#P^PU ^-'(4$TC0B0 M&]@\!;K0T-#V+.#05!4W,CKS<10/.@H\NXW^@*F$D-"5##@;P),,/.,&MD=O MTL A +;X23#2CUW#3^J&H8Y$EQ9-V/D+6-&A+'A[#DB2:W[6_5"WYX_[CJR7 M,?.? +QNV E1%0[=F]( 5YWI]-+S]D_;>UYPWP6ZES,F$P%82).MVT_"I=C> MV$-XXKEB CR>-T:!W+$ E 2=0O%8"1YXW*O(I95X*MCN41/4DL1$>0$4#_"< M_P78,HZS,$=!.ABN.MBJR-2*. OWN"!@@7>:&:7.CD+-1[\_8BH,#/@(P[[D M7,[@6T3T.,\3/3; C[ (P33SD>H]"0:@$$?%A[SA<5'AD!J$, (S,!U/5 M3WT6Y"\(1R772'?]?A,N5:TSGQU&&"Y0$ATZU5&4,>+ZT,?J^9R >@C:-=#8 M]/V80Z0?\00IJ"^C+T=L*";J16QL$6:,H!][."EY[K1!/PMP#[I74&;W'A;, MY![5N?@([\-:8!C8ONRQP&+[O>9*Q.CEV>[JY'%)KWID=Z!W[VQ#TAH\. MR[6]+/>SEY^FTO9G[V34S&VJ.FYP"(4M81&S*,ECU+G2\HZV'"4*W.U 7HCH M]>Z)U9-#Q)YPRZ+7"Q8EAZ?R!M7-6G _ .\ <@?Y_[S[SDA$5L(^6H!.+OI+ MA3!R>OQ!,R:B&AB9+" +Z)"PM5$KH:.B 2^^_[^]-UUN&\O2 M1?^?B/,.B+S.>^T3%).#J,&N[@BE+6>I*ST<25G9_T!(*G!IB1(0D1WEBR1P![6/'SK2@*S>:A.)5K#O_T'.[3G3&L1$0V"NIG# MP(8(O2[MSFJ&EE7K:B:"J27EJVWOCDK-X2$M"5Z1S8 >XB1ZU> MV"9DA=(E8$2X"]N 2K%7!BMC^B<0$Q:CLDF2MG-0*PA^%X)!#A]"0X[CI%M> M8MMP]E8(QAZ(-(Z3V057RA*D'=W8^]SEFN8Y68.&D@P6"FESZGBE&"M6BCRG MQM8/G%7_5!8(O=*D2L!3S]62MFU)UC)76MEGU5RUS,]"GB$-.,>Q%M9?790B M)C4(GI)3J'.$*_$"4/(QYYLB-$. V Q45#+H]7N=RN?]APMDO@3AU1C3L=NC MGUD>%FO-7"^+C36R[)WA.X!#=;S48C3H7?-$6&GAV\52@VB%M,+#/T-\<9LH M4ERV[QPH%D5VFV &P.N\=>2P,4HM@/*-Q5S$'*@\.HZFH PP1@(O&/7XDV_$ M3CK5]J\[%S'K@1O MG.(8A<0_:P.\D\M5>T&TUB'6-AB:?+?X_3"F VL,M'M\\PGKPZ2 M"U[EG[ H,/GS2C\7/$>CU<"VSE*RQ5%V#!N.PLHFP*66(I;E>M$:]-$QPFK3 M\\]5+D?[Q]<,!T.0F M5&5RXW/-M<):'2ZA\XZ&W"UD$L3Q)_KUCCA?I(59!5T>:/ XJC7+<8Y2&CFP M=\J/TQB43Z83W]R-R;P+#(86UP-CL57(*I(>,T;,8<*6).%TQF6WU?5*$<>? M,U*^&-(6[F8$$W:[V3GS3DEVI:C*E>/6L LT^"R6%%&4I@K FN49BGAI::. M?)8T QG+192;HL89NDT$9\*A)@$[=0+M07.:1XD<^Q1L9BI,$+&/@&8"O2G1 M4V-2QMAUC'<*G.O2I-"-(++9P1=!6UG=>C/9Q9#BH/>")3*.R)U*N91BZ@@ MI\J@U7*-+$@5D#,=+J"U91/D-U-T'6LE4E03E?HW#U%)8.(TA@Z_&CQ>OZH< MEW9T?%#?G/4!T6H"2:XR%/+"Z_!D;M$_.(6%]AP**^)(W(JI0XV9F ["D#0YR2,!<9'R);$V MQ^CK8C":701XGPI1?YK'4!J9&+XQ[@&Z3;,(=12'EVF=>YZ::L!NTXGH*&$5[NZ"?/$6=N&H*QQ[%< MCF6-)'R!OR+\OV2EDTH0_[ X.34J[,;CHH@B-BU2$=*"^I/@A'1R'F4IF08T MGQMS6/G<3!_ AY,VS_19:=K!"DQ<<(/0ZC"/9\QS<-9[!56-+MR4 [2N5X4[ M/!:9L3^DJ!VDXE*@%TB+H;Z!*08Z.214[\WQ6PQ0"M>B4I@/C18::3'G!#2] MDX#Q)?5/7S!$A#)E2EUQ==19;BAJ#+=]SA -!+2M0C9'4.+KB"! MCJND1H[$6/)T9S;_-+X4R-"4"HB!JFD]L;K(2RJ(^Z<,#Y@(-"_%&8UK2TD M\295F"ZH<(9*JOTX.PZ02;:F6#%PEN(;$/F1YA6PQ4HREEN/YF[:!H>?E)LV M(Y,P<%Y*4)B.6["=<,,F6H-*DP0!@H#GBXBW3-"G^&)I<65A0#HERK]*QZHU MCB4@:&QQ*BMD'E$YHLZ0CA-?UDO%HW*T\. HKCMSG'>N72Z!"27/>G8 0E",$*DE\AIHQP\[!GI MPN9I/7!8FZ/-[4$XA5:Y"0-W:NZ-H@(UWO<##7@N5E%ZH2ZZ%D1>DFXL2DY$ M<3W:4>LQQ0!FDJ0(\4_+!J9Y.RO'8_B4F22#RT=%#M_'\_?KSRH#G91$0P"IA<($424DZ+?':_73V M7"/6+?"5' /51)GV;=MU-$>O.$=EB$$!K9-9BF;.&5(?JQI:3I(Z.%JW:AYZ M>R8@M"MVC8SD?/LM$J03F3*'=00"RDQ)2LX:\V@;A6/Y.*H .X8S)256WO&\ M@%OVI56:\'T#K_0\B$H_H@S1C1R8IS&8R6K\#"S'T@,YK!(W\OX8_!I1."]+ MP4KA)Q-X[A<#CW,GA)HE7BU1,'J(E/'2NI4+'7XI90J MQB#J,_A<;C(#Q%L>T#BU<*^T5[O!!]#T]/*.L3]L3'B=_+?F( 5T)>& ,H_! M[#U+'*/*Z^+W?H4!,=M,A@/ E_Y$<+D8)(=[;"4MGQN*;P7\S@29?]084 .J;%UOU)]5A? +S3'). M,OC*3^S,";N/X@D3.)A0%+;1=S(5#0P*5FNQ/HORV&_'0U?8MPEP/69/D2-B MZGP#9K")!J?/G?M-%@H8KKKB-1G@A8X)YW3\0 ?GCZS[Y7N 4<'B(A,-Y.&O M, __*\VD^)CZQBK':.I\L<^)[ A7U\!>ON3L%;B'EWB;9D1B>1DEXDP,G+'I9&)F0E)8 MO3>0F6*<4P>/437WI*:, MJB%D[#Q'ZNR:/4IC"$_V#,@E*ZX*PKLG',<0>Z33MIAOKT M>-)':O4TLQQY4+7"-Z1,SX2NC&@A967.HTFB=*H8WL T%4@:BT5I3;.*P<'E MG'RZ1CL=5H(TG]G*H^07U_;ZDW$//[O$E[5'?6(+L41.O%(Q9>N&J:DR5?&6 M,3E7E3 PU*ISR&$_%J $K5Z<=F*JBE8(31:-R%,E2,ER:=!HY2PP6H[ 9V^!$ M<]Q'M)$-9SZ-?-NHS;>U^;:'+)M*\T*J]DT+?:C'H) UVRED3HOQ#8*R;I8# MV_]7":[=T -31IF$78%8*U$-H/@P8N2!<@M3':2G%AQB,4$+,2:]>2#6#K.[ M1):[S'%2J)UL#P .D>$2G07/:F0XP7H$BH-TLG@2Y>S[D'#:X^%C_AXMP\U@A!0G(1/<5RE+:I*D5)-?"2FIVN L M"XO%65SC'E7::C$U&TT+ST!BNPA/8TVXN);)4C$07'CI( ^4/ZZ8(MIDD%>< M)GH=[0Y>Y 8SU,[0[=R6S.&!U6NCF8_Q6L#O"",!4>68N14)Y-SSP%(.KCD7 MV?4.^VUB:I*E IIJDF%DZW!NA7Q>FY6?XX>MVY)*F1>W1""?2&*@>@_P,I2. M& [%.'^9NROGBT:3T)Z *NI5S$ IU6*K2GBZD",!GL2*+V-W3.DN1OB) Q]@,.N\,I'< MK<8!IE8Q?%T FF%(G2]!3BNY^=6=^1L32[G(GEL4^VN'+2V+98J*F:.H' *?2[54Q2^KI>1;Z&3DR@52@X1_ M(22"QY1@I'*(:A.+*KCOBP%T4R/2K QQY^0"'7YBU([=Y.T(AA651IH>Q!5% MV;QBYUS:;YB]OXRZNMNQQ98.PK028#%?\X-PKUC(2!4Z^Z#P(H0CXSVJ;U8@ MV\RG= %AI+^04;G8[F6"R/4"A.:P*-FSTK5DS%H/197L0,$X]F#:/.P$5FKK MFOZN::XP* ,"QHQ/J(P+/=/I6:86,V3P-"T66<2D]/F_/H!:@)N%]R428S$5 MQ? W$U@Q&7)I]\,\N240 ]:*:!$TT-5-ESS+(AH^$YGK'].<8I>L(2FQR @B MT0-$9]KE\",PL8#6NL0$A1P72#H^CK*0HJD!O]G4U."MV<="7;*/X)#!7.V- ML99R9RX1?*Z8T_3KOTH@%9Y76LV;L[%[ZL=-#? "3VMV:5PW7Y>*[K&.JF59YO6"GMT!L@2>Z!,9)[E=;W[H%JCU!'LU.4'>GK2UG"27J@5.;E3DXRA M,3&\ V3ELXW_&E4//>=9EIX)SNTW/+$U$:P)]-FPK$=.Q*-/93OC;4]%Y8[& MFLY:LA[X_BT$]$,^,*<]]+: G&_E5$3]!9H*A[YJ&?H:&#!X4G^YUE^EXU;) M<#Y++0)&*L#H7&=@V?N/)X\OJ/N8HT?%\;&V#Z("TU.+0+CT6 M4\\.WR:?@>SZRG5)U/6R] TF;2[K":-\ GR'1H4KQ/+M'8F+BV-*("[V1#PX M"H,\L-2*&!$/*:X9'DMJ@(6W>1U^T?8>5QO\D7S*YE +N';O]3@S,GAH^#MF M6:<"6X"Z4 LS(UHJ.R6[;5 GL$@"\_0V)^8K<*N=4;7G#E9/9ZD=VXF1]7Q6 MM=:D%/Y/JH@ ARQ)+T!LG3FG5\5>3E3:O-"'C'RW!O?$3C:%9RYXI)R(*53< MN:;9=]A@%N-!$I\C5$1&N7(NZQ/E[K4^^3M$\[S2UN@M0ZHXE4'Z&0:JD4. M# V!46(&O*UO!<.;=(9HQ+U97.!L/13B['I7FK@C%)0BO]2\PP)45\F0\%3*@EZYKC"4]K"U.OX++Q1'@<#>HIHS\5>I2^W' MMPWHBX\CQA5/'%C: M938@P:Z?$T,FX[;<:MS;@]H(T@WHQUJ+O!;XRO,]/> MX#^PIC$> :_'H@GC[V)U-%9(42#5,C];&5S/BQ!QNHI MZ_1\])P>KOX,R;0Y*>=SM.W$?1!GH/).K?U8A109RD6-,4 2),1,*S MU]DNBUS@K!HN(_R&CJDGLQJYSK0F".='P0V35LK49*!/X0H*<<=N^:YHV\*\ M +%R*M)NS8#$Q%RM!+[@ JWKJZ!!>6HB6S$,35XF?JU_%6;2M?DG(%C,)/I< M_T7=)M;",\/#&B1>%E6[9\H@@M;Z M PE4CSVC@JQ8ZO#YJXPF7]%(QW!5@:W0*-+&VA "^7]++8(KH!JZ@FW+3B0A MF&@=VR$R5#M@RO&)%+ ?@?]I>T<]M\Q 1)YSXUY]-P*9Y4?W:O7LMEJ,"D>\ M9(C4C=7S95Q;1WJ,7%C;\.V.+^<,-3=-&F;H6FF]11S)6I?&>W #E62!J?FL M9G);Z82C/IG:A%XHPBI3 2=5XL"&R#F(NE? M3)$"'5E!1[-(2%Y12R )4$;XY7-EG-]&L85C 6Z;K$@)2V;BF+"V(6THH*0) MN.UI)O.UN N*2G;\R A!YHHWC7VREVV4_?'I MI]PJ>WS*$:A3K.I'.7G"Q03+WSHZ<=\BXIO*C<=._[[4PHCGE-#6@@< N;< M+*_D8@[B8F9QBG@7]0UX.-3VK+C%G>+GHNRIH?F;!6SU?[K\3:4 MZ9<$-R@BW 5\J7N)2YQYGT:9G"W=(\B5,Y7(!+OFA%$I1V<:LVS0I";^.04N MC86"7U61-V):%[1R81LVM%CB1$W]KZ[( MTT?&&O>"WQTQ[U'35?4-<8Z,4F"4>AW&A/.TC>%XVQG5-,3O)UAID,+ MFM9?#Q%,=@<$\; ME502[7S5EZYNQ<_PTQU0[-'G.=+ !G +&RC( JYZ@[15_I(M#J.8O<.(QZ*; M$*@B;@Z,=A6;WZ6S_33T$M**[XO!SV &)W90-U#LW$#&(!40_T^P8"]G5<]P M>^@CN:F_W> #@M_:D(\MEW*8DCPH&Y^IN0G/-)7@4U!6P7:Q@9.J#:@JD/.5 M)66T*T566("0C96TB)N1#U3>F1,20>%G!$!9P=$@R=#QE0O$&](6]@&.9Q:- M::)G8PB)R!\E]8PP&2(W^8(2Y&<9IC+!2O P0#L4T>/0GY%!%;1OZ[:[-B21BF:9V.> M2%XR_K-HL6"7U4/NX9(!L0'KD1&/E22:0?DL;Q"V-"NC2#>3O0E^GT?8&[%E M^HVLQXL01!12\LK8W-D:=Q5NLBBE80 1-0@E2)JJI#:99HW'(0'@&OO;NPJW M/VP9M;Q>64P-(M[V-CQD#O%P#=:P3>5GU 9=P5%;!2,\UF=4TACT]T=[8 87 M_E%%)#'A<8"$UX0Y9%$@4@9$H8D^92M8R1=N]RA=Y%R]Z;9)9N@3R-?M]OF MZ]I\W0.J\DHFOC)0Y)_I&38$_4' CPP#O;UJ?)4D[H!)!2-2IALPNX_U+$K< M/#P'BT"?-9 6*Y ?'"(%>ZT&8@I-RSG7@H%$:XQ)1-BY#&NG$3*%HOX5T3Z1 MRD4?UW@E0);_+1IBXB#4.NL2$S)'NJJY.*Y KT4C.I^C=< F/X7:39QQA7(2 M;#&P5M)+4^%&W^<9Y[[.X7UA%;,4FE8V1=Z4MV:V@WVH< '(R*ENL@[XB#6# M--=((4AX2"K+\^6H6 4Q#\X9#!\KQ2WJQXG7*<^+]&?;(6@Y14\XTR A6M/V M3KT6_];\J9QB%@S*8()/*CB/>,R=PZKD4)8-G%6C&5[BRT IK4E_\=G;"B7? MNY8.)CFR*GW5X,@K<*BT>_*O?,A7]G)M^Z3!:450S)5 ;11*]"+[]:A%M5O& M2VTUA4D_8J(4UA7SU.5:YR(NF"G8M]\$1_OJU@@7']&K.EEM'%\N'LW[+/'' MUWD5K#Y0"EV&-#CD4.AR>V9>,G'<<41#UCL&04YJCPQM>NP< 8F6YF?^Z%^Y*9 M_%?!Y*&;)$JW%?>NO-^7+94[81 M!W&!9T")2)XL9E)C8UN/9N_*#UX+HH1S MZ#% P6%W$0$SQEU>(0M69?],;T=3V*?>ZDMQ3+AX I>JC:[@>@(N2+69$)FL MM="4$NSX(4SZ/!L6I@VK6-) JPY)USLH#">IPB-EKU^(QXU-A+FNGDA>464\ MT\(C=2=)8?7^YBL]C6,9[$=%B6:5'K9QM;&2Y\L1DAWK =,Z4&MP(\4DE@'A MT.2"%28RR&4.UPT4$3$RUK66[6G%R;.Y2.6J?:C/E1W]^@YXTW8/*G#G40,!S/&;%%O; MBY+46\0;Q&D4WZFP&V,%T.^O&(7(@)H^+L75).Z!7OIX.X4^\VJ4!=)F2^1] M11B:U)%Y>2'H F*P8P0=OE45#L"-VH ?4)S.*^NW_;1UK*K*%LU;-*&^NM>H M8!Y](]JL"R1$7$)$)@]TS71E:)HO$N4SVU:WY4>,/'@C*7W*M>V[JPC%B$,P M**@2"?_8V4S2%T!**:^ HDO&08KBI/!#)S/6>4O]C6*&912\9$6\I:+,]%08 M1!$S^ -MZ_JXQHJ^I? 0;E(PC\S=7IJ2FWSMY+FE>0#\L"4[P9'>NM%Q-@3+ MY3!&>C@$TGJ!>\SMF0ZYS;5+F/HTDR),F330#Z^1 ,]4\#O+S!,)S[R&=,45 MY @!8,O',3Y3+LR=V?$K>9D8[#@&MR M3SA#4U -EF'IFP!8V17OX80"(]3QT;%!B0NVJ.JK/FME V&61[ M+,X_J\N.%WC&IUPQG8M>/8DQ81CY+Z;;]^JY5O1Y$Q2+&-2$HF?+& UX/5#' M?%%4T/ZS58Y_BG662/V,OV)PRMP<-IZ;(7\FQ#)L\_$-62DQQ=[,RC-LV@+G M4HP=,&XZ!P<]_8JB;/+5;YXWV3#*1:"9L R87-2[TPQ].=J296RM7FLF\-SL MAU#21>:85-'8)-]=S,SGH^F4G-D%(O=1E">@Z*2K68@*468([DWJYC?;K)+7 MNQ2E.A>/6GUE:%..&N6%7K D2#$.SI+: @51\2CG8WAYWE]MW(8J,+BR@ )0 M6P(Y.D47O)[8NP;EO"F@]=JQ0>. [\!OL1"Z?S7.HB3^#^9E1%O*+' MW:91)6Q/04#S\*TI]HN&L1DX8.<'>*U'IA!&QU3BX$&Y>+"J+L;@ 6PRTD,= MT)I, SN02P=O/_WSZ-U6?[\Z0Y##<%?!/RS5-7$,3Y!SO?;]:SHY\40M!,V9 M27($B9E2,$TGE RI9].D3% (?ARE/K N>\:NV:\&E;$T*@*(T9]S3.^T\*\8 MQ^4F1@*<\MQQ3-G"*I5\\6? M1@INKTW!M2FXAW3VR7TFA\.FTQST_](T^L)/#D2V!(-KD1:<#2*33T:NV:"9 M<4R\ 0D7BH*4=C9"9>H&*G*>5J,GZ5D25;IGJ(+/&I9+4Z09'IG#G2!#SL$< M1XW:#3Z135JQ'@T$3]59\*4;HS1-;A+ M/&+/V+G5K(^U3?[1#0Y P5 CEP3'Z,(]@^@?49REJ0WY4/4O/L 5>@Y<6:2J MAOBOB2+!4ZCGC6KZ15,8-!5ML-Z7H@CF1IG6:GT^C;(8Z'PM2%(:AQ:8)O=" MN2[Z244XA K!:7!L-6)3S9H*!K8G-&,>3.U-%;;)9FTM\7KS6ZG:63&,DPRE M,L_M!H?('MX;_5G($M!6U70=[9(MW&FLS>![B6H=EE8DU\ M?YGL9%K\7^HBKH/!(/(XK+M@]*"$YU^/@K/(ZRQV 'T< )B4F3F7"CP13]N@ M)^SV?JX>>MT]])BH>0[A41;E,Q\28D;9/VH35MYX'.FU-'8P0:ZY;M E$4M^ ME)$-''+#XDKQ1RIY3WM_*S!VK&:H9/U20_?D/U'"WW?IR W:<[;MZIPL;."_@6'GR-4'6MODQ#V0M<84..*#6$DN M@D;MQ=]67.7:@W#*KEI\ /_"Z4<8G(MP&H!>FOSZBBT6ZU,32IW9O0=>#J=#+REVKPLL4VP53^SJ#H2.F1%G)@=H'^FQE:G@JLX.X M:2)TY5ZU@P?%9@:OP>)2FKMNMT*@/=CKPUM",F-"J-;A"V0/UWLXFABKY*O) MZO P0%-&RTD)_,F5H4LK"-%!8U33 87Z3*JV0]:N*3ZF#B.=P!>USDS-?R7* M80,O#@MUNXU9)?6.E%L*-1O:)M'T\!J8/WQ'W4+I&T B.+ M_C^G!-96N;!3G!>V)R:Y5G QI!;UO6("C^&+O=(_!N V3JR5!Q:3S&MDKV%, M.DA;D7E2;N_N:KLYC>$V=;E*.!OG^=^^+O1Z/VH2:A4"F!EL2)H-F]D49PP^%T1G-(N7B#7188+,+@CHWD_$$,$.CJYC?S&:S._'*Y:A= MM!*-6*8T*9ETE^E4(\EHMV67=+&%ECR1&V=&4Z;4EVD\1#==:7WRZKW);]B! M=%9&H0S4<+UFU,V8S_R.+*JG*23&@$.A.#A3+6.ESJ_,E8*MT&YL%T@QD. H M\(S0RC6SG$&+SNRF<@^F_=K5WTQHXFJDV$/D?FV+&UQ_-$\$KC=.V7*/ZI"V M"/6J(&I[+4S>#J(H*6Q3J3>@>;8Z' ":"0-IW#BS++B>^9N:Y( M#\).[(%7)PP:U2GEAV9H +%*=7V8+YHB9DE]O)$Y%:I;PUDT"BB_U+QJ@JY"Y/"5 M5!;)G!B/>&OZTC"RSPL2M+W*&BP,G#HNCDRKY$R=L0,H[(&-:2X[*%52'H9Z M!;@8OV;&:!LN%40;?P(3O,TZ.$"-\$8>VLWU8S4L;'13L5;+=L"84C>X9I![ M#I'NT2?@]ML$7)N >T"Y_>G<=*1B:0O"^5'0OD.)>2G[XE8"N!N?<=&@Y#%- MK@/>_SOAI!1JV#7W5,4"SX8%:N++HK^X>]V=XF/!QRK%F" M"YY[I$@=R[/( M<(DB=RDFQ38X#Q=B=XJZ$0I"5^ $#4W"HMH[5M_:U:5?K;]7J=,.59"&KE0$ M=/N9\WS R2D+:]OA8FF585LMX?7L:UU;Q.V5*B55S'4_C6O"45(.,I_C M3B[7[8-/4Q2YX6()GL[$ /;*ABWA"3K#TC"E;E ;S&@REY;02-L:3*T$7-P) M1_FI^M'\'6G-LHX7;>!&=BHJW++=3C9"4UG,I00<;%L@K@C)V1R#0W,D0C4[ M-7.I3;*@/@]N9QL#17C/%A"&Z(@Z,NK9\B[=/0)!@5E"X[-Q=W3<1#A3 MGV@VWACK]T^]NE8AL[%X,H?]Z/]RT5BUH!.1*N@L;(V30VW!RRFIF-9K$G+V ML5_ O]QC)Z%;%XBHUE:=\AR,2Z];U^M[#,'2S4UQ.H)&>GZ4*R#V[%3Q?+F- M818M+.*YM9%_%9P;KR4Q6I89N$C33Y;/- [IN.!#1P(UX^W-# UKD%8DE0R6 MY%8/GF)G?0W67/1/'E#@^]V@B$PZA/2-$V(,0HG,B*77PY3/WDX&7<9G CB?51BDI MH@5CA 4T+0P=0-.>NUH15-9G^V=\"N@&)Z*Q3>VF>S:).$33D>(1J5]D:P1K M>#3'6LST0_B]"Z2IB4D!48V//$TE":(V2H%\8ILZU'D:A1R_YT):Q,J,ONEP MBY/ZGNGP$71-89IV"_^>)$R QU$=CG>#;KZ: H>#C0BWC"N3N8%)Y@E8Q/&S M.!UCH2[FK,W$K55-D6\9=IPSH;Z:ISXDP27GJ".F:A%ATC)AM7_6.L-X['BY M+HO+]H"YX\K>S.$1A+10 UA'W@P*A&3WU+5)GCO+M*ZR.Y[ORW:)UU[ IF6',,2V4F M2GJ[5\2L"4*4"H3A8]RO)>K,M$;7[QUWP2\W"@H6= [2QZQ4/N/Z\SQ%5!O[ M:)?I"^C:FU[_*[[R-66#\*>E M/]-+7N>)WG;^9U_^V7\GTU107^:HA(T>6FJ)_5!P#Y?#+K]8,XX*1V4NB]ZW?X. MFH5!&,4E?B&? ;UU[#$4[ACF? QZQ3$P[J,1J8I[F3EMZ+Q)'/-W20/P+M8O M<+<[JB]PU%M>X-,(6 U[;<"J#5@]> ]+S.VC#EM)IESDI&<SU]W> M;F^FB3?3RK*&7DPKRQIZ,:TL:^K-M+*LH1?3RK*&7@S(LE%[,TV\&9!EK3!K MY,VT/-/4F^EW=UN>N MTB2-\9?_\5._]]-W'MGV=K>W8Y)()KG67WP+*,T:F/S4'1[JWO>7_+C&'%36#[Y4T M^]W=T=,2-)@,W9 4:0GGF1'.H"6<^R"<)V;:O C>$K3PYHCGJ5+/C\0:GA+% M_+Q9BFFMW8JUZ^KY7O\_DXG6T^E#&\!7T<+QX3\//_YQ>+))U=.X$S#R8 .D M/FS@]KZKKG$#^=B(I?#CN[N\-7&R7C!Z?C#3L%C_)>1]W^!F_U@7(4E7W__'2R M"C7#_\@-WYRJ<28 T]03/HUT'&[<%6C6:3RPUQGV M=C=L=C7AG%I^:/GA._AA,.B,>OV6'UI^>'KA[N]RRSM[O$NGB"#)(-H&GCA*IIEB1,Z29K*TF9,?UWT/5['Y (9ATS:[ M:6G8Z>\/VEAURQ4M5U2X8F^PZ5!"RQ5-()0[-9:;MME-I MVAJ,V"?3L;KV_ MT]UY8EFB>W2)FN4.6B^I/Z W'LN E38F>.Z/"74]'8#W-IH6=7F#[@:+UMMT17-VT/3@M63\MLN[O=7;V-FNK/?0-MV3]M*+LWPDCL+=98?W@ M9-W><.6&M^_ N7BD-(XVGEE* M20 /WJ9Y$:33(-LP\,$COVJ;&GD1J[,TU, &_'7\Z.0D^'W]Z M?W2Z28B YIU"8V*.3T<4/LUFC/YV9]#&X%M^:/E!^&&_LSO<++A4,\ZIY8=G MWY1RX[S!J#/J;[=9I6=Z^X/=[GZ;-GH::2-XR8F.X0-GG>!,)SI3,?4=J7 > M)5%>9*J(SG6@ORUTDK=9I#8NV(;+#6AO9[3?9I%:MFC9HLX6&\>&;]FB"932 MYA!^@"TV/H2UO?Y'=/V]MKGJF620CCZ^_?3A,'A__.E#\.GSX?'!Z=&GCQN% MFV[>>;2QPC9V?L.Y##O#81LZ;]FA90=DA_U.?Z=EAY8=GG,N8=09#=O^I.=Z M^SN][B;3B&TFZ6$W^JF8Z2QX&:=Y_BJ(DDDZUYT@T44;!VSC@$\O/'YS*3?8 M9+J\Y83&$$?+"=_O_(SVVRQ1RQ-/-TUP8^W0Q_KJC7M [;TW0Q9^_-!F?)Y% MQN?7P_>?C@\#^=?IP7]O=LAH\\ZDC>NU8>X;9GUZO;:!J&6'EATDZ[,[:ON' M6G9XUG%_X(&V?^C9WOY^=]!F?9Y,UN>($CU!H;Z9-J$VHM=&]-HH]QO"FFNC MW"U/M#Q1!?4>[&ZZ[*WEBB802IL#N'7N9[B[U^9^GMV][_3N 'C[DO'%_0V$:<+>-VX\]GN;!BEN>:GEI4>Q M]XU/]=S>VW1XHN6E9\Y+-YF>TX2];Z9Y:;B[23N^H6FL^V>A9T9'N_WN)J, M#4V(_5SS^7XI%-S<7;][3_3BGM.-5WEKQW9^LJ\MF"? MB/C!^//KJ( '3-ZLV,7G]$)GP5$2PJ.SR^#$#OAU)-: ?9W.M!U/A:.J"OCW M@E8>F96;T<3PP]E<)T4'O@"LD\./0+WTC7&9PR+RG)_QV^<3PB\\^/RV$X1Z MDFF5ZS 87P8C,$\Z09H%+X;=O0"V&T=IT@F*-'BQV^L.S&^"*7P$GUO,,JTY MF#6'3<_R0"! MRNG3?Y4J*W067\)[$I[8C ]3\#_G41'!BU2>IY-(%68%^*W?2ITEN;X,F Y. M"IK['"RR]%]Z F?X02U 9/X=5A:)$\(8,,&+1*6EFAX!&Q/%70:L<:W=0.^WE"6'"7N<,:ZN- Z\7>8 M!Q>P93C)(J)GIM-IK@N\MRBA2\3KM@^ -^7P,X)5RI)PJ/4D+D-#%:=9.1^7 ML,%#WMI;VD"'_G9X\FOP/M;??H,E++3ZBAN+55+D_.=_1'&6ID7M\/!(\*]P M)KC$8#%30G(J2:GOD4F7GF0/"G9]E&GX56C.PR?W*+?4:PC[NS_A%) 6,@=*EVR<: I,#74VMN L@RYL\9Y)FL)!%FM"9PF/2 MC,GV$J];WM)MDBR!-<+?+X,PBX V[$:6SMP<=84E@ZNX$2Y65Y^UBNTJ+"KR M; TK"GNO8^HTX94:,J+W ]$CM08QK"'.&W/RM]=.HI>0B]ZK<29CZ8DVWT[/KJ"DAVN W\RXIKV.L. M5VN8*\C9TUGPC(K&&@RZHQ_46&H.)F=!CZL= )[).2KJZE%=I-E7?\>B&Q9P M?VF8=X/W-]X6O@"7TKF:[7T).]CO#G[F+PZZV[>7BF:132+1N?H7+'8"'TWG MJ%B9JD0_ZB#'8BWXW<*EG*0E_(_*\6[//.'[1_>D.5=S M>SEYJF,-IS0O$^&5'$SZ::;X.$M0"1D7ZPV>3@!^[&3FN'))))Y\ M )%(&A L]S5V^A;)!>''E=(!B-?Z R3K>MV=BECM[W1W0*Q.LW3N"3)_A&X MAD\"#P[+S(CN:TT'H;]?PNC\/_\&_S&7,XGA8>C)S^08;4P#CU#\^%[OY_N) M7+!Y;RYTL.V-$^8;'?:];=!___?_\K?C@@U;DS1.L]/-K%5^HRUSVO;O?W>Z;S/]K&]/!DPGZX*KM_QQX/^,)+1WO7'W; M\@Y1HAU;L9["YOEKYG<9GXC\,@51 Q3Q&HUV1+['IU>>2W=5I(M[O*@?#\9= M27W5DUIU T0*5<&;OF=(HAY_L==;9UI6 M9/>UIAU:7QH])7"):[:T2MPAHU]>\9YQBN//C7&:WM]6>5V@)EV R89A@>J= M@=S-R56<1L7ROE_TMSVE6=.U]##_^TQ'L!+4"""D5YRCBQ[XEO!*BJ[H7*M8 M;[;G@6?FA6!'@*LRF:D$C%-D('2]C(4QC[XYBS_+P1.#U<$&SZ.TS.';&1A1 M64AV(Q\14*3UK,'!.OC\ED>>! ABK1^]. M+5\^GR4F7Q/H[-S"HS0AJ6+93HRJ=F+="14V!=+H@'68Q^4>6QFP26 M&L-8GX PUG.'9:';&8\#"DZ^Z.]W=YW)>!TK!5=RT?[-N>A)D!I0U@!);1<( MC$EMAWYQ:U(;-(;4KC1)[%"EW[RA2@?5H4J'=JA2<\P57Y5G>JXB='ARRM1A M /)%WW.;C".D%3""N-PWS)HX?8X_^4R$ACA3"/PTNKFF\0GI<9"(H"7^3FB) M1X*6^!'1$IM##KQ&U(L$Y-BY19"11&;%R382C8M0$=8X0,_XP;WD(S!>R7RT!/X9"!_5[F<,(?TP+T] C-'UK8A,-FE\() M(0J0L,H3TRA1R02%.O!MH4D(OV(E4J0%BB+_T#S;$*-ZG'9S>3A.P&'(<#GX M(0H3[7EP_',Y!#X4H Q]&0!=?87'X:I+BNZ]?<>ZA")SIV@8EK#C)"WJ$5GE,"&0G MNPK,3MUY1/+[I*YT*Y^J;\U2O']6A$J]H_JV50E+1%'CHIZK3*C)Y1S=2UQ& M4N#5PZKG=.$J24K@2Q!.K&7]18(]0S;N8-0=_HR2!J6=_:;]1!C!E[/<>8(H MG\HB!0DPU2%9296G]7\FS\\1H@C!,IFJ\S0CF\2]AE=&]C#)/6^!8L""O()K M1$G!*]&)6,&F<&"BLP(L'I!'>*:8LJ!7?-.3DK:,LA=NPPEY+^(0>H=]%J=C MV$P$%GIR1L^(TPM:B+W;EQBG&?3>_';T^^D1_=Q_\\IEF?@"6%C=. ,VJ(8) M5E#1=60Q<.G$974-F[TE.5"HP'HAI"WN-A_S/2*!F#3$& '=:RU^7?\KOO(U M"#N=X4]+?^:4#NEB>.OOT5]E%)J"FK=J@;F>X%CG(#C)JR)JK;)NDV3206$7 M1SOX+P67GEVR^!GV36P*U0#0NT)V(GM=Y3/Z//V@X0S.5>Q<0?"C1UYA%$4' M^WZM5-TK7.%I5R-]F+>VQM\#9OPD]96@R6-9C ZAS-DL2H$+% NNR'LA"I!JAJ.;=E1E[V9JMRI,RM$.DL2P]3 M;(QI IM0B"CP1Q8G.:A>)F+.,D:')E\QB4&>15,3>*6\Q9) ,D$,L7Y7'Q?O M?N5^XTB-34D-R,(]4UNN^+&8Z)&9=O^3ML]QQ+>*V>L"$#((LQ!2JI-)+L6HDX! MUR3=- MYOIDDI7:JJ]5X9[!3LTTJ:1NL>B//'!/#6UW^ZNU4)E[YM *5?%T5"QGMN^K);@!.-EEB6#AIK0^AXAP]S72B M=9@CI?-*\(GJ7$4Q$M$66%=;.9BR00X>H=O#BF 6O8IRY_P^7RC!P^?J*U"M M^ -$C> EE)EN4"7ACGD7>YX*7YC^TDTLD(/OL_]8NB2:OP8*DI= &61 M/,AG*C-9KCDL TXFG7QEKV'H72)]U?J:ZI(B@E3)<%9BA(JY$!8 &C7D^V%% MP(EAOG<;F0"?/YM$S/'\PG11$3F5<-OHZJQ@E4VZP<$*MX\T CA'Y"$E> *8 MF!,Q)ZTEY!,Q;0*S2"#8[+7:53$#SY9#Q/2A#HK=#A<7FW3WR8>WC8F#WD($ M#2K^YM7N9J7_1]7\&M"#>U[TF[("\& L1Z:3$^ZL/ ,=S7V?D4%?]+T2[!4. M_8 U\P_YA-<77Y-C./3RTVL]0]8^#^_^5>3R%;I]E1/H6S0NG7*=#7 #$T"J MX'M+X8F1HY2U)4@UE=\-?DV+F5,NWM:,1;<4V01B0SYR=LVR(75Y36>)&$S= MX/?HJ[X $=:IF#"K-FP/REG&G;K'C;:@7JC(.SF71S,?J=PUL=C0#RC>PCAZ MG(+IPM?YM+/"%<_10RQQWMCN05J]@>6#PFEOY$?!J@8(&#R[-]+-MZINKBCR MP:ZSA*_6Y"D5Z3AMWC'J?/=[U7E3Z,6+F+JR?7TY4JNE5.Q9#',I9@3Z]9(J+/34GDLN7E5 S8=QY+(SDTFVURA.@." M8&N#3&"F0OKZ&2:O$[XF]P!6?MR14CN&$+0)G.;$TW]C(&4CC5Q$F=*Y"I,I M)-]MNQT2/I%YF-J_6]_QL,S2K3'K;>^IN=>1R0#X<#[S:JL"UO^\,$=WR2D#ZY)>BQE)BONB>,99Z%X M4JPJO3HK^Y[3J^PW@(I$OY+/B=Q:*?MP+.I,"Z9#H*D^VP]S)GG< MP5N0KR#B#XS0K8H^,1/@+?P-=EL7$4LA;-O71C8M/0B.[X.Z#(2:MT7,8Y<9EEZ0<6D\!CP)4SYU8[G\U-^@=2(W,:)QHHD;"E,0O.:5:]GI;#TZ7D: M@H:3%:Q8LA>.)%LR5A,MMBTNA)H.([)FZ)R4S4.??'I_'"QB$%?][@[7%H(X MXE_GY01%'S 7?1KDT5FISC0OL;X(XBRYH8[C 5S#-(UC/K&I5A3*Z:")C>5? M:"+GK[&\7)L*QOD\*HPL>#'J>?%89T\AAP)]G^//<:ILP0'JHRRDVAY^DQ"" MP@6PXZB?ZT09A4M%IN(A3%49,\J%"B;\ M)HOP(FX![H4M0!(EC;%9_T23_](ZL#6EQ-$?L;H0ZD.:T7F/$05-V 99=I6M M-5NZ>BB4IPD>*5CZ&0=];0.RPC#BE#P/[RD@$I<]/;+'0C3'TK+ G"7)<;ML M/X=E5S-3=I&Q+@KIU[<[\>,IWC-].=[W@N[+;HF??B.W)*#B)3#G+BQ$@(WU M-"C]\*?8MHM8AV=B$Y ;*<2+-RC^+% !.Z.LB%U,(\NP7XSK44F?XXG;_DB, MKZ!.C'*R+3.T"S,).OC6<@<-=?141:M7;7?T=W+8$?GF^#3? $;( EQ(OD*I M2I5R<1-+0]:6FP)TSH-?LIUC'NW*OCV)4(@CD(-13]6$6UH<7_@3]6W(WZ3C M!O_,9K^S\(FW;BALV K/?#%U&_G3J=D_M&UC2L)J(XTD00(=?K A;%N@/-8( M/V$-P@X7?R(0V"+36+EL"S?GZ/O\FW[1\7@"$GVL':=A*&!,'\8C1:+(\$RG^ X,D(VYXZ@IX]&;Y!<8 MZ\#DA28?DB(<$V7T!8I5$VA;EJTOD7'1L>;$ 9,&Y>#2Z2M*RYB8B7VUMS00 M/67&X2E\9QPQ(R2POYF*IR2AN&F4'.1RG(/?#*Z+;DZH\DC69OKU6"\H=Z2A M@Y]*RS@D*3G6I@8'?=1,_C+&S 5*"%*3<" DNAGY@^.,"M/^FCH-@=.H=,1H M;?\/X+[I9'))^C%A02?/YP:PG(JID:1[U^F#O&EPSAI8. M4,%Z@0U+?I@3!!(2VD-B8[XUKY0PIHEC1_,Q$;TA+30[IO4G&&()J[2@' F( M0(2OD2*QV=NY"C73'UT$JP7GNIG[J?-'[N'PH6@'!>.J]ZW,\>("(G1,"LJH M?HP$NKAM%_N.T*,T%&Q1]N3T#&\VQV!8E53WBY8#%[JC$W&5["X11M*8)8LU M$TJJ]\\I,#&FOH#*'7BQ;M:.%-21DR,-Y_&^P-@L]6*,N&K,9!NQ6&2\*MFX MNG3@BETNVXST?28E MII"2L3W)^[ ,K3P+R\K(E7V(E>"SL<=MHD%D:HCAR72!O,U]%-CS!Q=LD]N7 ME /2U'L;Y3,O'>9HESHE*_6!(.K=M:@ XKE1>;K8D[^2X%,E//,Q1?PX#*P99Q,R)2C%NRPL # M_89+U=\F@N95)6"^"4^8>&]D9@&K.%_=*6/3 OPXN*7&4/>I.UE6[ 2?2@Y8 MQ4-<[L#:\:J)X #B"/0_,KJE%P>;1Z=.E81XWI24<4]&H]J']K7,8CTT#5LA M(':S/55Q2C)U$7)EPG,'4-PIT MG[^*VMY)7(%E9L7HM&Q:%&H,QX1.)VV<+#:XF!G5=MLTII=1DO 'Q.>$0KHCW;H9_2_*5BX2 M<.*2;F-C R2A%FIB MFO/6NYB^,';N)DG'0RFE-%K%J]:R=>M-H64;>B2/Q3M@(1I MYJB>?"(,JBCTK3#.:MUPYCC2R2X :*G5TCF:9!C(0C6G%XQJ4F"$N2/XY6"F M=I]&>FN[36^UZ:VGW5Y]6 O['MFP[RF'?=_5P[X'7MC7MN ?_GIT^N[ ]. W MJ?\:S4@64JZ\()IC8(NM13!.THM BFISJ2!F4]^5HO'V;M%DO!IK,7AIK'U2 MZ&F9P^?R5RPM>9%&M/",'KCH6"UR_=K\X!_-#NQ/3@7I&8U^V(*1K,3UJBQ2 M\PMF>?I-13+TW"0;^8SC<1!*^RQLBLPLS5P$$^T-!H[N#KM[^U>-5O5XU'LX M1E:F<#>&R3/:Y:C%W!,UXHO^W-^&/MQ)K\M\? MG)0UW'[ :Q'53R]>NJ'G?3/][O9N>S--O)G][J#EF4;>3"O-FGHSK31KZLV M-!NT-W.'-T,S&NG_-V F/^ 9[-WB#.Y4BM]W5.C:4UGRU6]Y3.#8X2__XZ?1 M3]][9,/N[LZ=GMG>]QS95?B1I^0_?V#_^9#\9QLR:/FFY9O[Y)OJ-.3^XEM MH;'[&(:\<;ZB()0TV?4Z_$/+6,UFK(T3 5_[\G^KA."ST.![6:C?Z^X.GA8+ M5>!#6]*Y2]+9V7]RI#/X86G;N(GS'VW[-)4Q&&3DC?%'XS;\7;G(&G<0 M+S:P-8Z7-F%K'F=3ELO/& XK:?\* ?@[6V2:8ASPF6#0Z??V-VUF-.&<6EZX M0UX8-&-K&^:%W<[VWFB)!!Z=JW&TA/7_&(S !G/QP^[:F*X;TF&/G4GW]I=9 MM*7J9TW55^9^'@=5#SJ#W>$F5$\3U'(5VLBKNVL-S"=O8&Y86S5A?QMF]='V M;NMOM>S0.EUBSZT(/SPZEZM22X[-WF[:&P/3M+;JC_'UPX77'T#G-6VS&^;X M_;W6@6N9XK::KVF;W3!3]'=VGJ3[QQU'K:5[#Y9NE46&P")A6J()T@R!<*=I MN.;M?,]URXL2.^7=SE# ].B_RBS*0YFLU@W> MEQFB6Q#^R)IS!\;!_N=2IDLP-D::R8"#1,67.8.]*H,.2H,\W?D^$ ;(,FTY M#)#8H:E,=D)JWM@5-USJJI4Z M "1!N T]3)D0,^=A%5UF!<)63M U!M2$D8#D/,-4\XF:D2J,VB5K6P+>P:[\ M,,HG&0VU1; R1"\E_-WEQU0NB0"0'0XV/M@A$A'RSIV2W5H:>Q@HB+>($(,@ M=P=.J'R&OTTBG3<)T<&NTQ-^"UDG#V"9I;D.:B-_%4Y+"2YD0"2#$Q*LV(7% M@V9V,JAU.$X&V1;'\LIH!X3W(D WQ%E#,1B>6:0PE641B7E56&PV%F_\3AY@ MY_Z" #P>A!"\A!6 @$T;?C&LRNA23AHC:L]\X09,^9,FFG)1I]4M=]R!F:DX MWAYX&#)+)RXQK8S7D^EX]:F%C&_$4@UE0)P:WF;@_S,Y*RU@8)7O\^O,D)=5 M,LJJQU5KRA"ZNS0+,1/]O-%O]>E /#%U3$.0X9(=+2 <6H3ZD,@:'Y4AAB\+ ML7,07&F9NS&!]LP,D)Q1%DC[2.5IX@&2$5QVE$W*.:*83O ::BJ 1Y^@MI)A MD6BX$#ZPH@E"CLP95)*>".1^B7]$^#I]_0TYC<$X\2HD8;P0G# VC03K#D=? M(C@BHSR:A?)LT0)MD%P@C9D;+"1J]J/=K"%C\'^(R,]@>Q6\-@L[^<8W%BT7O+'<4Z.@*1PK'=7?SZ9U O_,^C(_.X@R1!BC^F,[GM/#<>?4QJ;8P3 MC)/4H8)/9CC$P<((7JA+&I.U6,0\C>/*?80:3*MHS/,C,ATE]V$3+5/NP]A$ MQWK",.!'/%_$-XVR-(&?)ZPIFF0@?>)I$W#IP<')'T0?6[T!B^ H7S*,JFBU M'FRA!V$JK,L/$$9@NOZ8@OKL^P\CR$>>T75C9\#0KS*3N^789:R+3Y>58^_,]P+5?_+ M_B ,OVSO[_2^J,%@^TM/C<:]D=)J.APB0)]J%)O\])]'IX_?,P./CX#G_QN_GWNZ.3M[]_.OGC^/ D./CUTQ^GP8>#XW\%!:?W/]' UV)E=*=$, WJPVPFSWF6(:8\!%V3&/=C0>8L3FZT;/7S>X MR,.'73U>IS:9\&4.$A^9BR]LYTUE*2-(" M("_*#$[,3N$B-PX,;(S7E()Z3A.X42@WR6FRL-H24 6/!#?O)"/*=9"T8+ES MG)'-*!**9E+\FO'C.-U\:?HX7<6X==EQ?<,XP&.XMT V^=N8-#MC=H+ MN/<+N+[Z9:_%36SDQ>QV=QY28K57>S,/"C=^W15=Z_$W#DCXGE!@KY;VC_U4-H#GN=_=OEO" MV3A>YU$RP9"M#EZ^T_S3*XSN;0S]M269EF1:DMDHR0R&W=XC(QG$SUU--M^/ M%2Q:NFG@R3<_E%^IQOAS&B5%\)9R6X^%A1XUYC8+W*:1S8\)9,GD,7AG2T4M M%?T(%1T:W->6C.Z:C$25/RTRHJ:'EY\SO76JOKWZ<07?*)P!6^*X0R_\8Q$, M>SUI%UJ@*K\)6E<]M=VL+3X0E,)> \]A$T )DK]HPMXV#GF^.^QO.K[4\'-J MF:-ECALQ!Q)!?[#Q\&O#3^J!V&._(?"F&^ 9,\V<#@:BWRJ .#[]*+9!/&X;.T!)_=IIL7"+DIZ[XDWGW5!C]: M/GB2?- @DZ])Q](&!)]Q0/!'=<-3"P.2K;>!-'"S-MF&.1Y>$S;A)#8A""@= ML'$C\9&=3LM +0,UU[IL^$FU <6'MT&;?[QQ VTISXVR&Q!GV702 M[5'R)-4&MV'$EKP?%7DWR'YKTK$\V^C@AE.]3;[3VTKRQHU*-D-G'!B[##@[ M^/R6 -\13-T;EU,?0IRI)(]Y7'!UM)LW19&?QH/Z<)C4M$P(J1VG]Y19II/) M9?#RL,S2_!6/G>#Y/68TG/L, >T+$OLKG@:P:BTXTRVS4^O^;:?9EG,9P\O# M*'!B0J9G"/]^KH,XQ#(-3@!.HUN\!L!WM/DRA2G M40=I(N,;Y>TRF%%VF\FP.1H20'M\B=][9>;Q(:G8R0BK*YJQ2+_JOPER/3$DO#14CPC:3N6K#O2C8Z594$* MT^@;?&B111/M1AL&T13'#)0T>(I_!S_@\&KXKL8)F><\QL&,BZR,#,U+("[^ M.,U#R,L%+@M^!7>?+U(>&F4?3._&,0HA3H281O@PFBQ!H[/I"3P)9]]O!Y>/T1.88?Y H M3\4\EWFNF3;/%_K+)S,=EC&>LXZ!P;*()W#,U60&% "\8<:#+IC<,IYE/<;Y MS;A(LVQPZ70&KX#EICA\0N-(+H91LB_C,X6GQW #.(F<)FOA$-).D*D+.\,& M_HE_RY)*_K MT\R8IFA""PXN34,>U>KF7N2%UC$>?EC2_4_2Q0+GG0-)X(AM'DH[+77<935_ M$.,\C+,9Z8H"9^#0>X$-\1BG438/_BIY) I->07J0K*/([I4^-*93FB:R3BY]$0IZ3>(P<[V. MNFFZ;!3R[/2"" M^:[X<\L%>,O^?TSSXF*::7/#D0YR)8L;L%GJ1\XA7N&<> M2$PGU0W>(UM\4SCCVGYSEH*4D6OT1N59MC+SWZ,DQ%DVJ.^F:HSSC.V$51!? M\ R@^7.ZPES34&&ZRG.4!OD,):&=E/R>!A#_*UTKA_F%B_1"V]=>+CW>;F . M)'*&TU[<4%0\)":.,=)*.G$SZ.C%2$*B%YR4D%G;;NBMT')E\+.FH>&+&5\H M* PCR]AD@7],H\+(%C.'GL>+_RL=YT"H/+@^+VG<=X@SZU$/3TOD$C/OV XS M#L[B=(P61IG)D* D3;: KJ-0)@E55EPY@0:I]D]P"AX'NE&VDQE(!YVP!,_C.4U*#=L]).?YY%,5YKHLZL<>,4?GUR$OYEE?"W MJJM3HPCF*<<-GFZ00>2E%FZ#[V7,;F-$G *]"V2?6TL;I:S.$C.ZE!2IORN< M?)KA8DAJRS1+%F@R'=73F>1C[[[!ATZ1%DC0D,C4/'\R@9N]2+.O8O;BXU0( MW)AKG,[-(]EY?HKH]T=O#?G_G MB^X-MK]LA]/I%S79W?FB>EKIW7 WG(ZGX&TU>(KJ=C=X^^GCZ?&GWT]H@NKG MXT]O#]_AT-2''I%ZY08.<2R9]?/0"@8GHP DBNI=,IR.6,Y2?]S7E&\C=@*EX8CYH6DQ2^ MC#-=S7.O7VWP4J&'!8]G7^@8;-"<[ZL_5%O]T4O]BO^)W^N/0O]7/*05WWZ" M]@O;1H??>/X:CJ3'=?3WA]O!2\\-\3\@;LBK5RMGF'6?R'C3G7:\*3^7[JH= M;WK?ML('I\EME$<\8K3+UXB&#@X+G*-]GH%%>T%F!,ZWAU=J'KG)]H<.P=U1 MB1V5G":@UM#$3A-REG&F86:&0J)-H,_%](O A"'7"XXJY_F$GM&1:#!-:-&G44+\AU2T*LTVW&-X Y^ M);= @D:Z(O=O*$U72;'.]XIX,F\X^()WU9&G4U@$PT^=FZ[J H?%6P6!EI6Y MJY77Q).J,7XPY_V+'49.S%B;-[+"P"541#Y'(G.,"IH@6X<7D^?X8U[.@5#1 M$.4;Y\^+,2DN'#IKQKFAT;@W0V3=B,@9EPA^C#P]9RLOHR?:8R M&:4II^W=;&0"F72VC9GU>Z7A]-:-8:41HHF) B*%8KS-.R ;OF;K"?R^3'L^ M#0@B%#LTFA88WQOPRFYT]>EK'WZML1,X(R=PQHU/WJ]\SW4*%P3/_ZL$FPX^ MNW)F-#$3[<10JG46D / 8^=PM/#A91!'7Y$RO'B!_4+G=MNM^ _]7;W3V]_N M?=F=AN _[._I+_O#8>_+)-P)>X/]\7A[/&ZB__#YX/B4K^CHZ*[]A!_U<&A] MZS^Z)OO5[P;![X>_'?S.'M'ANZ./OSVL2[0ZBY"@>$6J*\'C144T+O,(O0T7 M]T(R7VB)R\[W!0/?'DV%_IXF,]<-D>P!T>WQT\H_@ M_<';TT_'C2+9%0K$!?)$>XAQ@$$MFR5:,FTJ";'*O8]UJ ;A*/RB=Z=P[X-^ M[\O>]O[^EXD>;*M^?[ _[/>?XKT/X-K_^'A\^-O1R>GA\>&[X.3@]\.3X-/[ MX/#__G%T^C]HGOUQ?'1Z=,AAGC].#O&/(ML:1248I!FG8'9Q9 ?,52("#"BK MLIBE9*7Z+@EF:E"^!>4"?W[1']CY]IZ)5F83#&:3K3Y3FD7W5DE3+*#WDIJF#7$R^\AQVV$Y1RG!YL#+.@:+CRZU$GZ4%QV/] MW#K9%KRIP"PIKP1B3G!Q2-IFP9]CE9B(# ??0=CBJU&(F3 MN TU'5-JMX9/,/J"1&TDBW25 J(FR'X&\Y<\.+*$)6N?N$J$#+@1TQ,HJ<&- MD2 XY7G4!'T.\F-LS TH4H*[.=E\0;\W'FWUV8F 7>2E2FRYQLI3(17'^@/- M=^.[H-*3>YR6E.NB/W=64,+2_1L[,E.DI<:QFGQ-2YO306<'LV_+=$!)0IN6 M]J@B #+%$#L'MT6MC?5,Q=/*+H&90PW"<$YV\$)E:H[_;(Y;<;3:E:-DZ(S- M94?1DMU$SM%@AL R9OEJ4WR:XN7DKVF;5%1D(W \5V&"M3*+7+\V/_B[PI)I MV1"&?=#XAM.N1L>\HBL)C2W'N8K,O-4;V_C3S:JM1]W^0TZX;0?7DT#KZ9EFL;>3*^="=W,F^EW=]NK:>;5M.*LJ3>SW]V]LM>E MO9J6:=J;:6_FD=P,B+/6I;G+J[E-3_^U(9D'/(/O&#I^-\+BL8]BOZ/80^.. M92D%U%+/!JAG T.D!]=8L(T[HI:2&B2'KO-_&G<,7I*=;'?U"7P?_H MHK5X6WYI+=Y6&3=4VK;1S9:2GI59)RKZLY2P$TS=9Y51;T5KX[4VWCJZ^55[ M-&/;DUOKKN641VC=MC[,29^?T@ZU@L,=0)QMCA\9M]P%&A(GYU8"3V/!0N>U>I]_K;3J4VH2# M>FB2H7J^QAW$B\W5X#5A;QOFAN%^=S1LF>&NPG]-.(E6?CX2DFGF06Q$?G+W M=A/VMFGYN=W9Z^_\T(#T1B2D/ZAL,B-K>MC?L#7][/CXX6L$-T39^\.]1U]R M\-#$\#!-+G=E 3]ZHM[O[NRV--WTU'8KX!X/,31@UQLT41\]40\[V\-E[^PI MQ'P9UYI,U%X;\+V_@.\#YD?NA67ZNYV=_L;U0$M2;4#X,7(#6LC[+3/<8T"X ME:\M23VE@V@#QE?*UT%G=]A_Y %C.^IY9W&S#I7'4JUT _*^VPK7(8C_,"UQ M2L]3D?_[@\[.:#E%\JB)X'D&DA]@U\T+.S_;*-O=EN>V@N]1$,'S)/V'<1<; M%H[^D7,@\_87FC[X6 #R[WTBY-[21,@_[##VE>,Y>4 IS5FMSGSD29QOT_D" M9T7C8%3'<[0YVL/.8WWRGDS3"?J] M[F#_Y\#[&4]HZ7AQV*AWB)5YH_*UZLA1\\MKYGC(7>$$S_N[J!^7H5=27_6D ME@Y@#OLUJ^EW1[P(&>>MU&C<&X_5E^%T>_!E>WM[[\O^='OT96_8&X:]W7!_ ML+V+UW-WX[QO,R'WAA.^A]V ?WAW^/[@C]]/3X(_/G_Z&)PL/=_>%H MYVZOX4?/_/NFJF]W@^##T'I_P3OCD[>_O[IY(_CA[V< O2IF<_M M7Y/N]Z>]L#?^,MT=Z"_;>WL38*"=_I?)SO[.8#P<#\.Q?HK7-()K^G3Z]\/C MX.CC^T_''PY.CSY];,9(^W4,-='#R7AO]\O^CNY_V0['_2]JTM_] J*N#RPU MU7O;DZ=X4SMP4X?__?>C7X].'0=M:NBWZ$[2P:HL4O,+5L#TF_N<"][?[CZ& ML> WGX$VAQ7%9IK8H-M[R/&-JWYTM^-.K[]ZY MN]2]X<..X/ON6[U- H.#,[\T;C0^_S GR>\CO@8E+F9=L MY7JR!29 M!H??]*1$31)\FL)?==8)%F66ERHI,$1V7,::;[,_5%O][9>35_S/T@7WX $9 M:!U8Y>&WR4PE9SHXF! P;G]_N-VUD0#UA-ART++EDV;+P0.SY?LH4\$?W9/NVRYR'W[3\.BHUPW^SY/DN%81/FV.:[@B M? 8<=V-B;=GLCM;]V"A&9'30[_5?WUN10D4QP)N[1Q]/6J*]1]WP'8GY^UC7 M?_]Z_'MPE.2%PI*<=^FDG&N0W;B:?O\-N2J1^6MH_AJFL((D+0*U6&B5(1XD M?O (RT1 XZ$!]DX5"K1#K(.QGJ@RUU0%1&\KU%D>8,415O_ [L/@(BIF]AFX M7OZ@>5\W>/3,[OCNY.W?6[Z[OW7[]'2JOJ5).K\$/Z'028Z&S,EDIN>J^X3H MZ^W![RU]-8:^WJIX4L9L-/\>)5_'*M=/B=I^/_BUI;8'IK;?U5C'3Y*Z/A\? MMM3UP-3U.=,YV& U$?:4++)WA^];*GL0*ENA,-_I:910D8QU1AZ_1 -7?_LQ MDMCF.Y,:1HMOL90K^(R-)*N=5]\/GM"'L3D!'%[WX1 _/,4/W[=;O*8#RBLX M^_ZCP\JB6N\)_<8K]X?3U/,5-6_56K:;M('86KMO*QY')7+='7B5!2CHV?:/ M)$VTO=( JT2#7M"KU]#=K$;5=I3\=)V,P>)AHN2U#79[]TS/E3MR72C\ZO^S MBC$;L[I39*U*=B'*@3M@;<&TS)(HG^$XYR3$MJXX)OX:(S."OH#K@K\A[U&K MVD(&/@/74%-:FJWED3O:;K63"(F :"5*0%P6K[?H-S\L8:4*?7>PUYM.M\,O M?;VGOVQ/A[M?]O;[\--N3_5V1GVE]?C>NFN69LG4Z]+]?2X316.Z)E?OHS^X M68']R=%O'P].[Z/!Y#:-39^]A!SJDDS_54:91A62,[M<6X["/9_'^BS*L2Z[ MH+;/L(PO U)BH<]R^!I@T!S6!G] =BZ0GX%YI\'XDAY$93#\ 7IRILL$OD4/ M!!D^2S/8>=A]ROT%V_O=_;4MV$&O:_IUA>J:6IA^DYUV^SO/8Z.C)W&EM_&Q M;DG%#^067S_,S>UH!);OWMH=];N[^_>_I:L';Q__=O"QP[L^^OBV^_WU]<_M M,ANQHT=^0?]5@E=Z\PEYWZL5[F,KOUZ^_N[N'!']W]N=\S ;_EM4>0G7@$4% M[&T"?_TE_T7ZW-4Y;.#OW>!/5>1I\K=?HB4;Y6<7(]$VK2< M:R.;8P9[-\Q@WZ#.X;E O^YM%/K5S](*Z&HE3UO]G05:74:,/4^C< U@K$MZ MC=/P$OYG5LSC__S_ 5!+ P04 " L@\A6SOZT1HT- C#@ %P &%G M>"TR,#(S,#0S,'@Q,'$P,#$N:G!GG9575-/;ML;_ 0*$%EJ H(";CK1-DR)% M@W1!$.E(%!"D9M,D($T4*5*D14&0(DV*H$CO12(@8 @:.@EL*5),0"#2=[V\@X)#[H6BP\(?/HI[')^0F)21 MF96->?8\)[?X54EI67G%Z\IW]>\;&IN:6UI[^_H_#& _#@Z-XR>^?"5,3DV3 M%I?^_K:\LKKVG;*]\W-W;Y_ZZ^ W%PB@!_U;_R,7URD7'0,#/0/3;RX07>CO M!BX&\!]*C-R7K9AN!_"(*C]@YD6D%[WM@8BI7"?#7 -Q+'SBJB0)RF^T?Y+] M[\!B_U]D_P'[+]BY #S@V+TZ2!GYG8:YL=[3O-2'GU1.Z)ST' M-Y?L?83ED[:^7LQRK>%5ZKU:PO5Q$$T0*W2STAS(P%0/U1B89XO:-92AO'ZGYH'W;WI#.[OPHH M3UN4*WW*(6;[8V.5RV.])4L6)P2[7E;AWHQY_AVT*'/?VX+Y"/-B"16G[:2X MATP].A-2MM[8)9X^Z"^N5+!W1E8TS?_E.7JDLT\LDS.WM_PJ]7Z\ M\RFB-N[3 -:C*YUP:@^Q=(<>]I;"GEU7<&V"-QB=4X=K"A(V099!>L=+R)MX MZ :K3\7@8;$R)>U+U5DA_GB<90U4VBQ71&%X.#CBF_00^X#)[!Z*Y4B=@DQ0 MO3B<8HUM=T2IJ[7!C(OO'FCOB^ M[NVEDU\"^[6!9.P&#:B*0,0ZY3O9"48^DG97>N;S^H40P+"!?'-MO$Z"RAZ] M6,!) WIEB9$R6[7NYYQO6O17RQ;L9@ZG91L5KN,NJ^VB30*;9!1LEK?&#*W\ M9,6J:4#L#;3K<7LH1;8_B-MW?!1O(<<(*_,21C =5KXZ.11N.-!S"2%#B8V9 M9'Y21WS<^_)#_2JU#[L["E_;6B)03U/[8H"-RE<-X?)A JU#'5XWG(3S6:*& MWL/DB+*S M[29O]$FUT.^.-=@_IYPZ^J W"_.B=/0$CTZ.BU79[8A=R>U"B]VC(;()15_+ M@C)?3&1&K-& -&ELT9NPP9T!I5]Y#64DCT[/U6Q8/WIXX'I!G+JN'/EX7'*= M8<+/_6Y_PNJ0 !W4]&X3MET?6+".J"Y>== M^R,=M\+)CI$LT7'-:5),8&? 7VA17<32F5;*&)PLLO>"@DV-$D9W#;3.MMJ^ M0I5^:HW04GO\0ES90'-R6#4S+%E0.>TC"_.Y'0=\/[X*8?^\*P")1/")L@?) M-QQ!*[4ODSJD/N1>/7!I*IOV/O!=XIY&(NJOT ";6P;HD;$-:W+39L%=?/#, M)D-F@:)%1X" [L?#[@,.V8?4'^5G\8=G+N?0<3-^QF/-#5 M8VEQ$2BH8OG'9D&=",YT%%SQ-1UFY:XQX14G\*B M^"+IR@ J 56$#KU*'DFH'_>5_[E^*U1@\&2K:6BHS*&.R MYJU\IM&W]W0)1C (##1(<*6^O4HP'IT/ZN/?86&H S M1YX_P:HW::$>G,B[3%V5W]HL34*7N'/0R[?]^5''2. -Y,9?E?@9# U(S%M> MLI)=<]M(DOU[SFW)Z .[/C$TJ?UVF7>K1>X!;UNNF[LXYDZOAYKUMO29G>;' M4F6,*HX+T&CO?.M^D?JH!XLS,Q>](IPJ9L?*$KZ87MHQ$/OC>84F:TQ)A8Z3 MD R6!W*[L^$]R/7ON-.7PM2?EE3 UG472D]UV8)'^)"N<8L:A81R M8$0/&4KJTC'& W22L(1,35OME=R#JV>3UNM-U">FE9=;EFD GQJKO.L*@NSS MW6IJI&JN:A:6;7NE*2'L4?(*.,?*T$A[MY;CN%%7H.99KQ3!O]WN]?=G6GY# MJK8'#?T7[QDC]# P7LRW:];=VG9?\&M\ZM9A]5-.YHHB[1DPCZ5R\7NO+,?E M0BQC#P;FR9*FK D8\Y;UY(=)RW&2E:8E#1TUJ\G?S%[D'E]+B?:H3=8*3>ER M6^"DWHNTF&KH8NM1>X09^7/'O.769UV5C#:G6[H5!O?Y-^X'L9U^&]_B)%+^ M-K^^'BY+9R?N)M;H0SA'CGKH)VO&$5_6)Z8P3ID:*$E>@=.7><\U9GN5A]7> M\?3SDGNX?+?XQESJBSKE<-SU#(S$(M_7ALY02=4\CY+Y(>RG\."7\(:)]DA4 M,9I@3KZ74RF7Z_MTW5BH^]=#<^AHC.(H29]O'PO[C+8@]$;7_^@^0R(O6;VG M*#]YZA^B^O)BS+[R;4>'>V>!2EX&(L _FS<8Q75W.M/[^I$^V:*E8EUE=E#, MK-!PQ$LTLR?Y2A^JDY2W8WZ3/CY#")CK;+ M\6R.?/0^\U-AG:69GX&K$[@^%1Q 7#,G2;%NJ]^/6/"/5],8PPPZ[O^*2"OH M\M9!F5#4NT<4K'\S_.)!+AHA]TB(2DX MC2="A6H36?J=<]Z!!GA40M+K2@KC[)-W0=F/P_\*6^QL;"$/I(25"BDL&;\M MN"HE.63F?A;GVK#$++AS!W5C M-6M+:J.]?D"]%@3E3H1O3LY?#KD?Z%LX ;'F<0;+<=;. \28^>:-()?\,)(Y MCY4?P?%"0> ,8MG'?I;(!OJX*IM"X>]=;?>BR/9-[Q6Y>7FYD88S(WW=#-3Y MFUP<4H0FV:H#JAKYQ3$]&BPJ:Q86SNFKM=%ZVQ,S&0'9B_N>!A31/5;%^'GQ MC,6[1/UR9X4U >G!E)BS^VK;R(W,ZDE]8G3RO4"DD]$]'.0*]'R\S)[GF=@5 MC3%X[?LMWYH?;MM;MU(7M5?<*P0\"8P5M7'!5YIW"(;XKWZE$3T^PAO"KS1& MV0-',[/R:EOK5JZ]=":L1D3"-ENC!A9@V>6)3I_$P-V:HF>A6"81TQT:\'#: M8+3V\!S:TQ9OW))F_#7$H'7;8H?QUP/;6UJ@]R$;W3]K/]N23YZ)*[)Z83S@ MS(KP)D2U$<)0\X/>-9SJIB3<]2U^T[FA$5IY_UNB@WXH)G'-Z@VF^&7X<'7]2 +R4]R1$:7R!ZG?T?Q(':>O_7:^CE%JVYB;D3YKO4G >@*^)&W?? 3UDB$#[7:;[$S'V$6_+1R M6#3UP7.V]%VUR:QG"FVHY1 )'84QVM0_ %!+ P04 " L@\A6EIL"#8,( M "%)0 %P &%G>"TR,#(S,#0S,'AE>#,Q9#$N:'1MY5K[<^(X$OY7=)FZ MG:0*,.0QPYA,JO)@ZG(UCVR&J;W]4;8%UL587DF&L'_]?BT9,$F8(;?))*E+ M50#KV=U?]]$_FLU^GO(\%@G[U^#31Y:HN!R+W+)8"V[1.I4V90-5%#QG MGX36,LO8B9;)2##VKM79;[5;[]XTFT>'6.JTFJ/RD+T)NL%N>W>/M;OA;CL\ MZ+"+3VS[V^!TQPT^^W(Z^/VB[S>]^';R\?R4;36#X+>]TR X&YSY#JS>80/- M8MMI=8681!,I]/6=*^E]"@87 :I'6?[0::4$:W$)EM'A]2" M5\&3H\.QL)S%*==&V/=;WP8?FEV,L-)FXN@PF+_[L9%*9D>'B9PP8V>9>+\U MYGHD\Z951;C7+FP/,P-TWQASW9S*Q*9AI]W^9Z_@22+S43,30QL>M+K=99.6 MHW31IKQJH189MW(B:.W:JG$FN XC9=/>S0WNFEG,YPU5;IM#/I;9+'P]D&-A MV&29'6)QD[7G]0_2Q^?_> M&V^':&7'J7"Z12I+T-F_3F4D,;;3ZAP&$8Q6/(6(-/4&D@X56FVU=[?Y#COM7P[./YR?'E/CX]G^OZ6Q=5YT^[=?CUG*9\(IL5$BBGHS*;2 ML%]+KH%8-F.7HE#:@N38!Z7'K--N_LK4D!WK$8=NYWG<8MLV%8S<:+?=NQ0C M:2PXS+J&3F^'#95F-** %BIA(D^PRW$!;@5\#4:TV7LJL^RN-SUB96UT*:(+8PFS=083&&5'W=K0"YB80S7,QHRYE?"&7"QID%; F&P94:!0GO0@%AJY#,, M0X8SD"01FDU3&:?,E/2RG#\56E2+D )C:<"\1-<^ VIA"A$[ 6O(Q6J":0F+ M9G4S/!EV>_?'3K"AS&$=,O32&@T A^'HUK5^F<-Q 0N2#C['64EN"XO75&\ M+4E!4L!@A#7Y "J&!9B5'$OB/-SL'VV+'3>T<)/[)/TK*;[F' MEM9G%"HUQ#T"),O&&PU7-AKN+(FT[@<80?3]R'G%-4GP26[#3K>X57_4P.8[ MZ\ ^$P9K0FU'1C_&I$$\&?/2;#Z%""L2L&^UDZ= 56HL@/"@\H>"#J-$[M:A MG+P,UWK(^SH3@%45 M2D/LZ?S;.*IU(8H:'@*A*G>3"J1>&9<9)V:!6DZ()0MCAN?T>BK"ITC00 0_ MYHODD8/]'@X1;>@0&X?0+;_8//@V=@^X%*HXHAF.&HX3RW #CZ',BL81U\D< M%CB*Y+ZH)J*^:UMR4H>@ \?[U\K06F9V9'9=*524&@/ M1(Y\D<%'T",*%:Z^"$SB>$021-GO!Q% MT.WDMT@3&_"!?[P['SK@,1&Q;'S6C51IUTNPR7:+P8(JBN&/JR<6S6L5Y\K" M&P+B]&CM9P-=LCZ(O55N6Y>*X2JWN9X[(;Q'Z!)3JS@N-1FQ1HMWK#I6QF(J MG3JQEHFQT!_^0..72;E9D#[%CT-;)(Y8G )5T,]07E^)K*K";XQO_&V=?@+$ MZQ$]>."BS!TBD[DS-)9^35%6!V3IXA0@]V#]6XEX(1I',K9*FP71N@8L.<8I MRPKQ'0Z)%*B<^A,)^=PBV_ "Q*PA2L [E01S7Q-_E!+B.[\J\]@5ZSLOH?8Z MQJF$DIX$9%0W4@4:2P$;5R2YJ(&F@E\1Z_FDXWC/I4MW:)V?4.Z%7%6N^*K] MCLCB"28:L0BLM2A72193 !5R8<-3KT'-9,HQS (S.F4J!KKS+/>\>'5]<70, M^AQJ.'(#]A,N]H" .ZQ74#4\F>6,ZF[);:N7*IL&P$GH9NQRC)>&!'./]3-2!>7J;_QHUM?V@I* M].J7E[RT:M[@+Y1=R\JU,UET]=*96FIWR%O,X?1^RU]'TH6XGLM9[=_QMY$V MF;=/B.^00"J(K2JJ%0^PX!+7^<8>XU9W>2][XX:[M@^9DL[W\ZO8^7-SJGD1 M1HB5J^84YOOAK?FBGT=S_(/!W".VGV/B6L[Q$1UGY*G7#KT[_MD>]0%W6.]LC*7.A<22A M\MI5^Z>I%$/6OQ9Q2?F4??'GTI?I"TR,#(S M,#0S,'AE>#,Q9#(N:'1M[5IMENP9%EO L M$C'[;?3^'8M55,Q$9EFD!;<874B;L)'*VQ=C_LML/C#OOTGAU^&0V/'/'YQ^'HCT\7 M_M!/7]Z\NQRR@V80_*LW#(+ST;F?P.X=-M(\,])*E?$T""X^'+"#Q-H\#(+% M8M%:]%I*3X/159#86?HB2)4RHA7;^.#TA$;P*GA\>C(3EK,HX=H(^_K@R^AM MLP\**VTJ3D^"ZMW3CE6\/#V)Y9P9NTS%ZX,9UU.9-:W*PUX[MP.L##"]1?.U MN9"Q3<).N_WS(.=Q++-I,Q43&QZW^OWUD);39#6FO&BA%BFW/E#S+'JO_?2ZV&\<>)".-G&*HTQ>?$UD6,) MVDZK>Q*,H;3\,5BDI5N6=%:A?>;2@,54VF68R#@6&1;\\JS?;?<&)P$M?""F M(\28T-M<=[K^P[<4^_GLZLW9AXO/S8__?G?Q!SL;CMCGB^'H\N,'UFMW#_D1 M&UY<.- WQ F.90OH M!UQFC&=+5F16%P*2(#FXW )E<3;#DY8\91,>84@S-0-46.7I=@@R$0ECN%X2 MR8Q?"Z? U9X&8S&8P9$I10J=0021U$AH($.*,^ D%IHM$C@D,P6]K-AJE7J59QKA5H0PX8=0J.Q@(F\VBZ^ L4SE'UG MB(*K(@5%I\>;G>-#<>26=HYC_^0?)26XS)N6]F<4*C6+>PL0+[<^:+)QT.1H M#:1U/P %P?<#YQ4W)($GF0T[_7RG *D9FQ_M,_:Y,-@38CLP^K9-&H23$2_, M[9<08(T%]%N>Y"%0%1H;(#RH_J&@ Y7(W#Z4D]?A6@]Y7VC"8"4&KI7>*.& M)B5"%[P8E QE5@Q.4>%59H&C2.ZK:@+JFXXE)W46=,;Q M_K5!6LO,#LR^E@+EA4;G V-18HDBI6/'@,O14Y$A7Z3P$#^ MD\H<>/)T/"':ZPD7A"-I-?JLT<0L\\(\WYT-G>"Q$ M+!N?=<>JL/LYN,UQ*V)!%<7DV]43&U>UBG-EX14!=@:T]Y,Q7;P_B+U6=K5+ MQ7"9V]S,C2:\0^@24JLH*C0IL0:+-^PZ4\9B*;6=V,M$V.A/W]#X;1)N5J!/ M\>.L+6('+$Z ,NB7**^O15I6X5OTC?]9IN]@XOT6/;[GHLPUD7'E#(VU7U.4 MU0VR=G$*D#N@_DXB7K'&D8RMTF8%M&X 6\[095DA_@9#QHJ:=M'/T+M=8:NA)*>A,FH;J0*-)(".BY! MLEZ9J M>#"3V5RE>>@RW 5LSQ52X'91:)\C/(-1X#A[@6?6TZE[IK8NG*I MU.T8=A*Z&:DTY;D18?6AKD:ZN4S\E1]=^])1$&)0O[WDA575@+]1=B,;]\ZD MTGUP?^/I)NQ'7%9WE^QU]'VK@:GQ/>(8&4)K8J+W=\T?VY M9M?JX+"\SZQ=:M=V)N511U_=OE;/S87F>3A&=%PW%U#8-R_*5_-\C-:CL&) MM_7;XE;W]N6KC6\E6&^?7*S=ZJ\OG']P*8^/?WPQ ZO)A>_!7>\'"FO['YR> M Z5"]H\B$ZSO+WD=0CR %SX \V^6X9VX)6\JD6ZLK%6SL-,B#MV] 'O6=G^/ M*=")W-C3?0ZEA1P19@,3^*2S_>7%22!/UXJX'W]CG=:OKQY<8"_/_;CAW=+,I'WZ@VV(CZCT*7/>M0 M:12O]/7;9Q%I8;G>=>\?PH__CW7WPN/A)W]G"H_9\9VC+<\(7)-356-/)9YK M!6*R0N8QCZZG6A593%V8TF%5CM1^;;,Y46$Y&$EE)IKERVIH% "2& %P &%G>"TR,#(S,#0S,'AE>#,R9#$N M:'1MU5AK<]HX%/TK=]/9-IG!+TA28EAF") I.VU(@S/=?I1M&6MK)*\L0MA? MOU>R38!NFW8WM$F&\-#C/HZ.=(_<_<6R1CPE/*(QO G>O8581(LYY0HB28G" MUB53*00BSPF'=U1*EF5P+ED\HP!GMG=LN_;9J67UNFAJ4,T1W(=3I^TTW68+ MW+;?=/T3%Z[>P>%-,#@R@X>30?#Q:E0ZO;HY?SL>P('E.!]: \<9!L.R ZU[ M$$C""Z:8X"1SG-'E 1RD2N6^XRR72WO9LH6<.<&UDZIY=NQD0A34CE5\T.OJ M%GRG).YUYU01B%(B"ZI^.[@)+JPVCE!,9;37=>K/LV4:;F2YH1Q6ZIMKUA-\?-%NNJU.U]$3]Q1TA'N,RHVH'\)R,+H.QA?C03\83RYQQUQ/;_J7 M 023_0'[W3%Z;;BQI_; ANEH8.+T6B=NXPE%V)]"?SBY"D;#GP2A(:;7++\\ M%&V-XIE["I,+"-Z,8-J_/N]?CJ;6Y(^WHX_0'P2ZI^FZS?TE\>>B4"Q9?26+ M,8=(<$XC?2"5)4.E%-XOB,3TLQ5@8\*5' MQEC0(*628NB;894)W4#U(\Z=R,R4R))P6UN0NHROH1V91-'\:V$_,-#TNI(7IF:_@$Q=+1&]&_?W2 MRS0QK@'SO7;^V9&^P3?/?OG".W4[7WH/,(.*2>'\=$:MGO"K,E28>>=M8X[>H6?##K-!] 9<]PV\W*K MX;95A'$D#BL)7\-&F-ZW.5)8(]30W02E'T[#B$F&^!4Y0E8TS*R$<121NAT- MQD:7&-+CJ$56 BQPCQJ?Q0[E;0.^5YKN*Z_5;OX(ADU4*B>*PLGJ#!C9)5.:[+UX;XV[ LT%J2B66M4NK? MUE*2W ]1>'^RE@C8@X)RW4_"0F0+13M:U>ZF6^O;ZEW%WY18ZTMY@6NW[X79 M,\_R^/7S3]-14E/X$>CZ. ?>EH(;XAGCP^\+3J%=UG!S0NR!A7L(_GSE?U>T MFDW528>W/"7FOF?K"'$]44V\<,W?STRHR[9LFN\^4YA'A+U.X91%94?]=!W6 MN\?A<>@&GOWZ;._YEND\(\;]AX"_)^<>\W!Z.B'^<(8<7DF&UY4<[RN?$>-HAQF.N934ZNFI[+T- M09>N;R(AB3[-I%CP6-^:A/1K^;#Q%'F[HQ*E>'?L9'@+M*K?[M8-JGQ2O76% MVFI:/Q;/R8Q:I7PE"5Z3?'(K6%PM&5X,S)D M,BYH=&WE66U3VS@0_BM[=-K"C%\3H,%)F0E)F.:F)928N^M'Q99C71W))RN$ MW*^_E6R')+2EO2,MG6,@+ZN5]D6/=A^9SB^V/> IX1&-X4WX[BW$(IK/*%<0 M24H42A=,I1"*/"<M4Q?A[T#H]P?]<(/EX/2Z.7UV=MA#_9LU_V]V7/=?M@O M!W!U'T))>,$4$YQDKCNXV(.]5*D\<-W%8N$LFHZ04S>\6JC3-='-[2N;47+%9IX'O>\W9.XICQJ9W11 5'3JMU M)Y)LFJYDH@PMD#0CBMU0O?;:JE%&B0PF0J7M;0.?FIG7\Q+!E9V0&IT;5J"+ M&5/+(&5Q3#E.>/&LU?":[8ZK)^[(Z0C/&)5K7C^4R][@*AR>#WO=<#BZP!-S M-;[N7H00CG:7V&_VT6_!M3-V>@Z,!SWCI]\\\JPGY&%W#-W^Z#(<]']0"@TP M_4;YX2%OZRR>>,#OX -U>J$<:GK?# _;GO% L M67XABB&'2'!.(UV0RI:A4@KOYT1B^-D2KF@NI *10%=.";=@R"/' @)]+%X+ M(BG.EZA"S +[>K(^A0VOW1,S;#U+\\UO'UC87.!$B&-I1QC$#%0 M'F/[Z>;8I:#I6: ;$%HI(&%9W R#6VP,'#L:&INQHM ^ MX*_6C+&A04HE1=?7W2H#NO-J:,$5T^T%^ZB#46'.+33#&3KX&XLH7$I:L%AW M5FVQES*:P#GCV'H9R6"4)*@D=8*TD2IHRUB>+ &'] Y8D,]E,2>XB!*P=MJJ MQ)O3IL,EL?- _;>H>? M3'8:#V1GR/$,SHSPQ8$< M4U989E:R@C4N&!N28D"/6O.L3+# VML%EN0=TSB#+=29)+1.H,3(6,J[4AD M&63N1*UH*1A1K)!UG3>-JF:EJPQKSTP MNX'DS%1W32-E[6=EWR^+NXIK^8T^P1')JHU$)EFM>-AXOMZ_*L/E3CJM.S:S MQ0O7[ A<.\G$HB8P]7=[(4D>3)"3?[07F+X'N>9JG$P*D?"_,I!^8JJ2'\Z'!]G/*W0>[Z6'$"^'7.*;3*]F[JQ0Y0 MN /GSY8!?).[&DY5X<,;H!*SP'>TB[B]+(9GGOGY N!V$$.';:QI/@=,H><1 MCKJ%6W:5;2[4<=GI7>B/!#C?>76R\TTKX_F)4/8O'/YRV=J!C_?AL06-K3K9 M.'1>'3U&2_TND-EXX/"5#QC^,[9^PEB^!^PVF)W?=(YK0EVQ9[N2;03]R7N; M];E+FP4A-NEB+O'^9NYVU4W67!0D543>Q_=/@>/'+'U/Q\7O7NSV+R5#P.2( MF'O8.=A"AFLN/34[>RKG>8TPIJO2/"'1QZD48;\EL_VS3\+3O\!4$L! A0#% @ +(/(5BD' "$+% ",< ! M ( ! &%G>"TR,#(S,#0S,"YX#$P<2YH=&U0 M2P$"% ,4 " L@\A6SOZT1HT- C#@ %P @ %4'P, M86=X+3(P,C,P-#,P>#$P<3 P,2YJ<&=02P$"% ,4 " L@\A6EIL"#8,( M "%)0 %P @ $6+0, 86=X+3(P,C,P-#,P>&5X,S%D,2YH M=&U02P$"% ,4 " L@\A6&3_K9[8( "Z)0 %P @ '. M-0, 86=X+3(P,C,P-#,P>&5X,S%D,BYH=&U02P$"% ,4 " L@\A6;_>R MVIH% "2& %P @ &Y/@, 86=X+3(P,C,P-#,P>&5X,S)D M,2YH=&U02P$"% ,4 " L@\A6%7XK ]0% #_& %P M@ &(1 , 86=X+3(P,C,P-#,P>&5X,S)D,BYH=&U02P4& L "P#A @ &D4H# end